Prom Pisanie pluginów Maciej Sobkowiak & Tomek Ciesielczyk
Serwer SVN Twórcy Prom-a udostępniają SVN z przykładowymi pluginami „Hello World” Twórcy Prom-a udostępniają SVN z przykładowymi pluginami „Hello World” es/GettingStarted/ es/GettingStarted/ es/GettingStarted/ es/GettingStarted/ Możliwy import do Eclipse Możliwy import do Eclipse
Pisanie pluginu Zalecane umieszczenie w pakiecie org.processmining.plugins.nazwapluginu Zalecane umieszczenie w pakiecie org.processmining.plugins.nazwapluginu Dodanie Dodanie Zdefiniowanie statycznej metody zgodnej z definicją zwracanych i przyjmowanych typów Zdefiniowanie statycznej metody zgodnej z definicją zwracanych i przyjmowanych typów
Przykładowy plugin package test; package test; import org.processmining.framework.plugin.PluginContext; import org.processmining.framework.plugin.PluginContext; import org.processmining.framework.plugin.annotations.Plugin; import org.processmining.framework.plugin.annotations.Plugin; public class HelloWorldPlugin { public class HelloWorldPlugin = "Hello World = "Hello World Plugin", parameterLabels = {}, parameterLabels = {}, returnLabels = { "Hello world string" }, returnLabels = { "Hello world string" }, returnTypes = { String.class }, returnTypes = { String.class }, userAccessible = true, userAccessible = true, help = "Produces the string: 'Hello world'") help = "Produces the string: 'Hello world'") public static String helloWorld(PluginContext context) { public static String helloWorld(PluginContext context) { return "Hello World"; return "Hello World"; } }
Kompilacja Skrypt ANT Skrypt ANT 2 konfiguracje startowe 2 konfiguracje startowe
Import własnego pluginu do Prom Eksport pakietu wraz z wymaganymi bibliotekami do niewykonywalnego jar Eksport pakietu wraz z wymaganymi bibliotekami do niewykonywalnego jar Skopiowanie plików do %userprofile%/.prom63/nazwapluginu- wersja (windows) Skopiowanie plików do %userprofile%/.prom63/nazwapluginu- wersja (windows) Edycja pliku xml zawierającego definicje pluginów Edycja pliku xml zawierającego definicje pluginów
Zwracane wartości Są to obiekty dowolnego typu (wkompilowanego w Prom – także własne) Są to obiekty dowolnego typu (wkompilowanego w Prom – także własne) Zapisywane są w resource’ach Zapisywane są w resource’ach Nie można stworzyć pluginu z metodą typu void (?) Nie można stworzyć pluginu z metodą typu void (?)
Demo Plugin konwertujący Common Log File Format (log Apache) na OpenXES Plugin konwertujący Common Log File Format (log Apache) na OpenXES Próba wizualizacji Próba wizualizacji