public static TaskService registerLocalHTWorkItemHandler(KieSession ksession, EntityManagerFactory emf, UserGroupCallback userGroupCallback) { TaskService taskService = HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .userGroupCallback(userGroupCallback) .getTaskService(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new NonManagedLocalHTWorkItemHandler(ksession, taskService)); return taskService; }
@Before public void setup() { pds = setupPoolingDataSource(); emf = Persistence.createEntityManagerFactory( "org.jbpm.services.task" ); callback = new CountInvokeUserGroupCallback(); this.taskService = (InternalTaskService) HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .userGroupCallback(callback) .getTaskService(); }
@Override public TaskService newTaskService() { // all to reuse an already given instance of task service instead of producing new one TaskService providedTaskService = (TaskService) ((SimpleRuntimeEnvironment) runtimeEnvironment) .getEnvironmentTemplate().get("org.kie.api.task.TaskService"); if (providedTaskService != null) { return providedTaskService; } EntityManagerFactory emf = ((SimpleRuntimeEnvironment)runtimeEnvironment).getEmf(); if (emf != null) { HumanTaskConfigurator configurator = HumanTaskServiceFactory.newTaskServiceConfigurator() .environment(runtimeEnvironment.getEnvironment()) .entityManagerFactory(emf) .userGroupCallback(runtimeEnvironment.getUserGroupCallback()) .userInfo(runtimeEnvironment.getUserInfo()); TaskService internalTaskService = configurator.getTaskService(); return internalTaskService; } else { return null; } }
@Before public void setup() { pds = setupPoolingDataSource(); emf = Persistence.createEntityManagerFactory("org.jbpm.services.task"); callback = new NullGroupsUserGroupCallback(); this.taskService = (InternalTaskService) HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .listener(new JPATaskLifeCycleEventListener(true)) .listener(new BAMTaskEventListener(true)) .userGroupCallback(callback) .getTaskService(); this.taskAuditService = TaskAuditServiceFactory.newTaskAuditServiceConfigurator().setTaskService(taskService) .getTaskAuditService(); }
@Deprecated public static TaskService startTaskService() { Properties properties = getProperties(); String dialect = properties.getProperty("persistence.persistenceunit.dialect", "org.hibernate.dialect.H2Dialect"); Map<String, String> map = new HashMap<String, String>(); map.put("hibernate.dialect", dialect); EntityManagerFactory emf = Persistence.createEntityManagerFactory(properties.getProperty("taskservice.datasource.name", "org.jbpm.services.task"), map); System.setProperty("jbpm.user.group.mapping", properties.getProperty("taskservice.usergroupmapping", "classpath:/usergroups.properties")); TaskService taskService = new HumanTaskConfigurator() .entityManagerFactory(emf) .userGroupCallback(getUserGroupCallback()) .getTaskService(); return taskService; }
public TaskService getService() { return (InternalTaskService) HumanTaskServiceFactory.newTaskServiceConfigurator() .userGroupCallback(new MvelUserGroupCallbackImpl(true)) .entityManagerFactory(emf) .getTaskService(); } private static class H2Server {
public static TaskService registerLocalHTWorkItemHandler(KieSession ksession, EntityManagerFactory emf, UserGroupCallback userGroupCallback) { TaskService taskService = HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .userGroupCallback(userGroupCallback) .getTaskService(); ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new NonManagedLocalHTWorkItemHandler(ksession, taskService)); return taskService; }
.environment(getEnvironment(identityProvider)) .entityManagerFactory( emf ) .userGroupCallback( safeGet( userGroupCallback ) ) .userInfo( safeGet( userInfo ) );
@PostConstruct public void configureDelegate() { UserGroupCallback callback = UserDataServiceProvider.getUserGroupCallback(); HumanTaskConfigurator configurator = HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory( emf ) .userGroupCallback( callback ); DeploymentDescriptorManager manager = new DeploymentDescriptorManager("org.jbpm.domain"); DeploymentDescriptor descriptor = manager.getDefaultDescriptor(); // in case there is descriptor with enabled audit register then by default if (!descriptor.getAuditMode().equals(AuditMode.NONE)) { JPATaskLifeCycleEventListener listener = new JPATaskLifeCycleEventListener(false); BAMTaskEventListener bamListener = new BAMTaskEventListener(false); // if the audit persistence unit is different than default for the engine perform proper init if (!"org.jbpm.domain".equals(descriptor.getAuditPersistenceUnit())) { EntityManagerFactory emf = EntityManagerFactoryManager.get().getOrCreate(descriptor.getAuditPersistenceUnit()); listener = new JPATaskLifeCycleEventListener(emf); bamListener = new BAMTaskEventListener(emf); } configurator.listener( listener ); configurator.listener( bamListener ); } delegate = (InternalTaskService) configurator.getTaskService(); }
@Bean @ConditionalOnMissingBean(name = "runtimeDataService") public RuntimeDataService runtimeDataService(EntityManagerFactory entityManagerFactory, UserGroupCallback userGroupCallback, UserInfo userInfo, TransactionalCommandService transactionalCommandService, IdentityProvider identityProvider, DeploymentService deploymentService) { Environment environment = EnvironmentFactory.newEnvironment(); environment.set(EnvironmentName.TRANSACTION_MANAGER, transactionManager); environment.set(EnvironmentName.ENTITY_MANAGER_FACTORY, entityManagerFactory); TaskService taskService = HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(entityManagerFactory) .userGroupCallback(userGroupCallback) .userInfo(userInfo) .environment(environment) .getTaskService(); // build runtime data service RuntimeDataServiceImpl runtimeDataService = new RuntimeDataServiceImpl(); runtimeDataService.setCommandService(transactionalCommandService); runtimeDataService.setIdentityProvider(identityProvider); runtimeDataService.setUserGroupCallback(userGroupCallback); runtimeDataService.setTaskService(taskService); runtimeDataService.setTaskAuditService(TaskAuditServiceFactory.newTaskAuditServiceConfigurator() .setTaskService(taskService) .getTaskAuditService()); ((KModuleDeploymentService) deploymentService).setRuntimeDataService(runtimeDataService); ((KModuleDeploymentService) deploymentService).addListener(runtimeDataService); return runtimeDataService; }
@Override public TaskService newTaskService() { // all to reuse an already given instance of task service instead of producing new one TaskService providedTaskService = (TaskService) ((SimpleRuntimeEnvironment) runtimeEnvironment) .getEnvironmentTemplate().get("org.kie.api.task.TaskService"); if (providedTaskService != null) { return providedTaskService; } EntityManagerFactory emf = ((SimpleRuntimeEnvironment)runtimeEnvironment).getEmf(); if (emf != null) { HumanTaskConfigurator configurator = HumanTaskServiceFactory.newTaskServiceConfigurator() .environment(runtimeEnvironment.getEnvironment()) .entityManagerFactory(emf) .userGroupCallback(runtimeEnvironment.getUserGroupCallback()) .userInfo(runtimeEnvironment.getUserInfo()); TaskService internalTaskService = configurator.getTaskService(); return internalTaskService; } else { return null; } }
@Override public Object getObject() throws Exception { if (instance == null) { HumanTaskConfigurator configurator = HumanTaskServiceFactory.newTaskServiceConfigurator(); configurator .entityManagerFactory(entityManagerFactory) .userGroupCallback(userGroupCallback) .userInfo(userInfo); if (listeners != null) { for(TaskLifeCycleEventListener listener : listeners) { configurator.listener(listener); } } Environment environment = EnvironmentFactory.newEnvironment(); environment.set(EnvironmentName.TRANSACTION_MANAGER, transactionManager); environment.set(EnvironmentName.ENTITY_MANAGER_FACTORY, entityManagerFactory); if (entityManager != null) { environment.set(EnvironmentName.APP_SCOPED_ENTITY_MANAGER, entityManager); environment.set(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, entityManager); environment.set("IS_JTA_TRANSACTION", false); environment.set("IS_SHARED_ENTITY_MANAGER", true); } configurator.environment(environment); instance = configurator.getTaskService(); } return instance; }
@Override public Object getObject() throws Exception { if (instance == null) { HumanTaskConfigurator configurator = HumanTaskServiceFactory.newTaskServiceConfigurator(); configurator .entityManagerFactory(entityManagerFactory) .userGroupCallback(userGroupCallback) .userInfo(userInfo); if (listeners != null) { for(TaskLifeCycleEventListener listener : listeners) { configurator.listener(listener); } } Environment environment = EnvironmentFactory.newEnvironment(); environment.set(EnvironmentName.TRANSACTION_MANAGER, transactionManager); environment.set(EnvironmentName.ENTITY_MANAGER_FACTORY, entityManagerFactory); if (entityManager != null) { environment.set(EnvironmentName.APP_SCOPED_ENTITY_MANAGER, entityManager); environment.set(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, entityManager); environment.set("IS_JTA_TRANSACTION", false); environment.set("IS_SHARED_ENTITY_MANAGER", true); } configurator.environment(environment); instance = configurator.getTaskService(); } return instance; }
@Before public void setup() { pds = setupPoolingDataSource(); emf = Persistence.createEntityManagerFactory("org.jbpm.services.task"); callback = new NullGroupsUserGroupCallback(); this.taskService = (InternalTaskService) HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .listener(new JPATaskLifeCycleEventListener(true)) .listener(new BAMTaskEventListener(true)) .userGroupCallback(callback) .getTaskService(); this.taskAuditService = TaskAuditServiceFactory.newTaskAuditServiceConfigurator().setTaskService(taskService) .getTaskAuditService(); }
.userGroupCallback(userGroupCallback) .userInfo(userInfo) .getTaskService();