Hetman


Opis

Moduł Hetman wspiera implementację procesów przy użyciu mechanizmu jPALIO Hetman Workflow. Metody tego modułu można pogrupować w następujące grupy:

Wykonywanie procesu

Metody z tej grupy odpowiedzialne są uruchamianie silnika Hetman w kontekście wykonywania i prezentacji procesu. Do tej grupy można zaliczyć następujące metody:

Zobacz także:


[Implementacja procesu] Tworzenie strony procesu
 

Obsługa kontekstu wykonywania procesu

Z kontekstu wykonywania procesu można otrzymać szereg bardzo przydatnych informacji takich jak bieżacy stan procesowanej instancji, czy bieżące przejście. Istnieje możliwość ustawienia dodatkowych parametrów w kontekście wykonywania. Umożliwia to przekazywanie w trakcie wykonywania procesu informacji pomiędzy poszczególnymi komponentami realizującymi dany proces. Do obsługi kontekstu służą następujące metody:

Przykład w jaki sposób można pobrać bieżący stan oraz przejście:

ProcessExecutionContext context = Groovy.module("hetman").getProcessExecutionContext()
context.getCurrentState()
context.getCurrentTransition()

 

Ustawienie parametrów parametrów kontekstu jest możliwe na dwa sposoby. Pierwszym jest przekazanie parametrów kontekstu do metod odpowiedzialnych za uruchamianie silnika Hetmana: executeProcess, executeTransition.

Drugim sposobem jest ustawienie parametru po pobraniu bieżącego kontekstu. Poniższy przykład obrazuje drugi sposób.

ProcessExecutionContext context = Groovy.module("hetman").getProcessExecutionContext()
context.setParam("test", "some value")

Wsparcie tworzenia widoków

Moduł Hetman udostępnia zestaw metod wspierających tworznie widoków w implementacji procesu.
Poniżej opisano kilka najważniejszych metod.

Zobacz także:


[Implementacja procesu] Tworzenie obiektu formularza
[Implementacja procesu] Tworzenie obiektu widoku
 

Tworzenie szkieletu aplikacji

Moduł Hetman wspiera tworzenie szkieletu implementacji procesu na podstawie wskazanego dokumentu XML z definicją procesu. Aby stworzyć szkielet należy wywołać metodę createProcessTemplate.

Przykładowo dla procesu opisanego w sposób następujący:

<?xml version="1.0" encoding="UTF-8"?>
<process name="sample.process" prefix="sample.process" manager="sample.process.SampleProcessManager">

<states>
<state id="state1">
<transitions> <transition destination="state2"/> </transitions> </state> <state id="state2"> <transitions> <transition destination="state3"/> <transition destination="state4"/>
</transitions> </state> <state id="state3"> <transitions> <transition destination="state4"/> </transitions> </state> <state id="state4"/> </states> </process>
zostanie wygenerowany następujący szkielet implementacji procesu:

API

http://docs.torn.com.pl/modules/palio/modules/Hetman.html