...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
ActivityService activityService = ServiceFactory.getActivityService(); Map<String,Object> activityContext=activityService.getActivityContext( processId, activityId ); activityContext.put( "zmienna", "wartość" ); activityService.setActivityContext( processId, activityId, activityContext ); |
Powyższy kod zmienia mapę zmiennych zadania. Jeżeli w aktualnym wątku mamy otwartą transakcję, np. jesteśmy w zadaniu automatycznym to metody getActivityContext i setActivityContext automatycznie podłączą się do aktywnej transakcji. Jeżeli chcemy zmienić wartości zmiennych procesu, lecz nie chcemy zaakceptować zadania to należy ustawić ActivityContext, oraz ProcessContext:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
ActivityService activityService = ServiceFactory.getActivityService();
ProcessService processService = ServiceFactory.getProcessService();
Map<String, Object> activityContext = activityService.getActivityContext( processId, activityId );
activityContext.put( "zmienna", "wartość" );
activityService.setActivityContext( processId, activityId, activityContext );
Map<String, Object> processContext = processService.getProcessContext( processId );
processContext.put( "zmienna", "wartość" );
processService.setProcessContext( processId, processContext ); |
TODO Opisać możliwość utworzenie ręczenie transakcji SharkTransaction która będzie kompatybilna z serviceami API.