public SimpleRuntimeEnvironment(RegisterableItemsFactory registerableItemsFactory) { this.environment = EnvironmentFactory.newEnvironment(); this.environmentEntries = new HashMap<String, Object>(); this.kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); this.registerableItemsFactory = registerableItemsFactory; }
private static KieSession createSession(KieBase kbase) { Properties properties = new Properties(); properties.put("drools.processInstanceManagerFactory", "org.jbpm.process.instance.impl.DefaultProcessInstanceManagerFactory"); properties.put("drools.processSignalManagerFactory", "org.jbpm.process.instance.event.DefaultSignalManagerFactory"); KieSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(properties); return kbase.newKieSession(config, EnvironmentFactory.newEnvironment()); }
public static StatefulKnowledgeSession deserializeKnowledgeSession(Marshaller marshaller, byte [] serializedKsession) throws Exception { ByteArrayInputStream bais = new ByteArrayInputStream( serializedKsession ); StatefulKnowledgeSession deserializedKsession = (StatefulKnowledgeSession) marshaller.unmarshall( bais, SessionConfiguration.newInstance(), EnvironmentFactory.newEnvironment() ); bais.close(); return deserializedKsession; }
protected Environment createEnvironment(EntityManagerFactory emf) { Environment env = EnvironmentFactory.newEnvironment(); env.set(ENTITY_MANAGER_FACTORY, emf); env.set(TRANSACTION_MANAGER, com.arjuna.ats.jta.TransactionManager.transactionManager()); if (sessionPersistence) { ObjectMarshallingStrategy[] strategies = (ObjectMarshallingStrategy[]) env.get(OBJECT_MARSHALLING_STRATEGIES); List<ObjectMarshallingStrategy> listStrategies =new ArrayList<ObjectMarshallingStrategy>(Arrays.asList(strategies)); listStrategies.add(0, new ProcessInstanceResolverStrategy()); strategies = new ObjectMarshallingStrategy[listStrategies.size()]; env.set(OBJECT_MARSHALLING_STRATEGIES, listStrategies.toArray(strategies)); } return env; }
@Before public void setUp() throws Exception { context = setupWithPoolingDataSource(JBPM_PERSISTENCE_UNIT_NAME); Environment env = EnvironmentFactory.newEnvironment(); env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, context.get(EnvironmentName.ENTITY_MANAGER_FACTORY)); logService = new JPAAuditLogService(env); }
public static Environment createEnvironment(Map<String, Object> context) { Environment env = EnvironmentFactory.newEnvironment(); UserTransaction ut = (UserTransaction) context.get(TRANSACTION); if( ut != null ) { env.set( TRANSACTION, ut); } env.set( ENTITY_MANAGER_FACTORY, context.get(ENTITY_MANAGER_FACTORY) ); env.set( TRANSACTION_MANAGER, com.arjuna.ats.jta.TransactionManager.transactionManager() ); env.set( GLOBALS, new MapGlobalResolver() ); return env; }
logger = AuditLoggerFactory.newJPAInstance(runtime.getKieSession().getEnvironment()); } else { Environment env = EnvironmentFactory.newEnvironment(); env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, EntityManagerFactoryManager.get().getOrCreate(descriptor.getAuditPersistenceUnit())); logger = AuditLoggerFactory.newJPAInstance(env);
protected Environment copyEnvironment() { Environment copy = EnvironmentFactory.newEnvironment();
@BeforeClass public static void setup() throws Exception { setUpDataSource(); // clear logs Environment env = EnvironmentFactory.newEnvironment(); env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, emf); logService = new JPAAuditLogService(env); logService.clear(); }
@Test(timeout = 15000) public void testTaskNotStartedReassign() throws Exception { Reader reader = new InputStreamReader(getClass().getResourceAsStream(MvelFilePath.DeadlineWithMultipleReassignment)); Map<String, Object> vars = new HashMap<String, Object>(); vars.put("now", new Date()); Task task = (InternalTask) TaskFactory.evalTask(reader, vars); Environment environment = EnvironmentFactory.newEnvironment(); Map<String, Object> inputVars = new HashMap<String, Object>(); inputVars.put("NotStartedReassign", "[users:Tony Stark,Bobba Fet,Jabba Hutt|groups:]@[2s]"); ((InternalTask) task).setDeadlines(HumanTaskHandlerHelper.setDeadlines(inputVars, Collections.emptyList(), environment)); taskService.addTask(task, inputVars); CountDownTaskEventListener countDownListener = new CountDownTaskEventListener(1, true, false); addCountDownListner(countDownListener); long taskId = task.getId(); String []owners = new String[] { "Tony Stark", "Bobba Fet", "Jabba Hutt" }; for(String owner : owners) { countDownListener.reset(1); taskService.claim(taskId, owner); task = taskService.getTaskById(taskId); assertThat(task.getTaskData().getActualOwner().getId()).isEqualTo(owner); countDownListener.waitTillCompleted(); task = taskService.getTaskById(taskId); assertThat(task.getTaskData().getActualOwner()).as("Task was not reclaimed").isNull(); } taskService.claim(taskId, "Bobba Fet"); taskService.start(taskId, "Bobba Fet"); taskService.complete(taskId, "Bobba Fet", Collections.<String, Object>emptyMap()); }
InternalTask task = (InternalTask) TaskFactory.evalTask(reader, vars); Environment environment = EnvironmentFactory.newEnvironment(); Map<String, Object> inputVars = new HashMap<String, Object>(); inputVars.put("NotCompletedReassign", "[users:Tony Stark,Bobba Fet,Jabba Hutt|groups:]@[2s]");
} else { if (env == null) { env = EnvironmentFactory.newEnvironment();
@Before public void setUp() throws Exception { pds = setupPoolingDataSource(); emf = Persistence.createEntityManagerFactory("org.jbpm.services.task"); ksession = new TestStatefulKnowledgeSession(); env = EnvironmentFactory.newEnvironment(); ksession.setEnvironment(env); this.taskService = (InternalTaskService) HumanTaskServiceFactory.newTaskServiceConfigurator() .entityManagerFactory(emf) .getTaskService(); htWorkItemHandler = new NonManagedLocalHTWorkItemHandler(ksession, taskService); setHandler(htWorkItemHandler); }
marshallingConfig.isMarshallProcessInstances(), marshallingConfig.isMarshallWorkItems() , EnvironmentFactory.newEnvironment()); readerContext.wm = ((StatefulKnowledgeSessionImpl) ksession).getInternalWorkingMemory(); Object procInstObject = strategy.read(readerContext);
public MarshallerTest(ObjectMarshallingStrategy strategy) { this.env = EnvironmentFactory.newEnvironment(); this.env.set( EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, new ObjectMarshallingStrategy[]{ strategy } ); }
private StatefulKnowledgeSessionImpl createWorkingMemory(InternalKnowledgeBase kBase) { // WorkingMemoryEntryPoint KieSessionConfiguration ksconf = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); ksconf.setOption( ClockTypeOption.get( "pseudo" ) ); SessionConfiguration sessionConf = ((SessionConfiguration) ksconf); StatefulKnowledgeSessionImpl wm = new StatefulKnowledgeSessionImpl(1L, kBase, true, sessionConf, EnvironmentFactory.newEnvironment()); return wm; }
@Test public void testRegisterHandlerWithKsessionUsingConfiguration() { KieBase kbase = KnowledgeBaseFactory.newKnowledgeBase(); Properties props = new Properties(); props.setProperty("drools.workItemHandlers", "CustomWorkItemHandlers.conf"); KieSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(props); KieSession ksession = kbase.newKieSession(config, EnvironmentFactory.newEnvironment()); assertNotNull(ksession); // this test would fail on creation of the work item manager if injecting session is not supported WorkItemManager manager = ksession.getWorkItemManager(); assertNotNull(manager); Map<String, WorkItemHandler> handlers = ((SessionConfiguration)config).getWorkItemHandlers(); assertNotNull(handlers); assertEquals(1, handlers.size()); assertTrue(handlers.containsKey("Custom")); }
private KieSession marsallStatefulKnowledgeSession(KieSession ksession) throws IOException, ClassNotFoundException { Globals globals = ksession.getGlobals(); KieBase kbase = ksession.getKieBase(); ByteArrayOutputStream out = new ByteArrayOutputStream(); MarshallerFactory.newMarshaller( kbase ).marshall( out, ksession ); KieSessionConfiguration ksconf = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); ksconf.setOption( TimerJobFactoryOption.get("trackable") ); ksconf.setOption( ClockTypeOption.get( "pseudo" ) ); Environment env = EnvironmentFactory.newEnvironment(); env.set( EnvironmentName.GLOBALS, globals ); ksession = MarshallerFactory.newMarshaller( kbase ).unmarshall( new ByteArrayInputStream( out.toByteArray() ), ksconf, env ); return ksession; }
@Test public void testThrowErrorWhenExistMultipleMarshallingStrategiesWithSameName() throws IOException, ClassNotFoundException { Environment env = EnvironmentFactory.newEnvironment(); final Thing entityOne = new Thing( 1, "Object 1" ); final Thing entityTwo = new Thing( 2, "Object 2" );
InternalKnowledgeBase kbase = (InternalKnowledgeBase) loadKnowledgeBase( "test_CollectDynamicRules1.drl" ); kbase = SerializationHelper.serializeObject( kbase ); Environment env = EnvironmentFactory.newEnvironment(); env.set( EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, new ObjectMarshallingStrategy[]{ new IdentityPlaceholderResolverStrategy( ClassObjectMarshallingStrategyAcceptor.DEFAULT )} );