private void internalSetKieContainer() { this.kieContainer = (KieContainer) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("KieContainer"); }
protected TaskServiceFactory getTaskServiceFactory(RuntimeEnvironment environment) { // if there is an implementation of TaskServiceFactory in the environment then use it TaskServiceFactory taskServiceFactory = (TaskServiceFactory) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate() .get("org.kie.internal.runtime.manager.TaskServiceFactory"); if (taskServiceFactory != null) { return taskServiceFactory; } taskServiceFactory = new LocalTaskServiceFactory(environment); return taskServiceFactory; }
private void internalSetDeploymentDescriptor() { this.deploymentDescriptor = (DeploymentDescriptor) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("KieDeploymentDescriptor"); if (this.deploymentDescriptor == null) { this.deploymentDescriptor = new DeploymentDescriptorManager().getDefaultDescriptor(); } }
public AbstractRuntimeManager(RuntimeEnvironment environment, String identifier) { this.environment = environment; this.identifier = identifier; if (registry.isRegistered(identifier)) { throw new IllegalStateException("RuntimeManager with id " + identifier + " is already active"); } ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.DEPLOYMENT_ID, this.getIdentifier()); internalSetDeploymentDescriptor(); internalSetKieContainer(); ((InternalRegisterableItemsFactory)environment.getRegisterableItemsFactory()).setRuntimeManager(this); String eagerInit = (String)((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("RuntimeEngineEagerInit"); if (eagerInit != null) { engineInitEager = Boolean.parseBoolean(eagerInit); } ExecutionErrorStorage storage = (ExecutionErrorStorage) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("ExecutionErrorStorage"); if (storage == null) { storage = new DefaultExecutionErrorStorage(environment.getEnvironment()); } this.executionErrorManager = new ExecutionErrorManagerImpl(storage); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.EXEC_ERROR_MANAGER, executionErrorManager); }
protected InternalTaskService newTaskService(TaskServiceFactory factory) { InternalTaskService internalTaskService = (InternalTaskService) factory.newTaskService(); if (internalTaskService instanceof CommandBasedTaskService) { ((CommandBasedTaskService) internalTaskService).getEnvironment().set(EnvironmentName.DEPLOYMENT_ID, this.getIdentifier()); ((CommandBasedTaskService) internalTaskService).getEnvironment().set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES)); } return internalTaskService; }
InternalRuntimeManager toBeManager = (InternalRuntimeManager) RuntimeManagerRegistry.get().getManager(migrationSpec.getToDeploymentId()); boolean migrateExecutorJobs = ((SimpleRuntimeEnvironment)currentManager.getEnvironment()).getEnvironmentTemplate().get("ExecutorService") != null; validate(migrateExecutorJobs); Map<Long, List<TimerInstance>> timerMigrated = null;
@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; } }
protected void disallowSharedTaskService(RuntimeEnvironment environment) { if (((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("org.kie.api.task.TaskService") != null) { throw new IllegalStateException("Per process instance and per request runtime manager do not support shared task service"); } }
protected void disallowSharedTaskService(RuntimeEnvironment environment) { if (((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("org.kie.api.task.TaskService") != null) { throw new IllegalStateException("Per process instance and per request runtime manager do not support shared task service"); } } }
protected void disallowSharedTaskService(RuntimeEnvironment environment) { if (((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("org.kie.api.task.TaskService") != null) { throw new IllegalStateException("Per process instance and per request runtime manager do not support shared task service"); } }
protected void disallowSharedTaskService(RuntimeEnvironment environment) { if (((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("org.kie.api.task.TaskService") != null) { throw new IllegalStateException("Per process instance and per request runtime manager do not support shared task service"); } } }
private void internalSetKieContainer() { this.kieContainer = (KieContainer) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("KieContainer"); }
protected TaskServiceFactory getTaskServiceFactory(RuntimeEnvironment environment) { // if there is an implementation of TaskServiceFactory in the environment then use it TaskServiceFactory taskServiceFactory = (TaskServiceFactory) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate() .get("org.kie.internal.runtime.manager.TaskServiceFactory"); if (taskServiceFactory != null) { return taskServiceFactory; } taskServiceFactory = new LocalTaskServiceFactory(environment); return taskServiceFactory; }
protected void adjustEnvironment(RuntimeEnvironment environment) { if (userGroupCallback != null) { ((SimpleRuntimeEnvironment)environment).setUserGroupCallback(userGroupCallback); } if (schedulerService != null) { ((SimpleRuntimeEnvironment)environment).setSchedulerService(schedulerService); } ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TRANSACTION_MANAGER, transactionManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TASK_USER_GROUP_CALLBACK, userGroupCallback); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TASK_USER_INFO, userInfo); if (entityManager != null) { ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.APP_SCOPED_ENTITY_MANAGER, entityManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, entityManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set("IS_JTA_TRANSACTION", false); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set("IS_SHARED_ENTITY_MANAGER", true); } if (pessimisticLocking) { ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.USE_PESSIMISTIC_LOCKING, true); } TransactionManagerFactory transactionManagerFactory = TransactionManagerFactory.get(); if (transactionManagerFactory instanceof KieSpringTransactionManagerFactory) { ((KieSpringTransactionManagerFactory) transactionManagerFactory).setGlobalTransactionManager(transactionManager); } }
protected void adjustEnvironment(RuntimeEnvironment environment) { if (userGroupCallback != null) { ((SimpleRuntimeEnvironment)environment).setUserGroupCallback(userGroupCallback); } if (schedulerService != null) { ((SimpleRuntimeEnvironment)environment).setSchedulerService(schedulerService); } ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TRANSACTION_MANAGER, transactionManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TASK_USER_GROUP_CALLBACK, userGroupCallback); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.TASK_USER_INFO, userInfo); if (entityManager != null) { ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.APP_SCOPED_ENTITY_MANAGER, entityManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, entityManager); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set("IS_JTA_TRANSACTION", false); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set("IS_SHARED_ENTITY_MANAGER", true); } if (pessimisticLocking) { ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.USE_PESSIMISTIC_LOCKING, true); } TransactionManagerFactory transactionManagerFactory = TransactionManagerFactory.get(); if (transactionManagerFactory instanceof KieSpringTransactionManagerFactory) { ((KieSpringTransactionManagerFactory) transactionManagerFactory).setGlobalTransactionManager(transactionManager); } }
@Override protected TaskServiceFactory getTaskServiceFactory(RuntimeEnvironment environment) { // if there is an implementation of TaskServiceFactory in the environment then use it TaskServiceFactory taskServiceFactory = (TaskServiceFactory) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate() .get("org.kie.internal.runtime.manager.TaskServiceFactory"); if (taskServiceFactory != null) { return taskServiceFactory; } try { taskServiceFactory = taskServiceFactoryInjected.get(); // since this is CDI let's make sure it has all dependencies met taskServiceFactory.newTaskService().toString(); } catch (Exception e) { taskServiceFactory = new LocalTaskServiceFactory(environment); } return taskServiceFactory; } }
private void internalSetDeploymentDescriptor() { this.deploymentDescriptor = (DeploymentDescriptor) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("KieDeploymentDescriptor"); if (this.deploymentDescriptor == null) { this.deploymentDescriptor = new DeploymentDescriptorManager().getDefaultDescriptor(); } }
public AbstractRuntimeManager(RuntimeEnvironment environment, String identifier) { this.environment = environment; this.identifier = identifier; if (registry.isRegistered(identifier)) { throw new IllegalStateException("RuntimeManager with id " + identifier + " is already active"); } ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.DEPLOYMENT_ID, this.getIdentifier()); internalSetDeploymentDescriptor(); internalSetKieContainer(); ((InternalRegisterableItemsFactory)environment.getRegisterableItemsFactory()).setRuntimeManager(this); String eagerInit = (String)((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("RuntimeEngineEagerInit"); if (eagerInit != null) { engineInitEager = Boolean.parseBoolean(eagerInit); } ExecutionErrorStorage storage = (ExecutionErrorStorage) ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get("ExecutionErrorStorage"); if (storage == null) { storage = new DefaultExecutionErrorStorage(environment.getEnvironment()); } this.executionErrorManager = new ExecutionErrorManagerImpl(storage); ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().set(EnvironmentName.EXEC_ERROR_MANAGER, executionErrorManager); }
protected InternalTaskService newTaskService(TaskServiceFactory factory) { InternalTaskService internalTaskService = (InternalTaskService) factory.newTaskService(); if (internalTaskService instanceof CommandBasedTaskService) { ((CommandBasedTaskService) internalTaskService).getEnvironment().set(EnvironmentName.DEPLOYMENT_ID, this.getIdentifier()); ((CommandBasedTaskService) internalTaskService).getEnvironment().set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, ((SimpleRuntimeEnvironment)environment).getEnvironmentTemplate().get(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES)); } return internalTaskService; }
@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; } }