diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2014-04-21 09:01:00 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2014-04-21 09:01:00 +0200 |
commit | fd681e2c6663652be02a31f7b40da4cd283ab37e (patch) | |
tree | 83cf23c1cc1f9320f2464e355d33d7abce3249e8 | |
parent | d38810a179a6f669ea0d3e7588f2aabed762deff (diff) | |
download | calamus-fd681e2c6663652be02a31f7b40da4cd283ab37e.tar.gz calamus-fd681e2c6663652be02a31f7b40da4cd283ab37e.tar.bz2 calamus-fd681e2c6663652be02a31f7b40da4cd283ab37e.tar.xz calamus-fd681e2c6663652be02a31f7b40da4cd283ab37e.zip |
wip
-rw-r--r-- | calamus-engine/.gitignore | 2 | ||||
-rwxr-xr-x | calamus-engine/pom.xml | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusDbConfig.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/CalamusDbConfig.java) | 20 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpm.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpm.java) | 16 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpmConfig.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpmConfig.java) | 23 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/JenkinsBuildResultMessageListener.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/JenkinsBuildResultMessageListener.java) | 8 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/Main.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/Main.java) | 6 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/MqClient.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/MqClient.java) | 8 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/NexusNewArtifactMessageListener.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java) | 19 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/RestartAppWorkItemHandler.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/RestartAppWorkItemHandler.java) | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/UpgradeAppWorkItemHandler.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/UpgradeAppWorkItemHandler.java) | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AbstractEntity.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/domain/AbstractEntity.java) | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppInstance.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/service/AppInstance.java) | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppService.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/service/AppService.java) | 2 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Artifact.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/domain/Artifact.java) | 4 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Process.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/domain/Process.java) | 17 | ||||
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/ProcessTrigger.java (renamed from calamus-engine/src/main/java/io/trygvis/engine/domain/ProcessTrigger.java) | 6 | ||||
-rw-r--r-- | calamus-engine/src/main/resources/Deploy.bpmn2 | 22 | ||||
-rw-r--r-- | calamus-engine/src/main/resources/META-INF/persistence.xml | 11 | ||||
-rw-r--r-- | calamus-engine/src/main/resources/db/public/V001_000__jbpm.sql | 929 | ||||
-rw-r--r-- | calamus-engine/src/main/resources/db/public/V001_001__baseline.sql | 41 | ||||
-rw-r--r-- | calamus-engine/src/main/resources/logback.xml | 7 | ||||
-rw-r--r-- | calamus-engine/src/test/java/io/trygvis/calamus/engine/MyTest.java (renamed from calamus-engine/src/test/java/io/trygvis/engine/MyTest.java) | 19 |
23 files changed, 459 insertions, 711 deletions
diff --git a/calamus-engine/.gitignore b/calamus-engine/.gitignore new file mode 100644 index 0000000..19f2e00 --- /dev/null +++ b/calamus-engine/.gitignore @@ -0,0 +1,2 @@ +/target +/target diff --git a/calamus-engine/pom.xml b/calamus-engine/pom.xml index 48711fa..769fe2d 100755 --- a/calamus-engine/pom.xml +++ b/calamus-engine/pom.xml @@ -195,6 +195,7 @@ </exclusion> </exclusions> </dependency> + <!-- <dependency> <groupId>org.jbpm</groupId> <artifactId>jbpm-human-task-core</artifactId> @@ -205,6 +206,7 @@ </exclusion> </exclusions> </dependency> + --> <dependency> <groupId>org.jbpm</groupId> <artifactId>jbpm-workitems</artifactId> diff --git a/calamus-engine/src/main/java/io/trygvis/engine/CalamusDbConfig.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusDbConfig.java index 39772c8..ad0e5a9 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/CalamusDbConfig.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusDbConfig.java @@ -1,4 +1,4 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; import bitronix.tm.BitronixTransactionManager; import bitronix.tm.TransactionManagerServices; @@ -7,17 +7,10 @@ import com.googlecode.flyway.core.Flyway; import com.googlecode.flyway.core.api.MigrationInfo; import com.googlecode.flyway.core.api.MigrationInfoService; import org.jbpm.process.audit.JPAAuditLogService; -import org.kie.api.io.Resource; -import org.kie.api.io.ResourceType; -import org.kie.api.runtime.manager.RuntimeEnvironment; -import org.kie.internal.io.ResourceFactory; -import org.kie.spring.factorybeans.RuntimeEnvironmentFactoryBean; -import org.kie.spring.factorybeans.RuntimeManagerFactoryBean; import org.slf4j.Logger; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.DependsOn; -import org.springframework.context.annotation.Lazy; import org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy; import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; @@ -29,8 +22,6 @@ import org.springframework.transaction.support.TransactionTemplate; import javax.persistence.EntityManagerFactory; import javax.sql.DataSource; import java.util.Date; -import java.util.HashMap; -import java.util.Map; import static java.lang.String.format; import static org.slf4j.LoggerFactory.getLogger; @@ -44,20 +35,23 @@ public class CalamusDbConfig { private final Logger log = getLogger(getClass()); @Bean - public DataSource dataSource() { + public PoolingDataSource innerDataSource() { PoolingDataSource ds = new PoolingDataSource(); ds.setUniqueName("jdbc/jbpm-ds"); ds.setClassName(bitronix.tm.resource.jdbc.lrc.LrcXADataSource.class.getCanonicalName()); - ds.setMaxPoolSize(3); + ds.setMaxPoolSize(10); ds.setAllowLocalTransactions(true); ds.getDriverProperties().put("user", "jbpm"); ds.getDriverProperties().put("password", "jbpm"); ds.getDriverProperties().put("url", "jdbc:postgresql://localhost/jbpm"); ds.getDriverProperties().put("driverClassName", org.postgresql.Driver.class.getCanonicalName()); ds.init(); + return ds; + } + @Bean + public DataSource dataSource(PoolingDataSource ds) { return new TransactionAwareDataSourceProxy(new LazyConnectionDataSourceProxy(ds)); -// return ds; } public static class DbMigrations { diff --git a/calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpm.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpm.java index 5b0e8ec..af6f489 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpm.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpm.java @@ -1,7 +1,10 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; +import org.kie.api.runtime.KieSession; +import org.kie.api.runtime.manager.RuntimeEngine; +import org.kie.api.runtime.manager.RuntimeManager; import org.kie.api.runtime.process.ProcessInstance; -import org.kie.internal.runtime.StatefulKnowledgeSession; +import org.kie.internal.runtime.manager.context.ProcessInstanceIdContext; import org.slf4j.Logger; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.transaction.support.TransactionTemplate; @@ -17,7 +20,7 @@ public class CalamusJbpm { private final EntityManagerFactory emf; - private final StatefulKnowledgeSession session; + private final KieSession session; public static enum CalamusProcess { DEPLOY("io.trygvis.bpm.Deploy"); @@ -47,7 +50,10 @@ public class CalamusJbpm { transactionTemplate = spring.getBean(TransactionTemplate.class); emf = spring.getBean(EntityManagerFactory.class); - session = null; + + RuntimeManager runtimeManager = spring.getBean(RuntimeManager.class); + RuntimeEngine engine = runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get()); + session = engine.getKieSession(); // session = JPAKnowledgeService.newStatefulKnowledgeSession(kieBase, null, env); // session.addEventListener(AuditLoggerFactory.newJPAInstance(env)); @@ -64,7 +70,7 @@ public class CalamusJbpm { return emf; } - public StatefulKnowledgeSession getSession() { + public KieSession getSession() { return session; } diff --git a/calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpmConfig.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpmConfig.java index 98ba550..edfda28 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/CalamusJbpmConfig.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/CalamusJbpmConfig.java @@ -1,9 +1,10 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; import org.jbpm.process.audit.JPAAuditLogService; import org.kie.api.io.Resource; import org.kie.api.io.ResourceType; import org.kie.api.runtime.manager.RuntimeEnvironment; +import org.kie.api.runtime.manager.RuntimeManager; import org.kie.internal.io.ResourceFactory; import org.kie.spring.factorybeans.RuntimeEnvironmentFactoryBean; import org.kie.spring.factorybeans.RuntimeManagerFactoryBean; @@ -39,8 +40,10 @@ public class CalamusJbpmConfig { x.setType("DEFAULT"); Map<Resource, ResourceType> assets = new HashMap<>(); - assets.put(ResourceFactory.newClassPathResource("/Deploy.bpmn2"), ResourceType.BPMN2); + System.out.println("getClass().getClassLoader() = " + getClass().getClassLoader()); + assets.put(ResourceFactory.newClassPathResource("Deploy.bpmn2", getClass()), ResourceType.BPMN2); x.setAssets(assets); +// x.setClassLoader(getClass().getClassLoader()); x.setEntityManagerFactory(entityManagerFactory); x.setTransactionManager(platformTransactionManager); @@ -48,13 +51,15 @@ public class CalamusJbpmConfig { return x; } -// @Bean -// public RuntimeManagerFactoryBean runtimeManagerFactoryBean(RuntimeEnvironment runtimeEnvironment) { -// RuntimeManagerFactoryBean x = new RuntimeManagerFactoryBean(); -// x.setIdentifier("spring-rm"); -// x.setRuntimeEnvironment(runtimeEnvironment); -// return x; -// } + @Bean + @Lazy + public RuntimeManager runtimeManagerFactoryBean(RuntimeEnvironment runtimeEnvironment) throws Exception { + RuntimeManagerFactoryBean x = new RuntimeManagerFactoryBean(); + x.setIdentifier("spring-rm"); + x.setRuntimeEnvironment(runtimeEnvironment); + x.afterPropertiesSet(); + return (RuntimeManager) x.getObject(); + } @Bean public JPAAuditLogService jpaAuditLogService(EntityManagerFactory entityManagerFactory) { diff --git a/calamus-engine/src/main/java/io/trygvis/engine/JenkinsBuildResultMessageListener.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/JenkinsBuildResultMessageListener.java index 08b5e5b..39ac6e3 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/JenkinsBuildResultMessageListener.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/JenkinsBuildResultMessageListener.java @@ -1,6 +1,6 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; -import org.kie.internal.runtime.StatefulKnowledgeSession; +import org.kie.api.runtime.KieSession; import org.slf4j.Logger; import javax.jms.JMSException; @@ -17,9 +17,9 @@ import static org.slf4j.LoggerFactory.getLogger; public class JenkinsBuildResultMessageListener implements MessageListener { private final Logger log = getLogger(getClass()); - private StatefulKnowledgeSession session; + private KieSession session; - public JenkinsBuildResultMessageListener(StatefulKnowledgeSession session) { + public JenkinsBuildResultMessageListener(KieSession session) { this.session = session; } diff --git a/calamus-engine/src/main/java/io/trygvis/engine/Main.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/Main.java index c5916e0..daa4886 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/Main.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/Main.java @@ -1,6 +1,6 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; -import org.kie.internal.runtime.StatefulKnowledgeSession; +import org.kie.api.runtime.KieSession; public class Main { public static void main(String[] args) throws Exception { @@ -9,7 +9,7 @@ public class Main { String brokerUrl = "tcp://localhost:61616"; - StatefulKnowledgeSession session = calamus.getSession(); + KieSession session = calamus.getSession(); // EntityManager entityManager = calamus.getEntityManagerFactory().createEntityManager(); // EntityTransaction transaction = entityManager.getTransaction(); diff --git a/calamus-engine/src/main/java/io/trygvis/engine/MqClient.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/MqClient.java index 91eec37..0cb33ad 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/MqClient.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/MqClient.java @@ -1,19 +1,13 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; import org.apache.activemq.ActiveMQConnectionFactory; -import org.kie.internal.runtime.StatefulKnowledgeSession; import javax.jms.Connection; import javax.jms.Destination; import javax.jms.JMSException; -import javax.jms.Message; import javax.jms.MessageConsumer; import javax.jms.MessageListener; import javax.jms.Session; -import javax.jms.TextMessage; -import java.io.IOException; -import java.io.StringReader; -import java.util.Properties; import static java.lang.Integer.parseInt; import static javax.jms.Session.AUTO_ACKNOWLEDGE; diff --git a/calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/NexusNewArtifactMessageListener.java index 0813c27..ab111d7 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/NexusNewArtifactMessageListener.java @@ -1,9 +1,9 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; -import io.trygvis.engine.domain.Artifact; -import io.trygvis.engine.domain.Process; -import io.trygvis.engine.domain.ProcessTrigger; -import org.kie.internal.runtime.StatefulKnowledgeSession; +import io.trygvis.calamus.engine.domain.Artifact; +import io.trygvis.calamus.engine.domain.Process; +import io.trygvis.calamus.engine.domain.ProcessTrigger; +import org.kie.api.runtime.KieSession; import org.slf4j.Logger; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.support.TransactionCallbackWithoutResult; @@ -19,8 +19,10 @@ import javax.persistence.NoResultException; import javax.persistence.TypedQuery; import java.io.IOException; import java.io.StringReader; +import java.util.Map; import java.util.Properties; +import static java.util.Collections.singletonMap; import static org.slf4j.LoggerFactory.getLogger; public class NexusNewArtifactMessageListener implements MessageListener { @@ -28,9 +30,9 @@ public class NexusNewArtifactMessageListener implements MessageListener { private final TransactionTemplate transactionTemplate; private final EntityManagerFactory entityManagerFactory; - private final StatefulKnowledgeSession session; + private final KieSession session; - public NexusNewArtifactMessageListener(TransactionTemplate transactionTemplate, EntityManagerFactory entityManagerFactory, StatefulKnowledgeSession session) { + public NexusNewArtifactMessageListener(TransactionTemplate transactionTemplate, EntityManagerFactory entityManagerFactory, KieSession session) { this.transactionTemplate = transactionTemplate; this.entityManagerFactory = entityManagerFactory; this.session = session; @@ -93,6 +95,9 @@ public class NexusNewArtifactMessageListener implements MessageListener { System.out.println("trigger.getMvel() = " + trigger.getMvel()); boolean match = trigger.matches(artifact); System.out.println("match = " + match); + + Map<String, Object> parameters = singletonMap("artifact", artifact); + session.startProcess(process.getJbpmProcessId(), parameters); } } diff --git a/calamus-engine/src/main/java/io/trygvis/engine/RestartAppWorkItemHandler.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/RestartAppWorkItemHandler.java index 98733c7..0706cf1 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/RestartAppWorkItemHandler.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/RestartAppWorkItemHandler.java @@ -1,4 +1,4 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; import org.kie.api.runtime.process.WorkItem; import org.kie.api.runtime.process.WorkItemHandler; diff --git a/calamus-engine/src/main/java/io/trygvis/engine/UpgradeAppWorkItemHandler.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/UpgradeAppWorkItemHandler.java index 6202d6b..32da945 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/UpgradeAppWorkItemHandler.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/UpgradeAppWorkItemHandler.java @@ -1,4 +1,4 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; import org.kie.api.runtime.process.WorkItem; import org.kie.api.runtime.process.WorkItemHandler; diff --git a/calamus-engine/src/main/java/io/trygvis/engine/domain/AbstractEntity.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AbstractEntity.java index e8b1faa..655b1cc 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/domain/AbstractEntity.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AbstractEntity.java @@ -1,4 +1,4 @@ -package io.trygvis.engine.domain; +package io.trygvis.calamus.engine.domain; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; diff --git a/calamus-engine/src/main/java/io/trygvis/engine/service/AppInstance.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppInstance.java index 0badb8c..aa2ea14 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/service/AppInstance.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppInstance.java @@ -1,4 +1,4 @@ -package io.trygvis.engine.service; +package io.trygvis.calamus.engine.domain; public class AppInstance { private String name; diff --git a/calamus-engine/src/main/java/io/trygvis/engine/service/AppService.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppService.java index 3ccde2b..da606a4 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/service/AppService.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/AppService.java @@ -1,4 +1,4 @@ -package io.trygvis.engine.service; +package io.trygvis.calamus.engine.domain; public class AppService { public void installApp(AppInstance instance) { diff --git a/calamus-engine/src/main/java/io/trygvis/engine/domain/Artifact.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Artifact.java index 8e01d92..34631ab 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/domain/Artifact.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Artifact.java @@ -1,10 +1,10 @@ -package io.trygvis.engine.domain; +package io.trygvis.calamus.engine.domain; import javax.persistence.Column; import javax.persistence.Entity; import java.util.Optional; -import static io.trygvis.engine.domain.Artifact.Level.UNTESTED; +import static io.trygvis.calamus.engine.domain.Artifact.Level.UNTESTED; import static java.util.Optional.ofNullable; @Entity diff --git a/calamus-engine/src/main/java/io/trygvis/engine/domain/Process.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Process.java index ccd96cf..c1f0b49 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/domain/Process.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/Process.java @@ -1,4 +1,4 @@ -package io.trygvis.engine.domain; +package io.trygvis.calamus.engine.domain; import javax.persistence.Column; import javax.persistence.Entity; @@ -12,6 +12,9 @@ public class Process extends AbstractEntity { @Column(length = 100, nullable = false) private String name; + @Column(length = 100, nullable = false) + private String jbpmProcessId; + @OneToMany(mappedBy = "process") private List<ProcessTrigger> processTriggers = new ArrayList<>(); @@ -19,7 +22,19 @@ public class Process extends AbstractEntity { return name; } + public String getJbpmProcessId() { + return jbpmProcessId; + } + public List<ProcessTrigger> getProcessTriggers() { return processTriggers; } + + @Override + public String toString() { + return "Process{" + + "name='" + name + '\'' + + ", jbpmProcessId='" + jbpmProcessId + '\'' + + "} " + super.toString(); + } } diff --git a/calamus-engine/src/main/java/io/trygvis/engine/domain/ProcessTrigger.java b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/ProcessTrigger.java index 00b1603..b26f6ca 100644 --- a/calamus-engine/src/main/java/io/trygvis/engine/domain/ProcessTrigger.java +++ b/calamus-engine/src/main/java/io/trygvis/calamus/engine/domain/ProcessTrigger.java @@ -1,4 +1,4 @@ -package io.trygvis.engine.domain; +package io.trygvis.calamus.engine.domain; import org.mvel2.MVEL; import org.mvel2.ParserContext; @@ -21,6 +21,10 @@ public class ProcessTrigger extends AbstractEntity { transient Serializable expression; + public Process getProcess() { + return process; + } + public String getMvel() { return mvel; } diff --git a/calamus-engine/src/main/resources/Deploy.bpmn2 b/calamus-engine/src/main/resources/Deploy.bpmn2 index 2e29859..14fa1fb 100644 --- a/calamus-engine/src/main/resources/Deploy.bpmn2 +++ b/calamus-engine/src/main/resources/Deploy.bpmn2 @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> <bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:tns="http://www.jboss.org/drools" xmlns="http://www.jboss.org/drools" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd http://www.jboss.org/drools drools.xsd http://www.bpsim.org/schemas/1.0 bpsim.xsd" id="Definition" expressionLanguage="http://www.mvel.org/2.0" targetNamespace="http://www.jboss.org/drools" typeLanguage="http://www.java.com/javaTypes"> - <bpmn2:itemDefinition id="_ItemDefinition_118" structureRef="io.trygvis.engine.service.AppService"/> - <bpmn2:itemDefinition id="ItemDefinition_1" structureRef="io.trygvis.engine.service.AppInstance"/> + <bpmn2:itemDefinition id="_ItemDefinition_118" structureRef="io.trygvis.calamus.engine.domain.AppService"/> + <bpmn2:itemDefinition id="ItemDefinition_1" structureRef="io.trygvis.calamus.engine.domain.AppInstance"/> <bpmn2:itemDefinition id="ItemDefinition_2" structureRef="StringDataType"/> <bpmn2:signal id="Signal_1" name="New build available"/> <bpmn2:message id="AppInstance" itemRef="ItemDefinition_1" name="AppInstance"/> - <bpmn2:interface id="Interface_2" implementationRef="io.trygvis.engine.service.AppService" name="io.trygvis.jbpm.service.AppService"> + <bpmn2:interface id="Interface_2" implementationRef="io.trygvis.calamus.engine.domain.AppService" name="io.trygvis.calamus.engine.domain.AppService"> <bpmn2:operation id="_Operation_70" name="installApp"> <bpmn2:inMessageRef>AppInstance</bpmn2:inMessageRef> </bpmn2:operation> @@ -16,18 +16,18 @@ <bpmn2:inMessageRef>AppInstance</bpmn2:inMessageRef> </bpmn2:operation> </bpmn2:interface> - <bpmn2:process id="io.trygvis.bpm.Deploy" tns:version="1" tns:packageName="io.trygvis.bpm" tns:adHoc="false" name="Deploy" isExecutable="true" processType="Private"> + <bpmn2:process id="io.trygvis.calamus.Deploy" tns:version="1" tns:packageName="io.trygvis.calamus.bpm" tns:adHoc="false" name="Deploy" isExecutable="true" processType="Private"> <bpmn2:documentation id="Documentation_79">asd</bpmn2:documentation> <bpmn2:extensionElements> - <tns:import name="io.trygvis.jbpm.service.AppService"/> - <tns:import name="io.trygvis.jbpm.service.AppInstance"/> + <tns:import name="io.trygvis.calamus.engine.domain.AppService"/> + <tns:import name="io.trygvis.calamus.engine.domain.AppInstance"/> </bpmn2:extensionElements> <bpmn2:property id="appInstance" itemSubjectRef="ItemDefinition_1"/> <bpmn2:startEvent id="StartEvent_2" name=""> <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing> <bpmn2:outputSet id="OutputSet_4" name="Output Set 4"/> </bpmn2:startEvent> - <bpmn2:sequenceFlow id="SequenceFlow_1" tns:priority="1" sourceRef="StartEvent_2" targetRef="Task_1"/> + <bpmn2:sequenceFlow id="SequenceFlow_1" tns:priority="1" name="" sourceRef="StartEvent_2" targetRef="Task_1"/> <bpmn2:task id="Task_1" tns:taskName="Upgrade App" tns:displayName="Upgrade app" tns:icon="task.png" name="Upgrade App"> <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing> @@ -47,7 +47,7 @@ <bpmn2:targetRef>_DataInput_19</bpmn2:targetRef> </bpmn2:dataInputAssociation> </bpmn2:task> - <bpmn2:sequenceFlow id="SequenceFlow_3" tns:priority="1" sourceRef="Task_1" targetRef="Task_2"/> + <bpmn2:sequenceFlow id="SequenceFlow_3" tns:priority="1" name="" sourceRef="Task_1" targetRef="Task_2"/> <bpmn2:task id="Task_2" tns:taskName="Restart App" tns:displayName="Restart app" tns:icon="task.png" name="Restart App"> <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing> @@ -67,7 +67,7 @@ <bpmn2:targetRef>_DataInput_21</bpmn2:targetRef> </bpmn2:dataInputAssociation> </bpmn2:task> - <bpmn2:sequenceFlow id="SequenceFlow_4" tns:priority="1" sourceRef="Task_2" targetRef="IntermediateCatchEvent_3"/> + <bpmn2:sequenceFlow id="SequenceFlow_4" tns:priority="1" name="" sourceRef="Task_2" targetRef="IntermediateCatchEvent_3"/> <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_3" name="Wait for application to start"> <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing> @@ -81,13 +81,13 @@ </bpmn2:outputSet> <bpmn2:messageEventDefinition id="MessageEventDefinition_3" messageRef="AppInstance"/> </bpmn2:intermediateCatchEvent> - <bpmn2:sequenceFlow id="SequenceFlow_5" tns:priority="1" sourceRef="IntermediateCatchEvent_3" targetRef="EndEvent_1"/> + <bpmn2:sequenceFlow id="SequenceFlow_5" tns:priority="1" name="" sourceRef="IntermediateCatchEvent_3" targetRef="EndEvent_1"/> <bpmn2:endEvent id="EndEvent_1" name=""> <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming> </bpmn2:endEvent> </bpmn2:process> <bpmndi:BPMNDiagram id="BPMNDiagram_1"> - <bpmndi:BPMNPlane id="BPMNPlane_Process_1" bpmnElement="io.trygvis.bpm.Deploy"> + <bpmndi:BPMNPlane id="BPMNPlane_Process_1" bpmnElement="io.trygvis.calamus.Deploy"> <bpmndi:BPMNShape id="BPMNShape_StartEvent_2" bpmnElement="StartEvent_2"> <dc:Bounds height="36.0" width="36.0" x="40.0" y="205.0"/> </bpmndi:BPMNShape> diff --git a/calamus-engine/src/main/resources/META-INF/persistence.xml b/calamus-engine/src/main/resources/META-INF/persistence.xml index 0150ad9..1c28491 100644 --- a/calamus-engine/src/main/resources/META-INF/persistence.xml +++ b/calamus-engine/src/main/resources/META-INF/persistence.xml @@ -7,6 +7,9 @@ <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>jdbc/jbpm-ds</jta-data-source> <mapping-file>META-INF/JBPMorm.xml</mapping-file> + <!-- + <mapping-file>META-INF/Taskorm.xml</mapping-file> + --> <class>org.drools.persistence.info.SessionInfo</class> <class>org.drools.persistence.info.WorkItemInfo</class> <class>org.jbpm.persistence.processinstance.ProcessInstanceInfo</class> @@ -16,12 +19,16 @@ <class>org.jbpm.process.audit.NodeInstanceLog</class> <class>org.jbpm.process.audit.VariableInstanceLog</class> <class>org.jbpm.runtime.manager.impl.jpa.ContextMappingInfo</class> - <class>io.trygvis.engine.domain.Artifact</class> + <!-- + <class>org.jbpm.services.task.impl.model.TaskImpl</class> + <class>org.jbpm.services.task.query.TaskSummaryImpl</class> + --> + <class>io.trygvis.calamus.engine.domain.Artifact</class> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQL82Dialect"/> <property name="hibernate.max_fetch_depth" value="3"/> <property name="hibernate.ejb.naming_strategy" value="org.hibernate.cfg.ImprovedNamingStrategy"/> - <!--<property name="hibernate.hbm2ddl.auto" value="update"/>--> + <!--<property name="hibernate.hbm2ddl.auto" value="create"/>--> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.BitronixJtaPlatform"/> diff --git a/calamus-engine/src/main/resources/db/public/V001_000__jbpm.sql b/calamus-engine/src/main/resources/db/public/V001_000__jbpm.sql index e13e6fb..981074a 100644 --- a/calamus-engine/src/main/resources/db/public/V001_000__jbpm.sql +++ b/calamus-engine/src/main/resources/db/public/V001_000__jbpm.sql @@ -1,633 +1,402 @@ -CREATE TABLE Attachment ( - AttachmentId INT8 NOT NULL, - accessType INT4, - attachedAt TIMESTAMP, - attachmentContentId INT8 NOT NULL, - contentType VARCHAR(255), - name VARCHAR(255), - attachment_size INT4, - attachedBy_id VARCHAR(255), - TaskData_Attachments_Id INT8, - PRIMARY KEY (AttachmentId) -); - -CREATE TABLE BAMTaskSummary ( - BAMTaskId INT8 NOT NULL, - createdDate TIMESTAMP, - duration INT8, - endDate TIMESTAMP, - processInstanceId INT8 NOT NULL, - startDate TIMESTAMP, - status VARCHAR(255), - taskId INT8 NOT NULL, - taskName VARCHAR(255), - userId VARCHAR(255), - PRIMARY KEY (BAMTaskId) -); - -CREATE TABLE BooleanExpression ( - id INT8 NOT NULL, - expression TEXT, - type VARCHAR(255), - Escalation_Constraints_Id INT8, - PRIMARY KEY (id) -); - -CREATE TABLE Content ( - id INT8 NOT NULL, - content OID, --- content BYTEA, - PRIMARY KEY (id) -); - -CREATE TABLE ContextMappingInfo ( - mappingId INT8 NOT NULL, - CONTEXT_ID VARCHAR(255) NOT NULL, - KSESSION_ID INT4 NOT NULL, - OPTLOCK INT4, - PRIMARY KEY (mappingId) -); - -CREATE TABLE CorrelationKeyInfo ( - keyId INT8 NOT NULL, - name VARCHAR(255), - processInstanceId INT8 NOT NULL, - OPTLOCK INT4, - PRIMARY KEY (keyId) -); - -CREATE TABLE CorrelationPropertyInfo ( - propertyId INT8 NOT NULL, - name VARCHAR(255), - value VARCHAR(255), - OPTLOCK INT4, - correlationKey_keyId INT8, - PRIMARY KEY (propertyId) -); - -CREATE TABLE Deadline ( - id INT8 NOT NULL, - deadline_date TIMESTAMP, - escalated INT2, - Deadlines_StartDeadLine_Id INT8, - Deadlines_EndDeadLine_Id INT8, - PRIMARY KEY (id) -); - -CREATE TABLE Delegation_delegates ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE ErrorInfo ( - id INT8 NOT NULL, - message VARCHAR(255), - stacktrace VARCHAR(5000), - timestamp TIMESTAMP, - REQUEST_ID INT8 NOT NULL, - PRIMARY KEY (id) -); - -CREATE TABLE Escalation ( - id INT8 NOT NULL, - name VARCHAR(255), - Deadline_Escalation_Id INT8, - PRIMARY KEY (id) -); - -CREATE TABLE EventTypes ( - InstanceId INT8 NOT NULL, - eventTypes VARCHAR(255) -); - -CREATE TABLE I18NText ( - I18NTextId INT8 NOT NULL, - language VARCHAR(255), - shortText VARCHAR(255), - text TEXT, - Task_Subjects_Id INT8, - Task_Names_Id INT8, - Task_Descriptions_Id INT8, - Reassignment_Documentation_Id INT8, - Notification_Subjects_Id INT8, - Notification_Names_Id INT8, - Notification_Documentation_Id INT8, - Notification_Descriptions_Id INT8, - Deadline_Documentation_Id INT8, - PRIMARY KEY (I18NTextId) -); - -CREATE TABLE NodeInstanceLog ( - id INT8 NOT NULL, - connection VARCHAR(255), - log_date TIMESTAMP, - externalId VARCHAR(255), - nodeId VARCHAR(255), - nodeInstanceId VARCHAR(255), - nodeName VARCHAR(255), - nodeType VARCHAR(255), - processId VARCHAR(255), - processInstanceId INT8 NOT NULL, - type INT4 NOT NULL, - workItemId INT8, - PRIMARY KEY (id) -); - -CREATE TABLE Notification ( - DTYPE VARCHAR(31) NOT NULL, - NotificationId INT8 NOT NULL, - priority INT4 NOT NULL, - Escalation_Notifications_Id INT8, - PRIMARY KEY (NotificationId) -); - -CREATE TABLE Notification_BAs ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE Notification_Recipients ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE Notification_email_header ( - Notification_NotificationId INT8 NOT NULL, - emailHeaders_id INT8 NOT NULL, - mapkey VARCHAR(255) NOT NULL, - PRIMARY KEY (Notification_NotificationId, mapkey) -); - -CREATE TABLE OrganizationalEntity ( - DTYPE VARCHAR(31) NOT NULL, - id VARCHAR(255) NOT NULL, - PRIMARY KEY (id) -); - -CREATE TABLE PeopleAssignments_BAs ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE PeopleAssignments_ExclOwners ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE PeopleAssignments_PotOwners ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); - -CREATE TABLE PeopleAssignments_Recipients ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); +-- +-- Name: artifact; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE artifact ( + id bigint NOT NULL, + artifact_id character varying(100) NOT NULL, + classifier character varying(100), + extension character varying(100) NOT NULL, + git_hash character varying(40), + group_id character varying(100) NOT NULL, + level integer NOT NULL, + version character varying(100) NOT NULL +); + +-- +-- Name: calamus_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE calamus_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: context_mapping_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE context_mapping_info ( + mapping_id bigint NOT NULL, + context_id character varying(255) NOT NULL, + ksession_id integer NOT NULL, + owner_id character varying(255), + optlock integer +); + +-- +-- Name: context_mapping_info_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE context_mapping_info_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: correlation_key_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE correlation_key_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: correlation_key_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE correlation_key_info ( + key_id bigint NOT NULL, + name character varying(255), + process_instance_id bigint NOT NULL, + optlock integer +); + +-- +-- Name: correlation_prop_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE correlation_prop_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: correlation_property_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE correlation_property_info ( + property_id bigint NOT NULL, + name character varying(255), + value character varying(255), + optlock integer, + correlation_key bigint +); + +-- +-- Name: event_types; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE event_types ( + instance_id bigint NOT NULL, + element character varying(255) +); + +-- +-- Name: node_inst_log_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE node_inst_log_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: node_instance_log; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE node_instance_log ( + id bigint NOT NULL, + connection character varying(255), + log_date timestamp without time zone, + external_id character varying(255), + node_id character varying(255), + node_instance_id character varying(255), + node_name character varying(255), + node_type character varying(255), + process_id character varying(255), + process_instance_id bigint NOT NULL, + type integer NOT NULL, + work_item_id bigint +); + +-- +-- Name: proc_inst_log_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE proc_inst_log_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: process; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE process ( + id bigint NOT NULL, + jbpm_process_id character varying(100) NOT NULL, + name character varying(100) NOT NULL +); + +-- +-- Name: process_instance_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE process_instance_info ( + instance_id bigint NOT NULL, + last_modification_date timestamp without time zone, + last_read_date timestamp without time zone, + process_id character varying(255), + process_instance_byte_array oid, + start_date timestamp without time zone, + state integer NOT NULL, + optlock integer +); + +-- +-- Name: process_instance_info_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE process_instance_info_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +-- +-- Name: process_instance_log; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE process_instance_log ( + id bigint NOT NULL, + duration bigint, + end_date timestamp without time zone, + external_id character varying(255), + user_identity character varying(255), + outcome character varying(255), + parent_process_instance_id bigint, + process_id character varying(255), + process_instance_id bigint NOT NULL, + process_name character varying(255), + process_version character varying(255), + start_date timestamp without time zone, + status integer +); + +-- +-- Name: process_trigger; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE process_trigger ( + id bigint NOT NULL, + mvel character varying(1000), + process bigint +); + +-- +-- Name: session_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- + +CREATE TABLE session_info ( + id integer NOT NULL, + last_modification_date timestamp without time zone, + rules_byte_array oid, + start_date timestamp without time zone, + optlock integer +); + +-- +-- Name: sessioninfo_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- + +CREATE SEQUENCE sessioninfo_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; -CREATE TABLE PeopleAssignments_Stakeholders ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); +-- +-- Name: var_inst_log_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- -CREATE TABLE ProcessInstanceInfo ( - InstanceId INT8 NOT NULL, - lastModificationDate TIMESTAMP, - lastReadDate TIMESTAMP, - processId VARCHAR(255), - processInstanceByteArray OID, --- processInstanceByteArray BYTEA, - startDate TIMESTAMP, - state INT4 NOT NULL, - OPTLOCK INT4, - PRIMARY KEY (InstanceId) -); +CREATE SEQUENCE var_inst_log_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; -CREATE TABLE ProcessInstanceLog ( - id INT8 NOT NULL, - duration INT8, - end_date TIMESTAMP, - externalId VARCHAR(255), - user_identity VARCHAR(255), - outcome VARCHAR(255), - parentProcessInstanceId INT8, - processId VARCHAR(255), - processInstanceId INT8 NOT NULL, - processName VARCHAR(255), - processVersion VARCHAR(255), - start_date TIMESTAMP, - status INT4, - PRIMARY KEY (id) -); +-- +-- Name: variable_instance_log; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE TABLE Reassignment ( - id INT8 NOT NULL, - Escalation_Reassignments_Id INT8, - PRIMARY KEY (id) +CREATE TABLE variable_instance_log ( + id bigint NOT NULL, + log_date timestamp without time zone, + external_id character varying(255), + old_value character varying(255), + process_id character varying(255), + process_instance_id bigint NOT NULL, + value character varying(255), + variable_id character varying(255), + variable_instance_id character varying(255) ); -CREATE TABLE Reassignment_potentialOwners ( - task_id INT8 NOT NULL, - entity_id VARCHAR(255) NOT NULL -); +-- +-- Name: work_item_info; Type: TABLE; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE TABLE RequestInfo ( - id INT8 NOT NULL, - commandName VARCHAR(255), - deploymentId VARCHAR(255), - executions INT4 NOT NULL, - businessKey VARCHAR(255), - message VARCHAR(255), - requestData OID, --- requestData BYTEA, - responseData OID, --- responseData BYTEA, - retries INT4 NOT NULL, - status VARCHAR(255), - timestamp TIMESTAMP, - PRIMARY KEY (id) +CREATE TABLE work_item_info ( + work_item_id bigint NOT NULL, + creation_date timestamp without time zone, + name character varying(255), + process_instance_id bigint NOT NULL, + state bigint NOT NULL, + optlock integer, + work_item_byte_array oid ); -CREATE TABLE SessionInfo ( - id INT4 NOT NULL, - lastModificationDate TIMESTAMP, - rulesByteArray OID, --- rulesByteArray BYTEA, - startDate TIMESTAMP, - OPTLOCK INT4, - PRIMARY KEY (id) -); +-- +-- Name: workiteminfo_id_seq; Type: SEQUENCE; Schema: public; Owner: jbpm +-- -CREATE TABLE Task ( - TaskId INT8 NOT NULL, - archived INT2, - allowedToDelegate VARCHAR(255), - formName VARCHAR(255), - priority INT4 NOT NULL, - subTaskStrategy VARCHAR(255), - activationTime TIMESTAMP, - createdOn TIMESTAMP, - deploymentId VARCHAR(255), - documentAccessType INT4, - documentContentId INT8 NOT NULL, - documentType VARCHAR(255), - expirationTime TIMESTAMP, - faultAccessType INT4, - faultContentId INT8 NOT NULL, - faultName VARCHAR(255), - faultType VARCHAR(255), - outputAccessType INT4, - outputContentId INT8 NOT NULL, - outputType VARCHAR(255), - parentId INT8 NOT NULL, - previousStatus INT4, - processId VARCHAR(255), - processInstanceId INT8 NOT NULL, - processSessionId INT4 NOT NULL, - skipable BOOLEAN NOT NULL, - status VARCHAR(255), - workItemId INT8 NOT NULL, - taskType VARCHAR(255), - OPTLOCK INT4, - taskInitiator_id VARCHAR(255), - actualOwner_id VARCHAR(255), - createdBy_id VARCHAR(255), - PRIMARY KEY (TaskId) -); +CREATE SEQUENCE workiteminfo_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; -CREATE TABLE TaskDef ( - TaskDefId INT8 NOT NULL, - name VARCHAR(255), - priority INT4 NOT NULL, - PRIMARY KEY (TaskDefId) -); +-- +-- Name: artifact_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE TABLE TaskEvent ( - id INT8 NOT NULL, - logTime TIMESTAMP, - taskId INT8, - type VARCHAR(255), - userId VARCHAR(255), - PRIMARY KEY (id) -); +ALTER TABLE ONLY artifact + ADD CONSTRAINT artifact_pkey PRIMARY KEY (id); -CREATE TABLE VariableInstanceLog ( - id INT8 NOT NULL, - log_date TIMESTAMP, - externalId VARCHAR(255), - oldValue VARCHAR(255), - processId VARCHAR(255), - processInstanceId INT8 NOT NULL, - value VARCHAR(255), - variableId VARCHAR(255), - variableInstanceId VARCHAR(255), - PRIMARY KEY (id) -); - -CREATE TABLE WorkItemInfo ( - workItemId INT8 NOT NULL, - creationDate TIMESTAMP, - name VARCHAR(255), - processInstanceId INT8 NOT NULL, - state INT8 NOT NULL, - OPTLOCK INT4, - workItemByteArray OID, --- workItemByteArray BYTEA, - PRIMARY KEY (workItemId) -); - -CREATE TABLE email_header ( - id INT8 NOT NULL, - body TEXT, - fromAddress VARCHAR(255), - language VARCHAR(255), - replyToAddress VARCHAR(255), - subject VARCHAR(255), - PRIMARY KEY (id) -); - -CREATE TABLE task_comment ( - id INT8 NOT NULL, - addedAt TIMESTAMP, - text TEXT, - addedBy_id VARCHAR(255), - TaskData_Comments_Id INT8, - PRIMARY KEY (id) -); -ALTER TABLE Attachment -ADD CONSTRAINT FK1C93543D937BFB5 -FOREIGN KEY (attachedBy_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE Attachment -ADD CONSTRAINT FK1C9354333CA892A -FOREIGN KEY (TaskData_Attachments_Id) -REFERENCES Task; - -ALTER TABLE BooleanExpression -ADD CONSTRAINT FKE3D208C06C97C90E -FOREIGN KEY (Escalation_Constraints_Id) -REFERENCES Escalation; - -ALTER TABLE CorrelationPropertyInfo -ADD CONSTRAINT FK761452A5D87156ED -FOREIGN KEY (correlationKey_keyId) -REFERENCES CorrelationKeyInfo; - -ALTER TABLE Deadline -ADD CONSTRAINT FK21DF3E78A9FE0EF4 -FOREIGN KEY (Deadlines_StartDeadLine_Id) -REFERENCES Task; - -ALTER TABLE Deadline -ADD CONSTRAINT FK21DF3E78695E4DDB -FOREIGN KEY (Deadlines_EndDeadLine_Id) -REFERENCES Task; - -ALTER TABLE Delegation_delegates -ADD CONSTRAINT FK47485D5772B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE Delegation_delegates -ADD CONSTRAINT FK47485D57786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; - -ALTER TABLE ErrorInfo -ADD CONSTRAINT FK8B1186B6724A467 -FOREIGN KEY (REQUEST_ID) -REFERENCES RequestInfo; - -ALTER TABLE Escalation -ADD CONSTRAINT FK67B2C6B5D1E5CC1 -FOREIGN KEY (Deadline_Escalation_Id) -REFERENCES Deadline; - -ALTER TABLE EventTypes -ADD CONSTRAINT FKB0E5621F7665489A -FOREIGN KEY (InstanceId) -REFERENCES ProcessInstanceInfo; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686BF4ACCD69 -FOREIGN KEY (Task_Subjects_Id) -REFERENCES Task; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686B424B187C -FOREIGN KEY (Task_Names_Id) -REFERENCES Task; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686BAB648139 -FOREIGN KEY (Task_Descriptions_Id) -REFERENCES Task; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686BB340A2AA -FOREIGN KEY (Reassignment_Documentation_Id) -REFERENCES Reassignment; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686BF0CDED35 -FOREIGN KEY (Notification_Subjects_Id) -REFERENCES Notification; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686BCC03ED3C -FOREIGN KEY (Notification_Names_Id) -REFERENCES Notification; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686B77C1C08A -FOREIGN KEY (Notification_Documentation_Id) -REFERENCES Notification; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686B18DDFE05 -FOREIGN KEY (Notification_Descriptions_Id) -REFERENCES Notification; - -ALTER TABLE I18NText -ADD CONSTRAINT FK2349686B78AF072A -FOREIGN KEY (Deadline_Documentation_Id) -REFERENCES Deadline; - -ALTER TABLE Notification -ADD CONSTRAINT FK2D45DD0BC0C0F29C -FOREIGN KEY (Escalation_Notifications_Id) -REFERENCES Escalation; - -ALTER TABLE Notification_BAs -ADD CONSTRAINT FK2DD68EE072B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE Notification_BAs -ADD CONSTRAINT FK2DD68EE093F2090B -FOREIGN KEY (task_id) -REFERENCES Notification; - -ALTER TABLE Notification_Recipients -ADD CONSTRAINT FK98FD214E72B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE Notification_Recipients -ADD CONSTRAINT FK98FD214E93F2090B -FOREIGN KEY (task_id) -REFERENCES Notification; - -ALTER TABLE Notification_email_header -ADD CONSTRAINT UK_F30FE3446CEA0510 UNIQUE (emailHeaders_id); - -ALTER TABLE Notification_email_header -ADD CONSTRAINT FKF30FE3448BED1339 -FOREIGN KEY (emailHeaders_id) -REFERENCES email_header; - -ALTER TABLE Notification_email_header -ADD CONSTRAINT FKF30FE344DD2D7416 -FOREIGN KEY (Notification_NotificationId) -REFERENCES Notification; - -ALTER TABLE PeopleAssignments_BAs -ADD CONSTRAINT FK9D8CF4EC72B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE PeopleAssignments_BAs -ADD CONSTRAINT FK9D8CF4EC786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; - -ALTER TABLE PeopleAssignments_ExclOwners -ADD CONSTRAINT FKC77B97E472B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; - -ALTER TABLE PeopleAssignments_ExclOwners -ADD CONSTRAINT FKC77B97E4786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; +-- +-- Name: context_mapping_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -ALTER TABLE PeopleAssignments_PotOwners -ADD CONSTRAINT FK1EE418D72B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; +ALTER TABLE ONLY context_mapping_info + ADD CONSTRAINT context_mapping_info_pkey PRIMARY KEY (mapping_id); -ALTER TABLE PeopleAssignments_PotOwners -ADD CONSTRAINT FK1EE418D786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; -ALTER TABLE PeopleAssignments_Recipients -ADD CONSTRAINT FKC6F615C272B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; +-- +-- Name: correlation_key_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -ALTER TABLE PeopleAssignments_Recipients -ADD CONSTRAINT FKC6F615C2786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; +ALTER TABLE ONLY correlation_key_info + ADD CONSTRAINT correlation_key_info_pkey PRIMARY KEY (key_id); -ALTER TABLE PeopleAssignments_Stakeholders -ADD CONSTRAINT FK482F79D572B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; -ALTER TABLE PeopleAssignments_Stakeholders -ADD CONSTRAINT FK482F79D5786553A5 -FOREIGN KEY (task_id) -REFERENCES Task; +-- +-- Name: correlation_property_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -ALTER TABLE Reassignment -ADD CONSTRAINT FK724D056062A1E871 -FOREIGN KEY (Escalation_Reassignments_Id) -REFERENCES Escalation; +ALTER TABLE ONLY correlation_property_info + ADD CONSTRAINT correlation_property_info_pkey PRIMARY KEY (property_id); -ALTER TABLE Reassignment_potentialOwners -ADD CONSTRAINT FK90B59CFF72B3A123 -FOREIGN KEY (entity_id) -REFERENCES OrganizationalEntity; -ALTER TABLE Reassignment_potentialOwners -ADD CONSTRAINT FK90B59CFF35D2FEE0 -FOREIGN KEY (task_id) -REFERENCES Reassignment; +-- +-- Name: node_instance_log_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -ALTER TABLE Task -ADD CONSTRAINT FK27A9A53C55C806 -FOREIGN KEY (taskInitiator_id) -REFERENCES OrganizationalEntity; +ALTER TABLE ONLY node_instance_log + ADD CONSTRAINT node_instance_log_pkey PRIMARY KEY (id); -ALTER TABLE Task -ADD CONSTRAINT FK27A9A5B723BE8B -FOREIGN KEY (actualOwner_id) -REFERENCES OrganizationalEntity; -ALTER TABLE Task -ADD CONSTRAINT FK27A9A55427E8F1 -FOREIGN KEY (createdBy_id) -REFERENCES OrganizationalEntity; +-- +-- Name: process_instance_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -ALTER TABLE task_comment -ADD CONSTRAINT FK61F475A57A3215D9 -FOREIGN KEY (addedBy_id) -REFERENCES OrganizationalEntity; +ALTER TABLE ONLY process_instance_info + ADD CONSTRAINT process_instance_info_pkey PRIMARY KEY (instance_id); -ALTER TABLE task_comment -ADD CONSTRAINT FK61F475A5F510CB46 -FOREIGN KEY (TaskData_Comments_Id) -REFERENCES Task; -CREATE SEQUENCE ATTACHMENT_ID_SEQ; +-- +-- Name: process_instance_log_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE BAM_TASK_ID_SEQ; +ALTER TABLE ONLY process_instance_log + ADD CONSTRAINT process_instance_log_pkey PRIMARY KEY (id); -CREATE SEQUENCE BOOLEANEXPR_ID_SEQ; -CREATE SEQUENCE COMMENT_ID_SEQ; +-- +-- Name: process_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE CONTENT_ID_SEQ; +ALTER TABLE ONLY process + ADD CONSTRAINT process_pkey PRIMARY KEY (id); -CREATE SEQUENCE CONTEXT_MAPPING_INFO_ID_SEQ; -CREATE SEQUENCE CORRELATION_KEY_ID_SEQ; +-- +-- Name: process_trigger_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE CORRELATION_PROP_ID_SEQ; +ALTER TABLE ONLY process_trigger + ADD CONSTRAINT process_trigger_pkey PRIMARY KEY (id); -CREATE SEQUENCE DEADLINE_ID_SEQ; +-- +-- Name: session_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE EMAILNOTIFHEAD_ID_SEQ; +ALTER TABLE ONLY session_info + ADD CONSTRAINT session_info_pkey PRIMARY KEY (id); -CREATE SEQUENCE ERROR_INFO_ID_SEQ; -CREATE SEQUENCE ESCALATION_ID_SEQ; +-- +-- Name: variable_instance_log_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE I18NTEXT_ID_SEQ; +ALTER TABLE ONLY variable_instance_log + ADD CONSTRAINT variable_instance_log_pkey PRIMARY KEY (id); -CREATE SEQUENCE NODE_INST_LOG_ID_SEQ; -CREATE SEQUENCE NOTIFICATION_ID_SEQ; +-- +-- Name: work_item_info_pkey; Type: CONSTRAINT; Schema: public; Owner: jbpm; Tablespace: +-- -CREATE SEQUENCE PROCESS_INSTANCE_INFO_ID_SEQ; +ALTER TABLE ONLY work_item_info + ADD CONSTRAINT work_item_info_pkey PRIMARY KEY (work_item_id); -CREATE SEQUENCE PROC_INST_LOG_ID_SEQ; -CREATE SEQUENCE REASSIGNMENT_ID_SEQ; +-- +-- Name: fk_8p498uslw0dnuqbms6ifwcw0a; Type: FK CONSTRAINT; Schema: public; Owner: jbpm +-- -CREATE SEQUENCE REQUEST_INFO_ID_SEQ; +ALTER TABLE ONLY correlation_property_info + ADD CONSTRAINT fk_8p498uslw0dnuqbms6ifwcw0a FOREIGN KEY (correlation_key) REFERENCES correlation_key_info(key_id); -CREATE SEQUENCE SESSIONINFO_ID_SEQ; -CREATE SEQUENCE TASK_DEF_ID_SEQ; +-- +-- Name: fk_mofjkjce7y19e7uee8xc0ua6; Type: FK CONSTRAINT; Schema: public; Owner: jbpm +-- -CREATE SEQUENCE TASK_EVENT_ID_SEQ; +ALTER TABLE ONLY process_trigger + ADD CONSTRAINT fk_mofjkjce7y19e7uee8xc0ua6 FOREIGN KEY (process) REFERENCES process(id); -CREATE SEQUENCE TASK_ID_SEQ; -CREATE SEQUENCE VAR_INST_LOG_ID_SEQ; +-- +-- Name: fk_ryp64oh29vgawmqgodvnvuh2o; Type: FK CONSTRAINT; Schema: public; Owner: jbpm +-- -CREATE SEQUENCE WORKITEMINFO_ID_SEQ; +ALTER TABLE ONLY event_types + ADD CONSTRAINT fk_ryp64oh29vgawmqgodvnvuh2o FOREIGN KEY (instance_id) REFERENCES process_instance_info(instance_id); diff --git a/calamus-engine/src/main/resources/db/public/V001_001__baseline.sql b/calamus-engine/src/main/resources/db/public/V001_001__baseline.sql deleted file mode 100644 index 5270d2c..0000000 --- a/calamus-engine/src/main/resources/db/public/V001_001__baseline.sql +++ /dev/null @@ -1,41 +0,0 @@ -DROP SEQUENCE IF EXISTS calamus_seq; -CREATE SEQUENCE calamus_seq; - -DROP TABLE IF EXISTS artifact; -CREATE TABLE artifact ( - id BIGINT NOT NULL PRIMARY KEY, - group_id VARCHAR(100) NOT NULL, - artifact_id VARCHAR(100) NOT NULL, - version VARCHAR(100) NOT NULL, - classifier VARCHAR(100), - extension VARCHAR(100) NOT NULL, - level VARCHAR(100) NOT NULL, - git_hash CHAR(40) -); - -DROP TABLE IF EXISTS process; -CREATE TABLE process ( - id BIGINT NOT NULL PRIMARY KEY, - name VARCHAR(100) NOT NULL, - process_id VARCHAR(100) NOT NULL -); - -DROP TABLE IF EXISTS process_trigger; -CREATE TABLE process_trigger ( - id BIGINT NOT NULL PRIMARY KEY, - process BIGINT NOT NULL REFERENCES process, - mvel VARCHAR(1000) NOT NULL -); - -INSERT INTO process (id, name, process_id) -VALUES ((SELECT - nextval('calamus_seq')), 'Deploy', 'io.trygvis.calamus.Deploy'); - -INSERT INTO process_trigger (id, process, mvel) -VALUES ((SELECT - nextval('calamus_seq')), - (SELECT - id - FROM process - WHERE process_id = 'io.trygvis.calamus.Deploy'), - 'artifact.groupId == "demo"'); diff --git a/calamus-engine/src/main/resources/logback.xml b/calamus-engine/src/main/resources/logback.xml index 46502f3..328f104 100644 --- a/calamus-engine/src/main/resources/logback.xml +++ b/calamus-engine/src/main/resources/logback.xml @@ -6,10 +6,13 @@ </encoder> </appender> + <logger name="bitronix" level="INFO"/> + <logger name="com.googlecode.flyway" level="DEBUG"/> + <logger name="org.apache.activemq" level="INFO"/> <logger name="org.hibernate.hql.internal" level="INFO"/> - <logger name="com.googlecode.flyway" level="INFO"/> - <logger name="org.hibernate.type" level="INFO"/> <logger name="org.hibernate.id" level="INFO"/> + <logger name="org.hibernate.type" level="INFO"/> + <logger name="org.springframework.jdbc" level="INFO"/> <root level="DEBUG"> <appender-ref ref="CONSOLE"/> diff --git a/calamus-engine/src/test/java/io/trygvis/engine/MyTest.java b/calamus-engine/src/test/java/io/trygvis/calamus/engine/MyTest.java index 8c170ea..f6cb4c5 100644 --- a/calamus-engine/src/test/java/io/trygvis/engine/MyTest.java +++ b/calamus-engine/src/test/java/io/trygvis/calamus/engine/MyTest.java @@ -1,25 +1,8 @@ -package io.trygvis.engine; +package io.trygvis.calamus.engine; -import bitronix.tm.TransactionManagerServices; -import bitronix.tm.resource.jdbc.PoolingDataSource; -import org.jbpm.bpmn2.handler.ServiceTaskHandler; -import org.jbpm.process.audit.AuditLoggerFactory; -import org.junit.Before; import org.junit.Test; -import org.kie.api.KieBase; -import org.kie.api.definition.process.Process; -import org.kie.api.runtime.Environment; -import org.kie.api.runtime.EnvironmentName; import org.kie.api.runtime.KieSession; -import org.kie.api.runtime.process.ProcessInstance; -import org.kie.internal.KnowledgeBaseFactory; -import org.kie.internal.io.ResourceFactory; -import org.kie.internal.persistence.jpa.JPAKnowledgeService; import org.kie.internal.runtime.StatefulKnowledgeSession; -import org.kie.internal.utils.KieHelper; - -import javax.persistence.EntityManagerFactory; -import javax.persistence.Persistence; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; |