Refine search
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; }
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 )} ); KieSession ksession = kbase.newKieSession( null, env ); List<?> results = new ArrayList<Object>(); ksession.setGlobal( "results", results ); final Cheese c = new Cheese( "stilton", 20 ); ksession.insert( a ); ksession.insert( b ); ksession.insert( c );
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; }
@Test public void testMultipleObjectMarshallingStrategiesOfTheSameClassWithDifferentNames() throws IOException, ClassNotFoundException { Environment env = EnvironmentFactory.newEnvironment(); final Thing entityOne = new Thing( 1, "Object 1" ); final Thing entityTwo = new Thing( 2, "Object 2" ); }; env.set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, strats); final KieBaseConfiguration kbconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase( kbconf ); ks.insert( entityOne ); ks.insert( entityTwo ); ksession2 = marshaller.unmarshall(bais, ks.getSessionConfiguration(), ks.getEnvironment()); Collection items = ksession2.getFactHandles(); Assert.assertTrue( items.size() == 2 );
KieBase kbase = kbuilder.newKieBase(); KieSession ksession = kbase.newKieSession(); ProcessInstance processInstance = ksession.createProcessInstance("process name", new HashMap<String, Object>()); ksession.insert(processInstance); marshallingConfig.getObjectMarshallingStrategyStore(), marshallingConfig.isMarshallProcessInstances(), marshallingConfig.isMarshallWorkItems(), ksession.getEnvironment()); marshallingConfig.isMarshallProcessInstances(), marshallingConfig.isMarshallWorkItems() , EnvironmentFactory.newEnvironment()); readerContext.wm = ((StatefulKnowledgeSessionImpl) ksession).getInternalWorkingMemory(); Object procInstObject = strategy.read(readerContext);
@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" ); env.set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, strats); final KieBaseConfiguration kbconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase( kbconf ); ks.insert( entityOne ); ks.insert( entityTwo );
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; }
public static KieSession createSession(String process) { KnowledgeBuilder builder = KnowledgeBuilderFactory.newKnowledgeBuilder(); builder.add(ResourceFactory.newClassPathResource(process), ResourceType.BPMN2); KieBase kbase = builder.newKieBase(); KieSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); config.setOption(ClockTypeOption.get("pseudo") ); KieSession session = kbase.newKieSession(config, EnvironmentFactory.newEnvironment()); session.getEnvironment().set("NodeInstanceFactoryRegistry", SimulationNodeInstanceFactoryRegistry.getInstance()); return session; }
if (descriptor == null) { AbstractAuditLogger logger = AuditLoggerFactory.newJPAInstance(runtime.getKieSession().getEnvironment()); logger.setBuilder(getAuditBuilder(runtime)); defaultListeners.add(logger); 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);
@Override public void internalAfterPropertiesSet() throws Exception { JpaConfiguration jpaConfiguration = factoryBean.getJpaConfiguration(); if (jpaConfiguration != null) { Environment env = EnvironmentFactory.newEnvironment(); env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, jpaConfiguration.getEntityManagerFactory()); env.set(EnvironmentName.TRANSACTION_MANAGER, jpaConfiguration.getPlatformTransactionManager()); env.set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, new ObjectMarshallingStrategy[]{new SerializablePlaceholderResolverStrategy(ClassObjectMarshallingStrategyAcceptor.DEFAULT)}); if (jpaConfiguration.getId() >= 0) { kieSession = JPAKnowledgeService.loadStatefulKnowledgeSession(jpaConfiguration.getId(), kieSession.getKieBase(), factoryBean.getConf(), env); } else { kieSession = JPAKnowledgeService.newStatefulKnowledgeSession(kieSession.getKieBase(), factoryBean.getConf(), env); } } }
Environment env = new EnvironmentAdapter( EnvironmentFactory.newEnvironment() ); env.set( EnvironmentName.ENTITY_MANAGER_FACTORY, jpaConfiguration.getEntityManagerFactory() ); env.set( EnvironmentName.TRANSACTION_MANAGER, jpaConfiguration.getPlatformTransactionManager() ); env.set( EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, new ObjectMarshallingStrategy[]{new SerializablePlaceholderResolverStrategy( ClassObjectMarshallingStrategyAcceptor.DEFAULT )} ); ksession.execute( cmd ); ksession.addEventListener(agendaEventListener); ksession.addEventListener(processEventListener);
@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")); }
StatefulKnowledgeSession result; if (conf == null) { conf = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); env.set(USE_PESSIMISTIC_LOCKING, true); } else { if (env == null) { env = EnvironmentFactory.newEnvironment();
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()); }
Environment env = EnvironmentFactory.newEnvironment(); env.set( EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, new ObjectMarshallingStrategy[]{ new IdentityPlaceholderResolverStrategy( ClassObjectMarshallingStrategyAcceptor.DEFAULT )} ); ksession.setGlobal( "list", list ); Person bobba = new Person( "bobba fet", 50 ); ksession.insert( bobba ); ksession = getSerialisedStatefulKnowledgeSession( ksession, true ); ksession.fireAllRules(); assertEquals( 1, list.size() );
protected Environment copyEnvironment() { Environment copy = EnvironmentFactory.newEnvironment(); ObjectMarshallingStrategy[] strategies = (ObjectMarshallingStrategy[]) copy.get(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES); copy.set(EnvironmentName.OBJECT_MARSHALLING_STRATEGIES, listStrategies.toArray(strategies)); for (Entry<String, Object> entry : environmentEntries.entrySet()) { if (copy.get(entry.getKey()) != null) { continue;
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; }
public static KieSession createSession(String process) { KnowledgeBuilder builder = KnowledgeBuilderFactory.newKnowledgeBuilder(); builder.add(ResourceFactory.newClassPathResource(process), ResourceType.BPMN2); KieBase kbase = builder.newKieBase(); KieSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); config.setOption(ClockTypeOption.get("pseudo") ); KieSession session = kbase.newKieSession(config, EnvironmentFactory.newEnvironment()); session.getEnvironment().set("NodeInstanceFactoryRegistry", SimulationNodeInstanceFactoryRegistry.getInstance()); return session; }
if (descriptor == null) { AbstractAuditLogger logger = AuditLoggerFactory.newJPAInstance(runtime.getKieSession().getEnvironment()); logger.setBuilder(getAuditBuilder(runtime)); defaultListeners.add(logger); 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);