51 lines
1.8 KiB
Plaintext
Executable File
51 lines
1.8 KiB
Plaintext
Executable File
package com.fp.bpmlib.task.util;
|
|
|
|
import javax.enterprise.context.ApplicationScoped;
|
|
import javax.enterprise.inject.Produces;
|
|
import javax.persistence.EntityManagerFactory;
|
|
import javax.persistence.Persistence;
|
|
import javax.persistence.PersistenceUnit;
|
|
|
|
import org.kie.api.runtime.manager.RuntimeEnvironment;
|
|
import org.kie.api.runtime.manager.RuntimeEnvironmentBuilder;
|
|
|
|
/**
|
|
* Necesita esta claese para que funcione el jbpm, internamente utiliza el EntiyManagerFactory.
|
|
*
|
|
* @author jorge
|
|
*/
|
|
@ApplicationScoped
|
|
public class MaiaApplicationScopeProducer {
|
|
|
|
@PersistenceUnit(unitName = "org.jbpm.domain")
|
|
private EntityManagerFactory emf;
|
|
|
|
@Produces
|
|
public EntityManagerFactory produceEntityManagerFactory() {
|
|
if (emf == null) {
|
|
emf = Persistence.createEntityManagerFactory("org.jbpm.domain");
|
|
}
|
|
return emf;
|
|
}
|
|
|
|
// @Produces
|
|
// @Singleton
|
|
// @PerProcessInstance
|
|
// @PerRequest
|
|
public RuntimeEnvironment produceEnvironment(EntityManagerFactory emf) {
|
|
|
|
// RuntimeEnvironment environment =
|
|
// RuntimeEnvironmentBuilder.Factory.get().newDefaultBuilder().entityManagerFactory(emf)
|
|
// .userGroupCallback(usergroupCallback).addAsset(ResourceFactory.newClassPathResource("prueba.bpmn2"),
|
|
// ResourceType.BPMN2)
|
|
// .get();
|
|
RuntimeEnvironmentBuilder builder = RuntimeEnvironmentBuilder.Factory.get().newDefaultBuilder().entityManagerFactory(emf);
|
|
// builder.userGroupCallback(usergroupCallback);
|
|
// builder.registerableItemsFactory(factory);
|
|
// builder.addAsset(ResourceFactory.newClassPathResource("prueba.bpmn2"), ResourceType.BPMN2);
|
|
RuntimeEnvironment environment = builder.get();
|
|
return environment;
|
|
}
|
|
|
|
}
|