├── modules
├── core
│ ├── db
│ │ ├── init
│ │ │ ├── hsql
│ │ │ │ ├── 30.create-db.sql
│ │ │ │ └── activiti.identity.create-db.sql
│ │ │ ├── mssql
│ │ │ │ ├── 30.create-db.sql
│ │ │ │ └── activiti.identity.create-db.sql
│ │ │ ├── mysql
│ │ │ │ ├── 30.create-db.sql
│ │ │ │ └── activiti.identity.create-db.sql
│ │ │ ├── oracle
│ │ │ │ ├── 30.create-db.sql
│ │ │ │ └── activiti.identity.create-db.sql
│ │ │ └── postgres
│ │ │ │ ├── 30.create-db.sql
│ │ │ │ └── activiti.identity.create-db.sql
│ │ └── update
│ │ │ ├── hsql
│ │ │ ├── 16
│ │ │ │ ├── 160430-activiti.hsql.upgradestep.51801.to.52000.engine.sql
│ │ │ │ ├── 160430-activiti.hsql.upgradestep.52000.to.52001.engine.sql
│ │ │ │ ├── 160429-createStencilSetIndexes.sql
│ │ │ │ ├── 160430-activiti.hsql.upgradestep.52001.to.52002.engine.sql
│ │ │ │ ├── 160428-createStencilSetTable.sql
│ │ │ │ └── 160430-activiti.hsql.upgradestep.51800.to.51801.engine.sql
│ │ │ ├── 17
│ │ │ │ ├── 170916-updateExistingDeploymentDate.sql
│ │ │ │ ├── 170915-addDeploymentDateToProcDefinition.sql
│ │ │ │ ├── 171226-addEntityIdToProcInstance.sql
│ │ │ │ └── 171012-alterUniqueIndexes.sql
│ │ │ └── 18
│ │ │ │ ├── 180111-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ │ └── 180116-addEntityIdToProcInstance.sql
│ │ │ ├── mssql
│ │ │ ├── 16
│ │ │ │ ├── 160430-activiti.mssql.upgradestep.51702.to.51800.engine.sql
│ │ │ │ ├── 160430-activiti.mssql.upgradestep.51702.to.51800.history.sql
│ │ │ │ ├── 160430-activiti.mssql.upgradestep.51801.to.52000.engine.sql
│ │ │ │ ├── 160430-activiti.mssql.upgradestep.52000.to.52001.engine.sql
│ │ │ │ ├── 160429-createStencilSetIndexes.sql
│ │ │ │ ├── 160430-activiti.mssql.upgradestep.52001.to.52002.engine.sql
│ │ │ │ ├── 160428-createStencilSetTable.sql
│ │ │ │ └── 160430-activiti.mssql.upgradestep.51800.to.51801.engine.sql
│ │ │ ├── 17
│ │ │ │ ├── 170916-updateExistingDeploymentDate.sql
│ │ │ │ ├── 170915-addDeploymentDateToProcDefinition.sql
│ │ │ │ └── 171226-addEntityIdToProcInstance.sql
│ │ │ └── 18
│ │ │ │ ├── 180116-addEntityIdToProcInstance.sql
│ │ │ │ ├── 180111-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ │ └── 180115-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ ├── mysql
│ │ │ ├── 16
│ │ │ │ ├── 160430-activiti.mysql.upgradestep.51702.to.51800.engine.sql
│ │ │ │ ├── 160430-activiti.mysql.upgradestep.51702.to.51800.history.sql
│ │ │ │ ├── 160430-activiti.mysql.upgradestep.52000.to.52001.engine.sql
│ │ │ │ ├── 160429-createStencilSetIndexes.sql
│ │ │ │ ├── 160430-activiti.mysql.upgradestep.51801.to.52000.engine.sql
│ │ │ │ ├── 160430-activiti.mysql.upgradestep.52001.to.52002.engine.sql
│ │ │ │ ├── 160428-createStencilSetTable.sql
│ │ │ │ └── 160430-activiti.mysql.upgradestep.51800.to.51801.engine.sql
│ │ │ ├── 17
│ │ │ │ ├── 170916-updateExistingDeploymentDate.sql
│ │ │ │ ├── 170915-addDeploymentDateToProcDefinition.sql
│ │ │ │ └── 171226-addEntityIdToProcInstance.sql
│ │ │ └── 18
│ │ │ │ ├── 180116-addEntityIdToProcInstance.sql
│ │ │ │ ├── 180111-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ │ └── 180115-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ ├── oracle
│ │ │ ├── 16
│ │ │ │ ├── 160430-activiti.oracle.upgradestep.51702.to.51800.history.sql
│ │ │ │ ├── 160430-activiti.oracle.upgradestep.51702.to.51800.engine.sql
│ │ │ │ ├── 160430-activiti.oracle.upgradestep.51801.to.52000.engine.sql
│ │ │ │ ├── 160430-activiti.oracle.upgradestep.52000.to.52001.engine.sql
│ │ │ │ ├── 160429-createStencilSetIndexes.sql
│ │ │ │ ├── 160430-activiti.oracle.upgradestep.52001.to.52002.engine.sql
│ │ │ │ ├── 160428-createStencilSetTable.sql
│ │ │ │ └── 160430-activiti.oracle.upgradestep.51800.to.51801.engine.sql
│ │ │ ├── 17
│ │ │ │ ├── 170916-updateExistingDeploymentDate.sql
│ │ │ │ ├── 170915-addDeploymentDateToProcDefinition.sql
│ │ │ │ └── 171226-addEntityIdToProcInstance.sql
│ │ │ └── 18
│ │ │ │ ├── 180111-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180111-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ │ ├── 180115-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ │ └── 180116-addEntityIdToProcInstance.sql
│ │ │ └── postgres
│ │ │ ├── 16
│ │ │ ├── 160430-activiti.postgres.upgradestep.51702.to.51800.engine.sql
│ │ │ ├── 160430-activiti.postgres.upgradestep.51702.to.51800.history.sql
│ │ │ ├── 160430-activiti.postgres.upgradestep.51801.to.52000.engine.sql
│ │ │ ├── 160430-activiti.postgres.upgradestep.52000.to.52001.engine.sql
│ │ │ ├── 160429-createStencilSetIndexes.sql
│ │ │ ├── 160430-activiti.postgres.upgradestep.52001.to.52002.engine.sql
│ │ │ ├── 160428-createStencilSetTable.sql
│ │ │ └── 160430-activiti.postgres.upgradestep.51800.to.51801.engine.sql
│ │ │ ├── 17
│ │ │ ├── 170916-updateExistingDeploymentDate.sql
│ │ │ ├── 170915-addDeploymentDateToProcDefinition.sql
│ │ │ └── 171226-addEntityIdToProcInstance.sql
│ │ │ ├── 18
│ │ │ ├── 180111-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ ├── 180115-removeIntEntityIdColumnsFromProcInstance.sql
│ │ │ ├── 180111-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ ├── 180111-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ ├── 180115-removeLongEntityIdColumnsFromProcInstance.sql
│ │ │ ├── 180115-removeStringEntityIdColumnsFromProcInstance.sql
│ │ │ └── 180116-addEntityIdToProcInstance.sql
│ │ │ └── 150319-0855-2-updateProcDefinition.sql
│ ├── src
│ │ └── com
│ │ │ └── haulmont
│ │ │ └── bpm
│ │ │ ├── core
│ │ │ ├── messages.properties
│ │ │ ├── jmx
│ │ │ │ ├── MessagesCacheMBean.java
│ │ │ │ └── MessagesCache.java
│ │ │ ├── engine
│ │ │ │ └── impl
│ │ │ │ │ └── db
│ │ │ │ │ ├── ExtDbSqlSessionFactory.java
│ │ │ │ │ └── ExtDbSqlSession.java
│ │ │ ├── ProcessMigrator.java
│ │ │ ├── StencilsBeansMetadata.java
│ │ │ ├── jsonconverter
│ │ │ │ └── CubaBpmnJsonConverter.java
│ │ │ ├── ProcessVariablesManager.java
│ │ │ └── ExtensionElementsManager.java
│ │ │ ├── app.properties
│ │ │ └── service
│ │ │ ├── ProcessRepositoryServiceBean.java
│ │ │ └── ProcessFormServiceBean.java
│ └── test
│ │ └── com
│ │ └── haulmont
│ │ └── bpm
│ │ ├── test-app.properties
│ │ ├── test-spring.xml
│ │ └── process
│ │ ├── deploymentTest1.bpmn20.xml
│ │ ├── deploymentTest2.bpmn20.xml
│ │ ├── deploymentTest3.bpmn20.xml
│ │ ├── migrationTest1.bpmn20.xml
│ │ ├── migrationTest2.bpmn20.xml
│ │ └── testAutomaticProcActorCreation.bpmn20.xml
├── gui
│ └── src
│ │ └── com
│ │ └── haulmont
│ │ └── bpm
│ │ ├── gui
│ │ ├── messages.properties
│ │ ├── form
│ │ │ ├── generic
│ │ │ │ ├── messages.properties
│ │ │ │ ├── fieldgenerator
│ │ │ │ │ ├── messages.properties
│ │ │ │ │ ├── messages_ru.properties
│ │ │ │ │ ├── FormFieldGenerator.java
│ │ │ │ │ ├── StringFieldGenerator.java
│ │ │ │ │ ├── BooleanFieldGenerator.java
│ │ │ │ │ ├── DateTimeFieldGenerator.java
│ │ │ │ │ ├── DateFieldGenerator.java
│ │ │ │ │ ├── IntegerFieldGenerator.java
│ │ │ │ │ ├── LongFieldGenerator.java
│ │ │ │ │ ├── BigDecimalFieldGenerator.java
│ │ │ │ │ └── FormFieldGeneratorsFactory.java
│ │ │ │ └── generic-proc-form.xml
│ │ │ ├── standard
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_ru.properties
│ │ │ ├── ProcForm.java
│ │ │ └── AbstractProcForm.java
│ │ ├── procactor
│ │ │ ├── messages.properties
│ │ │ ├── messages_ru.properties
│ │ │ └── ProcActorEdit.java
│ │ ├── procattachment
│ │ │ ├── messages.properties
│ │ │ ├── messages_ru.properties
│ │ │ └── ProcAttachmentEdit.java
│ │ ├── procattachmenttype
│ │ │ ├── messages.properties
│ │ │ ├── messages_ru.properties
│ │ │ ├── ProcAttachmentTypeBrowse.java
│ │ │ ├── ProcAttachmentTypeEdit.java
│ │ │ └── proc-attachment-type-edit.xml
│ │ ├── action
│ │ │ ├── messages_ru.properties
│ │ │ └── messages.properties
│ │ ├── proctask
│ │ │ ├── ProcTaskEdit.java
│ │ │ ├── messages_ru.properties
│ │ │ ├── messages.properties
│ │ │ ├── ProcTasksFrame.java
│ │ │ ├── proc-task-edit.xml
│ │ │ └── proc-tasks-frame.xml
│ │ ├── procactions
│ │ │ ├── messages_ru.properties
│ │ │ ├── messages.properties
│ │ │ └── proc-actions-frame.xml
│ │ ├── procactionsfragment
│ │ │ ├── messages_ru.properties
│ │ │ ├── messages.properties
│ │ │ └── proc-actions-fragment.xml
│ │ ├── procmodel
│ │ │ ├── messages_ru.properties
│ │ │ ├── messages.properties
│ │ │ └── proc-model-edit.xml
│ │ ├── stencilset
│ │ │ ├── messages.properties
│ │ │ ├── frame
│ │ │ │ ├── AbstractStencilFrame.java
│ │ │ │ ├── GroupStencilFrame.java
│ │ │ │ ├── group-stencil-frame.xml
│ │ │ │ └── standard-stencil-frame.xml
│ │ │ └── messages_ru.properties
│ │ ├── procdefinition
│ │ │ ├── messages.properties
│ │ │ ├── messages_ru.properties
│ │ │ ├── proc-definition-deploy.xml
│ │ │ └── ProcDefinitionEdit.java
│ │ └── procinstance
│ │ │ ├── messages.properties
│ │ │ └── messages_ru.properties
│ │ └── forms.xml
├── web
│ └── src
│ │ └── com
│ │ └── haulmont
│ │ └── bpm
│ │ ├── web-permissions.xml
│ │ ├── web
│ │ ├── ui
│ │ │ └── procmodel
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_ru.properties
│ │ ├── exceptions
│ │ │ ├── messages.properties
│ │ │ ├── messages_ru.properties
│ │ │ └── EmptyModelExceptionHandler.java
│ │ ├── messages.properties
│ │ ├── messages_ru.properties
│ │ ├── controller
│ │ │ ├── BpmControllerUtils.java
│ │ │ ├── StencilSetController.java
│ │ │ ├── FormController.java
│ │ │ ├── LocalesController.java
│ │ │ └── BpmFileDownloadController.java
│ │ └── initializer
│ │ │ └── BpmInitializer.java
│ │ ├── web-screens.xml
│ │ ├── dispatcher-spring.xml
│ │ └── web-menu.xml
└── global
│ └── src
│ └── com
│ └── haulmont
│ └── bpm
│ ├── entity
│ ├── stencil
│ │ ├── GroupStencil.java
│ │ ├── StandardStencil.java
│ │ ├── messages.properties
│ │ └── messages_ru.properties
│ ├── ProcAttachmentType.java
│ ├── StencilSet.java
│ └── ProcModel.java
│ ├── bom.properties
│ ├── exception
│ ├── InvalidModelException.java
│ └── BpmException.java
│ ├── BpmConstants.java
│ ├── metadata.xml
│ ├── config
│ └── BpmConfig.java
│ ├── credits.xml
│ ├── service
│ ├── ProcessRepositoryService.java
│ ├── ProcessFormService.java
│ ├── StencilSetService.java
│ ├── ProcessMessagesService.java
│ ├── ProcessRuntimeService.java
│ ├── ModelService.java
│ └── ProcessVariablesService.java
│ ├── persistence.xml
│ └── rest
│ └── RestModel.java
├── .gitattributes
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── codestyle
├── exclude-filter.xml
└── pmd-ruleset.xml
├── .github
└── issue_template.md
├── .travis.yml
├── settings.gradle
└── README.md
/modules/core/db/init/hsql/30.create-db.sql:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/modules/core/db/init/mssql/30.create-db.sql:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/modules/core/db/init/mysql/30.create-db.sql:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/modules/core/db/init/oracle/30.create-db.sql:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/modules/core/db/init/postgres/30.create-db.sql:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text eol=auto
2 |
3 | *.png binary
4 | *.ico binary
5 | *.jar binary
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cuba-platform/bpm/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/17/170916-updateExistingDeploymentDate.sql:
--------------------------------------------------------------------------------
1 | update BPM_PROC_DEFINITION set DEPLOYMENT_DATE = UPDATE_TS^
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/17/170916-updateExistingDeploymentDate.sql:
--------------------------------------------------------------------------------
1 | update BPM_PROC_DEFINITION set DEPLOYMENT_DATE = UPDATE_TS^
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/17/170916-updateExistingDeploymentDate.sql:
--------------------------------------------------------------------------------
1 | update BPM_PROC_DEFINITION set DEPLOYMENT_DATE = UPDATE_TS^
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/17/170916-updateExistingDeploymentDate.sql:
--------------------------------------------------------------------------------
1 | update BPM_PROC_DEFINITION set DEPLOYMENT_DATE = UPDATE_TS^
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/17/170916-updateExistingDeploymentDate.sql:
--------------------------------------------------------------------------------
1 | update BPM_PROC_DEFINITION set DEPLOYMENT_DATE = UPDATE_TS^
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/17/170915-addDeploymentDateToProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add DEPLOYMENT_DATE timestamp^
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/17/170915-addDeploymentDateToProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add DEPLOYMENT_DATE datetime^
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/150319-0855-2-updateProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add column ACTIVE boolean ^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/18/180111-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column INT_ENTITY_ID^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/17/170915-addDeploymentDateToProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add DEPLOYMENT_DATE datetime(3)^
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/17/170915-addDeploymentDateToProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add DEPLOYMENT_DATE timestamp^
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/17/170915-addDeploymentDateToProcDefinition.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_DEFINITION add DEPLOYMENT_DATE timestamp^
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/18/180111-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column LONG_ENTITY_ID^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/18/180111-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column STRING_ENTITY_ID^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180111-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists INT_ENTITY_ID cascade ;
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180115-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists INT_ENTITY_ID cascade ;
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180111-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists LONG_ENTITY_ID cascade ;
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180111-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists STRING_ENTITY_ID cascade ;
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180115-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists LONG_ENTITY_ID cascade ;
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180115-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE drop column if exists STRING_ENTITY_ID cascade ;
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160430-activiti.hsql.upgradestep.51801.to.52000.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160430-activiti.hsql.upgradestep.52000.to.52001.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.1' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.51702.to.51800.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.51702.to.51800.history.sql:
--------------------------------------------------------------------------------
1 | create index ACT_IDX_HI_TASK_INST_PROCINST on ACT_HI_TASKINST(PROC_INST_ID_)^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.51801.to.52000.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.52000.to.52001.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.1' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.51702.to.51800.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.51702.to.51800.history.sql:
--------------------------------------------------------------------------------
1 | create index ACT_IDX_HI_TASK_INST_PROCINST on ACT_HI_TASKINST(PROC_INST_ID_)^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.52000.to.52001.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.1' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.51702.to.51800.history.sql:
--------------------------------------------------------------------------------
1 | create index ACT_IDX_HI_TASK_INST_PROCINST on ACT_HI_TASKINST(PROC_INST_ID_)^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.51702.to.51800.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.0' where NAME_ = 'schema.version'^
2 |
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.51801.to.52000.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.52000.to.52001.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.1' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.51702.to.51800.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.51702.to.51800.history.sql:
--------------------------------------------------------------------------------
1 | create index ACT_IDX_HI_TASK_INST_PROCINST on ACT_HI_TASKINST(PROC_INST_ID_)^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.51801.to.52000.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.0' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.52000.to.52001.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.1' where NAME_ = 'schema.version'^
2 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160429-createStencilSetIndexes.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create unique index IDX_BPM_STENCIL_SET_UNIQ_NAME on BPM_STENCIL_SET (NAME) ^
3 | -- end BPM_STENCIL_SET
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160429-createStencilSetIndexes.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create unique index IDX_BPM_STENCIL_SET_UNIQ_NAME on BPM_STENCIL_SET (NAME, DELETE_TS) ^
3 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160429-createStencilSetIndexes.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create unique index IDX_BPM_STENCIL_SET_UK_NAME on BPM_STENCIL_SET (NAME, DELETE_TS) ^
3 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160429-createStencilSetIndexes.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create unique index IDX_BPM_STENCIL_SET_UNIQ_NAME on BPM_STENCIL_SET (NAME, DELETE_TS) ^
3 | -- end BPM_STENCIL_SET
4 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | .idea
3 | out
4 | *.iml
5 | *.ipr
6 | *.iws
7 | *.ids
8 |
9 | build/
10 | classes/
11 |
12 | modules/core/build/*
13 | modules/global/build/*
14 | modules/gui/build/*
15 | modules/web/build/*
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160429-createStencilSetIndexes.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create unique index IDX_BPM_STENCIL_SET_UNIQ_NAME on BPM_STENCIL_SET (NAME) where DELETE_TS is null ^
3 | -- end BPM_STENCIL_SET
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180111-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column INT_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180111-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column LONG_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180115-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column INT_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180115-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column LONG_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180111-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column STRING_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180115-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | BEGIN
2 | EXECUTE IMMEDIATE 'alter table BPM_PROC_INSTANCE drop column STRING_ENTITY_ID';
3 | EXCEPTION
4 | WHEN OTHERS THEN
5 | NULL;
6 | END;
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/17/171226-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/18/180116-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/17/171226-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180116-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/17/171226-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180116-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/17/171226-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar2(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID number^
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/18/180116-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar2(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID number^
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/17/171226-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/18/180116-addEntityIdToProcInstance.sql:
--------------------------------------------------------------------------------
1 | alter table BPM_PROC_INSTANCE add STRING_ENTITY_ID varchar(255)^
2 | alter table BPM_PROC_INSTANCE add INT_ENTITY_ID integer^
3 | alter table BPM_PROC_INSTANCE add LONG_ENTITY_ID bigint^
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180111-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'INT_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN int_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180115-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'INT_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN int_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180111-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'LONG_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN long_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180115-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'LONG_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN long_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180111-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'STRING_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN string_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/18/180115-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | if exists (select * FROM sys.objects o INNER JOIN sys.columns c ON o.object_id = c.object_id WHERE o.name = 'BPM_PROC_INSTANCE' AND c.name = 'STRING_ENTITY_ID')
2 | ALTER TABLE bpm_proc_instance DROP COLUMN string_entity_id^
3 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.51801.to.52000.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.0' where NAME_ = 'schema.version'^
2 |
3 | alter table ACT_RE_DEPLOYMENT modify DEPLOY_TIME_ timestamp(3) NULL^
4 |
5 | alter table ACT_RU_TASK modify CREATE_TIME_ timestamp(3) NULL^
6 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.52001.to.52002.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_RU_EVENT_SUBSCR set PROC_DEF_ID_ = CONFIGURATION_ where EVENT_TYPE_ = 'message' and PROC_INST_ID_ is null and EXECUTION_ID_ is null^
2 |
3 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.2' where NAME_ = 'schema.version'^
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160430-activiti.hsql.upgradestep.52001.to.52002.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_RU_EVENT_SUBSCR set PROC_DEF_ID_ = CONFIGURATION_ where EVENT_TYPE_ = 'message' and PROC_INST_ID_ is null and EXECUTION_ID_ is null^
2 |
3 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.2' where NAME_ = 'schema.version'^
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.52001.to.52002.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_RU_EVENT_SUBSCR set PROC_DEF_ID_ = CONFIGURATION_ where EVENT_TYPE_ = 'message' and PROC_INST_ID_ is null and EXECUTION_ID_ is null^
2 |
3 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.2' where NAME_ = 'schema.version'^
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.52001.to.52002.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_RU_EVENT_SUBSCR set PROC_DEF_ID_ = CONFIGURATION_ where EVENT_TYPE_ = 'message' and PROC_INST_ID_ is null and EXECUTION_ID_ is null^
2 |
3 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.2' where NAME_ = 'schema.version'^
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.52001.to.52002.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_RU_EVENT_SUBSCR set PROC_DEF_ID_ = CONFIGURATION_ where EVENT_TYPE_ = 'message' and PROC_INST_ID_ is null and EXECUTION_ID_ is null^
2 |
3 | update ACT_GE_PROPERTY set VALUE_ = '5.20.0.2' where NAME_ = 'schema.version'^
4 |
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/17/171012-alterUniqueIndexes.sql:
--------------------------------------------------------------------------------
1 | drop index IDX_BPM_PROC_MODEL_UNIQ_NAME if exists;
2 | create unique index IDX_BPM_PROC_MODEL_UNIQ_NAME on BPM_PROC_MODEL (NAME, DELETE_TS);
3 | drop index IDX_BPM_STENCIL_SET_UNIQ_NAME if exists;
4 | create unique index IDX_BPM_STENCIL_SET_UNIQ_NAME on BPM_STENCIL_SET (NAME, DELETE_TS);
--------------------------------------------------------------------------------
/codestyle/exclude-filter.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180111-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'INT_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN INT_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180115-removeIntEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'INT_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN INT_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180111-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'LONG_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN LONG_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180115-removeLongEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'LONG_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN LONG_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180111-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'STRING_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN STRING_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/18/180115-removeStringEntityIdColumnsFromProcInstance.sql:
--------------------------------------------------------------------------------
1 | CREATE PROCEDURE cuba_drop_column_if_exists() BEGIN
2 | IF EXISTS ( SELECT * FROM information_schema.columns WHERE table_name = 'BPM_PROC_INSTANCE' AND column_name = 'STRING_ENTITY_ID' AND table_schema = DATABASE() )
3 | then
4 | ALTER TABLE BPM_PROC_INSTANCE DROP COLUMN STRING_ENTITY_ID;
5 | end if;
6 | end;
7 | CALL cuba_drop_column_if_exists();
8 | DROP PROCEDURE cuba_drop_column_if_exists;
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160428-createStencilSetTable.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create table BPM_STENCIL_SET (
3 | ID varchar(36),
4 | CREATE_TS timestamp,
5 | CREATED_BY varchar(50),
6 | VERSION integer,
7 | UPDATE_TS timestamp,
8 | UPDATED_BY varchar(50),
9 | DELETE_TS timestamp,
10 | DELETED_BY varchar(50),
11 | --
12 | NAME varchar(255) not null,
13 | JSON_DATA longvarchar not null,
14 | --
15 | primary key (ID)
16 | )^
17 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160428-createStencilSetTable.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create table BPM_STENCIL_SET (
3 | ID varchar2(32),
4 | CREATE_TS timestamp,
5 | CREATED_BY varchar2(50),
6 | VERSION integer,
7 | UPDATE_TS timestamp,
8 | UPDATED_BY varchar2(50),
9 | DELETE_TS timestamp,
10 | DELETED_BY varchar2(50),
11 | --
12 | NAME varchar2(255) not null,
13 | JSON_DATA clob not null,
14 | --
15 | primary key (ID)
16 | )^
17 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160428-createStencilSetTable.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create table BPM_STENCIL_SET (
3 | ID uuid,
4 | CREATE_TS timestamp,
5 | CREATED_BY varchar(50),
6 | VERSION integer,
7 | UPDATE_TS timestamp,
8 | UPDATED_BY varchar(50),
9 | DELETE_TS timestamp,
10 | DELETED_BY varchar(50),
11 | --
12 | NAME varchar(255) not null,
13 | JSON_DATA text not null,
14 | --
15 | primary key (ID)
16 | )^
17 | -- end BPM_STENCIL_SET
18 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160428-createStencilSetTable.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create table BPM_STENCIL_SET (
3 | ID uniqueidentifier,
4 | CREATE_TS datetime,
5 | CREATED_BY varchar(50),
6 | VERSION integer,
7 | UPDATE_TS datetime,
8 | UPDATED_BY varchar(50),
9 | DELETE_TS datetime,
10 | DELETED_BY varchar(50),
11 | --
12 | NAME varchar(255) not null,
13 | JSON_DATA varchar(max) not null,
14 | --
15 | primary key (ID)
16 | )^
17 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160428-createStencilSetTable.sql:
--------------------------------------------------------------------------------
1 | -- begin BPM_STENCIL_SET
2 | create table BPM_STENCIL_SET (
3 | ID varchar(32),
4 | CREATE_TS datetime(3),
5 | CREATED_BY varchar(50),
6 | VERSION integer,
7 | UPDATE_TS datetime(3),
8 | UPDATED_BY varchar(50),
9 | DELETE_TS datetime(3),
10 | DELETED_BY varchar(50),
11 | --
12 | NAME varchar(255) not null,
13 | JSON_DATA longtext not null,
14 | --
15 | primary key (ID)
16 | )^
17 | -- end BPM_STENCIL_SET
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | standardProcForm = Standard form
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | caption = Process form
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | fillField = Fill field %s
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | fillField=Заполните поле %s
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web-permissions.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | cancelProcess = Cancel process
18 | completeTask = Complete task
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactor/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Proc Actor Browse
18 | editCaption = Proc Actor Edit
--------------------------------------------------------------------------------
/.github/issue_template.md:
--------------------------------------------------------------------------------
1 |
7 |
8 | ### Environment
9 |
10 | - Platform version: X.Y.Z
11 |
12 | - Client type:
13 | - Browser:
14 | - Database:
15 | - Operating system:
16 |
17 | ### Description of the bug or enhancement
18 |
19 | - Minimal reproducible example
20 | - Expected behavior
21 | - Actual behavior
22 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: java
2 | jdk: openjdk8
3 |
4 | before_install:
5 | - git clone https://github.com/cuba-platform/cuba-gradle-plugin.git $TRAVIS_BUILD_DIR/../cuba-gradle-plugin
6 | - git clone https://github.com/cuba-platform/cuba.git $TRAVIS_BUILD_DIR/../cuba
7 | - (cd $TRAVIS_BUILD_DIR/../cuba-gradle-plugin && chmod +x ./gradlew && ./gradlew --no-daemon install)
8 | - (cd $TRAVIS_BUILD_DIR/../cuba && chmod +x ./gradlew && ./gradlew --no-daemon install)
9 | - chmod +x ./gradlew
10 |
11 | install:
12 | - ./gradlew --no-daemon assemble
13 |
14 | script:
15 | - ./gradlew --no-daemon test javadoc
16 |
17 | cache:
18 | directories:
19 | - $HOME/.gradle/caches/
20 | - $HOME/.gradle/wrapper/
21 |
22 | addons:
23 | apt:
24 | packages:
25 | - openjdk-8-jdk
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactor/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Участники процесса
18 | editCaption=Редактирование участника
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachment/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | ProcAttachmentEdit.caption = Process Attachment Edit
18 | upload = Upload
19 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachment/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | ProcAttachmentEdit.caption=Редактирование вложения
18 | upload=Загрузить
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachmenttype/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Attachment Types
18 | editCaption = Attachment Type Edit
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachmenttype/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Типы вложений
18 | editCaption=Редактирование типа вложения
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/ui/procmodel/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | procModelerLink = Process Modeler Link
18 | linkHtml = Click to open
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/exceptions/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | emptyModel.msg=Model is empty. Deployment is impossible
18 | missingLinking.msg=Some model elements are not linked
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/exceptions/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | emptyModel.msg=Невозможно развернуть пустую модель
18 | missingLinking.msg=Некоторые элементы модели не соединены
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/ui/procmodel/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | procModelerLink = Ссылка на редактор процесса
18 | linkHtml = Нажмите, чтобы открыть
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/test-app.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | cuba.springContextConfig=\
18 | com/haulmont/cuba/spring.xml \
19 | com/haulmont/bpm/spring.xml \
20 | com/haulmont/bpm/test-spring.xml
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/jmx/MessagesCacheMBean.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core.jmx;
18 |
19 | public interface MessagesCacheMBean {
20 | void clearCaches();
21 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/standard/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | attachments = Attachments
18 | caption = Complete task
19 | fillComment = Fill comment
20 | procActors = Process actors
21 | comment = Comment
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/standard/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | attachments=Вложения
18 | caption=Завершение задачи
19 | fillComment=Заполните комментарий
20 | procActors=Участники
21 | comment=Комментарий
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/action/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | startProcess=Запуск процесса
18 | cancelProcess=Отмена процесса
19 | claimTask=Забрать задачу
20 | claimTaskDialogTitle=Подтверждение
21 | claimTaskDialogMsg=Забрать задачу?
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web-screens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/action/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | startProcess = Start process
18 | cancelProcess = Cancel process
19 | claimTask = Claim task
20 | claimTaskDialogTitle = Confirmation
21 | claimTaskDialogMsg = Claim process task?
--------------------------------------------------------------------------------
/modules/core/db/update/hsql/16/160430-activiti.hsql.upgradestep.51800.to.51801.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.1' where NAME_ = 'schema.version'^
2 |
3 | create table ACT_PROCDEF_INFO (
4 | ID_ varchar(64) not null,
5 | PROC_DEF_ID_ varchar(64) not null,
6 | REV_ integer,
7 | INFO_JSON_ID_ varchar(64),
8 | primary key (ID_)
9 | )^
10 |
11 | create index ACT_IDX_INFO_PROCDEF on ACT_PROCDEF_INFO(PROC_DEF_ID_)^
12 |
13 | alter table ACT_PROCDEF_INFO
14 | add constraint ACT_FK_INFO_JSON_BA
15 | foreign key (INFO_JSON_ID_)
16 | references ACT_GE_BYTEARRAY (ID_)^
17 |
18 | alter table ACT_PROCDEF_INFO
19 | add constraint ACT_FK_INFO_PROCDEF
20 | foreign key (PROC_DEF_ID_)
21 | references ACT_RE_PROCDEF (ID_)^
22 |
23 | alter table ACT_PROCDEF_INFO
24 | add constraint ACT_UNIQ_INFO_PROCDEF
25 | unique (PROC_DEF_ID_)^
26 |
--------------------------------------------------------------------------------
/modules/core/db/update/mssql/16/160430-activiti.mssql.upgradestep.51800.to.51801.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.1' where NAME_ = 'schema.version'^
2 |
3 | create table ACT_PROCDEF_INFO (
4 | ID_ nvarchar(64) not null,
5 | PROC_DEF_ID_ nvarchar(64) not null,
6 | REV_ int,
7 | INFO_JSON_ID_ nvarchar(64),
8 | primary key (ID_)
9 | )^
10 |
11 | create index ACT_IDX_INFO_PROCDEF on ACT_PROCDEF_INFO(PROC_DEF_ID_)^
12 |
13 | alter table ACT_PROCDEF_INFO
14 | add constraint ACT_FK_INFO_JSON_BA
15 | foreign key (INFO_JSON_ID_)
16 | references ACT_GE_BYTEARRAY (ID_)^
17 |
18 | alter table ACT_PROCDEF_INFO
19 | add constraint ACT_FK_INFO_PROCDEF
20 | foreign key (PROC_DEF_ID_)
21 | references ACT_RE_PROCDEF (ID_)^
22 |
23 | alter table ACT_PROCDEF_INFO
24 | add constraint ACT_UNIQ_INFO_PROCDEF
25 | unique (PROC_DEF_ID_)^
26 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/stencil/GroupStencil.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.entity.stencil;
18 |
19 | import com.haulmont.chile.core.annotations.MetaClass;
20 |
21 | @MetaClass(name = "bpm$GroupStencil")
22 | public class GroupStencil extends Stencil {
23 | }
24 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachmenttype/ProcAttachmentTypeBrowse.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.procattachmenttype;
18 |
19 | import com.haulmont.cuba.gui.components.AbstractLookup;
20 |
21 | public class ProcAttachmentTypeBrowse extends AbstractLookup {
22 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/stencil/StandardStencil.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.entity.stencil;
18 |
19 | import com.haulmont.chile.core.annotations.MetaClass;
20 |
21 | @MetaClass(name = "bpm$StandardStencil")
22 | public class StandardStencil extends Stencil {
23 | }
24 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/ProcTaskEdit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.proctask;
18 |
19 | import com.haulmont.cuba.gui.components.AbstractEditor;
20 | import com.haulmont.bpm.entity.ProcTask;
21 |
22 | public class ProcTaskEdit extends AbstractEditor {
23 | }
--------------------------------------------------------------------------------
/modules/core/db/update/mysql/16/160430-activiti.mysql.upgradestep.51800.to.51801.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.1' where NAME_ = 'schema.version'^
2 |
3 | create table ACT_PROCDEF_INFO (
4 | ID_ varchar(64) not null,
5 | PROC_DEF_ID_ varchar(64) not null,
6 | REV_ integer,
7 | INFO_JSON_ID_ varchar(64),
8 | primary key (ID_)
9 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin^
10 |
11 | create index ACT_IDX_INFO_PROCDEF on ACT_PROCDEF_INFO(PROC_DEF_ID_)^
12 |
13 | alter table ACT_PROCDEF_INFO
14 | add constraint ACT_FK_INFO_JSON_BA
15 | foreign key (INFO_JSON_ID_)
16 | references ACT_GE_BYTEARRAY (ID_)^
17 |
18 | alter table ACT_PROCDEF_INFO
19 | add constraint ACT_FK_INFO_PROCDEF
20 | foreign key (PROC_DEF_ID_)
21 | references ACT_RE_PROCDEF (ID_)^
22 |
23 | alter table ACT_PROCDEF_INFO
24 | add constraint ACT_UNIQ_INFO_PROCDEF
25 | unique (PROC_DEF_ID_)^
26 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactor/ProcActorEdit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.procactor;
18 |
19 | import com.haulmont.cuba.gui.components.AbstractEditor;
20 | import com.haulmont.bpm.entity.ProcActor;
21 |
22 | public class ProcActorEdit extends AbstractEditor {
23 | }
--------------------------------------------------------------------------------
/modules/core/db/update/postgres/16/160430-activiti.postgres.upgradestep.51800.to.51801.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.1' where NAME_ = 'schema.version'^
2 |
3 | create table ACT_PROCDEF_INFO (
4 | ID_ varchar(64) not null,
5 | PROC_DEF_ID_ varchar(64) not null,
6 | REV_ integer,
7 | INFO_JSON_ID_ varchar(64),
8 | primary key (ID_)
9 | )^
10 |
11 | create index ACT_IDX_PROCDEF_INFO_JSON on ACT_PROCDEF_INFO(INFO_JSON_ID_)^
12 | alter table ACT_PROCDEF_INFO
13 | add constraint ACT_FK_INFO_JSON_BA
14 | foreign key (INFO_JSON_ID_)
15 | references ACT_GE_BYTEARRAY (ID_)^
16 |
17 | create index ACT_IDX_PROCDEF_INFO_PROC on ACT_PROCDEF_INFO(PROC_DEF_ID_)^
18 | alter table ACT_PROCDEF_INFO
19 | add constraint ACT_FK_INFO_PROCDEF
20 | foreign key (PROC_DEF_ID_)
21 | references ACT_RE_PROCDEF (ID_)^
22 |
23 | alter table ACT_PROCDEF_INFO
24 | add constraint ACT_UNIQ_INFO_PROCDEF
25 | unique (PROC_DEF_ID_)^
26 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachment/ProcAttachmentEdit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.procattachment;
18 |
19 | import com.haulmont.bpm.entity.ProcAttachment;
20 | import com.haulmont.cuba.gui.components.AbstractEditor;
21 |
22 | public class ProcAttachmentEdit extends AbstractEditor {
23 | }
--------------------------------------------------------------------------------
/modules/core/db/update/oracle/16/160430-activiti.oracle.upgradestep.51800.to.51801.engine.sql:
--------------------------------------------------------------------------------
1 | update ACT_GE_PROPERTY set VALUE_ = '5.18.0.1' where NAME_ = 'schema.version'^
2 |
3 | create table ACT_PROCDEF_INFO (
4 | ID_ NVARCHAR2(64) not null,
5 | PROC_DEF_ID_ NVARCHAR2(64) not null,
6 | REV_ integer,
7 | INFO_JSON_ID_ NVARCHAR2(64),
8 | primary key (ID_)
9 | )^
10 |
11 | create index ACT_IDX_PROCDEF_INFO_JSON on ACT_PROCDEF_INFO(INFO_JSON_ID_)^
12 | alter table ACT_PROCDEF_INFO
13 | add constraint ACT_FK_INFO_JSON_BA
14 | foreign key (INFO_JSON_ID_)
15 | references ACT_GE_BYTEARRAY (ID_)^
16 |
17 | create index ACT_IDX_PROCDEF_INFO_PROC on ACT_PROCDEF_INFO(PROC_DEF_ID_)^
18 | alter table ACT_PROCDEF_INFO
19 | add constraint ACT_FK_INFO_PROCDEF
20 | foreign key (PROC_DEF_ID_)
21 | references ACT_RE_PROCDEF (ID_)^
22 |
23 | alter table ACT_PROCDEF_INFO
24 | add constraint ACT_UNIQ_INFO_PROCDEF
25 | unique (PROC_DEF_ID_)^
26 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachmenttype/ProcAttachmentTypeEdit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.procattachmenttype;
18 |
19 | import com.haulmont.cuba.gui.components.AbstractEditor;
20 | import com.haulmont.bpm.entity.ProcAttachmentType;
21 |
22 | public class ProcAttachmentTypeEdit extends AbstractEditor {
23 | }
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/dispatcher-spring.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/bom.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | org.activiti = 5.20.0
18 | org.activiti.modeler = 5.20.0.cuba.18
19 |
20 | org.activiti/activiti-engine = ${org.activiti}
21 | org.activiti/activiti-spring = ${org.activiti}
22 | org.activiti/activiti-json-converter = ${org.activiti.modeler}
23 | com.haulmont.bpm/cuba-modeler = ${org.activiti.modeler}
24 | org.codehaus.groovy/groovy-jsr223 = ${org.codehaus.groovy}
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2016 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | rootProject.name = 'bpm'
19 | include(':bpm-global', ':bpm-core', ':bpm-gui', ':bpm-web')
20 | project(':bpm-global').projectDir = new File(settingsDir, 'modules/global')
21 | project(':bpm-core').projectDir = new File(settingsDir, 'modules/core')
22 | project(':bpm-gui').projectDir = new File(settingsDir, 'modules/gui')
23 | project(':bpm-web').projectDir = new File(settingsDir, 'modules/web')
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Процессные задачи
18 | editCaption=Редактирование процессной задачи
19 | actions=Действия
20 | process=Процесс
21 | claimTask=Забрать задачу
22 | procTaskNotSelected=Задача не выбрана
23 | openProcInstance=Открыть экземпляр процесса
24 | caption=Процессные задачи
25 | openEntityEditor = Открыть редактор сущности
26 | taskName=Имя задачи
27 | assigned=Назначена
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/forms.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
25 |
26 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactions/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | actions=Действия
18 | noActionsAvailable=Нет доступных действий
19 | claimTask=Забрать задачу
20 | taskName=Имя задачи\:
21 | taskStartDate=Дата начала\:
22 | taskCandidates=Кандидаты
23 | viewCandidates=Просмотреть
24 | completeTask=Завершить задачу
25 | processStarted=Процесс запущен
26 | taskCompleted=Задача завершена
27 | taskClaimed=Задача взята
28 | processCancelled=Процесс отменён
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/engine/impl/db/ExtDbSqlSessionFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core.engine.impl.db;
18 |
19 | import org.activiti.engine.impl.db.DbSqlSessionFactory;
20 | import org.activiti.engine.impl.interceptor.Session;
21 |
22 | public class ExtDbSqlSessionFactory extends DbSqlSessionFactory {
23 | @Override
24 | public Session openSession() {
25 | return new ExtDbSqlSession(this);
26 | }
27 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactions/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | actions = Process actions
18 | noActionsAvailable = No actions available
19 | claimTask = Claim task
20 | taskName = Task name:
21 | taskStartDate = Task start date:
22 | taskCandidates = Candidates
23 | viewCandidates = View
24 | completeTask = Complete task
25 | processStarted=Process started
26 | taskCompleted=Task completed
27 | taskClaimed=Task claimed
28 | processCancelled=Process cancelled
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactionsfragment/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | actions=Действия
18 | noActionsAvailable=Нет доступных действий
19 | claimTask=Забрать задачу
20 | taskName=Имя задачи\:
21 | taskStartDate=Дата начала\:
22 | taskCandidates=Кандидаты
23 | viewCandidates=Просмотреть
24 | completeTask=Завершить задачу
25 | processStarted=Процесс запущен
26 | taskCompleted=Задача завершена
27 | taskClaimed=Задача взята
28 | processCancelled=Процесс отменён
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactionsfragment/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | actions = Process actions
18 | noActionsAvailable = No actions available
19 | claimTask = Claim task
20 | taskName = Task name:
21 | taskStartDate = Task start date:
22 | taskCandidates = Candidates
23 | viewCandidates = View
24 | completeTask = Complete task
25 | processStarted=Process started
26 | taskCompleted=Task completed
27 | taskClaimed=Task claimed
28 | processCancelled=Process cancelled
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/stencil/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | Stencil.stencilId=Stencil ID
18 | Stencil.title=Title
19 | Stencil.description=Description
20 | Stencil.parentGroup=Group
21 | ServiceTaskStencil.beanName=Bean name
22 | ServiceTaskStencil.methodName=Method name
23 | StencilMethodArg.propertyPackageTitle=Caption
24 | StencilMethodArg.simpleTypeName=Type
25 | StencilMethodArg.type=Type
26 | StencilMethodArg.defaultValue=Default value
27 | StencilMethodArg.stencil=Stencil
--------------------------------------------------------------------------------
/codestyle/pmd-ruleset.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
24 | Custom ruleset for PMD
25 |
26 |
27 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/stencil/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | Stencil.stencilId=ID элемента
18 | Stencil.title=Заголовок
19 | Stencil.description=Описание
20 | Stencil.parentGroup=Группа
21 | ServiceTaskStencil.beanName=Имя бина
22 | ServiceTaskStencil.methodName=Имя метода
23 | StencilMethodArg.propertyPackageTitle=Заголовок
24 | StencilMethodArg.simpleTypeName=Тип
25 | StencilMethodArg.type=Тип
26 | StencilMethodArg.defaultValue=Значение по умолчанию
27 | StencilMethodArg.stencil=Элемент
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 | @include=com.haulmont.bpm.gui
17 | menu-config.about = About
18 | menu-config.bpm$ProcDefinition.lookup = Process Definitions
19 | menu-config.bpm = BPM
20 | menu-config.bpm$ProcInstance.lookup = Process Instances
21 | menu-config.bpm$ProcTask.lookup = Process Tasks
22 | menu-config.bpm$ProcAttachmentType.lookup = Attachment Types
23 | menu-config.bpm$ProcModel.lookup = Process Models
24 | menu-config.stencilSetEditor = Model Elements Editor
25 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 | @include=com.haulmont.bpm.gui
17 | menu-config.about = О программе
18 | menu-config.bpm$ProcDefinition.lookup=Определения процесса
19 | menu-config.bpm = BPM
20 | menu-config.bpm$ProcInstance.lookup=Экземпляры процесса
21 | menu-config.bpm$ProcTask.lookup=Процессные задачи
22 | menu-config.bpm$ProcAttachmentType.lookup=Типы вложений
23 | menu-config.bpm$ProcModel.lookup=Модели процесса
24 | menu-config.stencilSetEditor = Редактор элементов модели
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/exception/InvalidModelException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.exception;
18 |
19 | import com.haulmont.cuba.core.global.SupportedByClient;
20 |
21 | @SupportedByClient
22 | public class InvalidModelException extends RuntimeException {
23 |
24 | public InvalidModelException(String message) {
25 | super(message);
26 | }
27 |
28 | public InvalidModelException(String message, Throwable cause) {
29 | super(message, cause);
30 | }
31 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Process Tasks
18 | editCaption = Process Task Edit
19 | actions = Actions
20 | process = Process
21 | claimTask = Claim task
22 | procTaskNotSelected = Process task not selected
23 | openProcInstance = Open process instance
24 | caption = Proc Tasks Frame
25 | openEntityEditor = Open entity editor
26 | metaClassNotFound = Meta class %s not found
27 | entityNotFound = Entity with id %s not found
28 | taskName=Task name
29 | assigned=Assigned
--------------------------------------------------------------------------------
/modules/core/db/init/hsql/activiti.identity.create-db.sql:
--------------------------------------------------------------------------------
1 | create table ACT_ID_GROUP (
2 | ID_ varchar(64),
3 | REV_ integer,
4 | NAME_ varchar(255),
5 | TYPE_ varchar(255),
6 | primary key (ID_)
7 | )^
8 |
9 | create table ACT_ID_MEMBERSHIP (
10 | USER_ID_ varchar(64),
11 | GROUP_ID_ varchar(64),
12 | primary key (USER_ID_, GROUP_ID_)
13 | )^
14 |
15 | create table ACT_ID_USER (
16 | ID_ varchar(64),
17 | REV_ integer,
18 | FIRST_ varchar(255),
19 | LAST_ varchar(255),
20 | EMAIL_ varchar(255),
21 | PWD_ varchar(255),
22 | PICTURE_ID_ varchar(64),
23 | primary key (ID_)
24 | )^
25 |
26 | create table ACT_ID_INFO (
27 | ID_ varchar(64),
28 | REV_ integer,
29 | USER_ID_ varchar(64),
30 | TYPE_ varchar(64),
31 | KEY_ varchar(255),
32 | VALUE_ varchar(255),
33 | PASSWORD_ longvarbinary,
34 | PARENT_ID_ varchar(255),
35 | primary key (ID_)
36 | )^
37 |
38 | alter table ACT_ID_MEMBERSHIP
39 | add constraint ACT_FK_MEMB_GROUP
40 | foreign key (GROUP_ID_)
41 | references ACT_ID_GROUP^
42 |
43 | alter table ACT_ID_MEMBERSHIP
44 | add constraint ACT_FK_MEMB_USER
45 | foreign key (USER_ID_)
46 | references ACT_ID_USER^
47 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procmodel/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Модели процесса
18 | editCaption=Редактирование модели процесса
19 | deploy=Развернуть
20 | processDeployed=Процесс развернут
21 | exportModel=Экспорт
22 | importModel=Импорт
23 | invalidJsonDocument=Неверный документ JSON
24 | importModel.existsDialog.title=Внимание
25 | importModel.existsDialog.message=Модель с именем '%s' существует и будет перезаписана. Продолжить?
26 | importModel.completed=Модель импортирована
27 | copyOf=
28 | copy=Копировать
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procmodel/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Process Models
18 | editCaption = Process Model Edit
19 | deploy = Deploy
20 | processDeployed = Process deployed
21 | exportModel = Export
22 | importModel = Import
23 | invalidJsonDocument = Invalid JSON document
24 | importModel.existsDialog.title = Warning
25 | importModel.existsDialog.message = A model with name '%s' already exists and will be overwritten. Continue?
26 | importModel.completed = Model imported
27 | copyOf = Copy of %s
28 | copy = Copy
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/BpmConstants.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm;
18 |
19 | public interface BpmConstants {
20 | String DEFAULT_TASK_OUTCOME = "defaultComplete";
21 | String STANDARD_PROC_FORM = "standardProcForm";
22 | String CUSTOM_STENCIL_SERVICE_TASK = "serviceTask";
23 |
24 | interface Views {
25 | String PROC_INSTANCE_FULL = "procInstance-full";
26 | String PROC_TASK_COMPLETE = "procTask-complete";
27 | String PROC_DEFINITION_WITH_ROLES = "procDefinition-withRoles";
28 | }
29 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/FormFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.bpm.gui.form.generic.GenericProcForm;
21 | import com.haulmont.cuba.gui.components.Field;
22 |
23 | /**
24 | * Interface to be implemented by field generators of {@link GenericProcForm}
25 | */
26 | public interface FormFieldGenerator {
27 | Field createField(ProcFormParam formParam, String actExecutionId);
28 | }
29 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/ProcForm.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form;
18 |
19 | import java.util.Map;
20 |
21 | /**
22 | * Interface that should be implemented by process forms.
23 | */
24 | public interface ProcForm {
25 |
26 | /**
27 | * @return comment to be set to {@link com.haulmont.bpm.entity.ProcTask} instance
28 | */
29 | String getComment();
30 |
31 | /**
32 | * @return a map that will be added to activiti process variables
33 | */
34 | Map getFormResult();
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Model Elements Editor
18 | addStencil=Add element
19 | addGroup=Add group
20 | modelNameRequired=Method name required
21 | methodArgs=Method arguments:
22 | icon=Icon
23 | resetStencilSetDlg.caption=Confirmation
24 | resetStencilSetDlg.message=Are you sure you want to reset a stencil set?
25 | resetStencilSet=Reset
26 | notUploaded=
27 | stencilWithIdExists=Stencil with id '%s' already exists
28 | selectGroup=Select the group
29 | importSuccessful=Imported successfully
30 | saved=Saved
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/ProcessMigrator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core;
18 |
19 | import com.haulmont.bpm.entity.ProcDefinition;
20 | import org.activiti.engine.repository.ProcessDefinition;
21 |
22 | /**
23 | * Class is used for migrating procInstances to new procDefinition
24 | */
25 | public interface ProcessMigrator {
26 |
27 | String NAME = "bpm_ProcessMigrator";
28 |
29 | void migrate(ProcessDefinition actProcessDefinition);
30 |
31 | void migrateProcTasks(ProcDefinition procDefinition, String actProcessDefinitionId);
32 | }
33 |
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/jmx/MessagesCache.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core.jmx;
18 |
19 | import com.haulmont.bpm.core.ProcessMessagesManager;
20 |
21 | import org.springframework.stereotype.Component;
22 | import javax.inject.Inject;
23 |
24 | @Component("bpm_MessagesCacheMBean")
25 | public class MessagesCache implements MessagesCacheMBean {
26 |
27 | @Inject
28 | protected ProcessMessagesManager processMessagesManager;
29 |
30 | @Override
31 | public void clearCaches() {
32 | processMessagesManager.clearCaches();
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/modules/core/db/init/mssql/activiti.identity.create-db.sql:
--------------------------------------------------------------------------------
1 | create table ACT_ID_GROUP (
2 | ID_ nvarchar(64),
3 | REV_ int,
4 | NAME_ nvarchar(255),
5 | TYPE_ nvarchar(255),
6 | primary key (ID_)
7 | )^
8 |
9 | create table ACT_ID_MEMBERSHIP (
10 | USER_ID_ nvarchar(64),
11 | GROUP_ID_ nvarchar(64),
12 | primary key (USER_ID_, GROUP_ID_)
13 | )^
14 |
15 | create table ACT_ID_USER (
16 | ID_ nvarchar(64),
17 | REV_ int,
18 | FIRST_ nvarchar(255),
19 | LAST_ nvarchar(255),
20 | EMAIL_ nvarchar(255),
21 | PWD_ nvarchar(255),
22 | PICTURE_ID_ nvarchar(64),
23 | primary key (ID_)
24 | )^
25 |
26 | create table ACT_ID_INFO (
27 | ID_ nvarchar(64),
28 | REV_ int,
29 | USER_ID_ nvarchar(64),
30 | TYPE_ nvarchar(64),
31 | KEY_ nvarchar(255),
32 | VALUE_ nvarchar(255),
33 | PASSWORD_ varbinary(max),
34 | PARENT_ID_ nvarchar(255),
35 | primary key (ID_)
36 | )^
37 |
38 | alter table ACT_ID_MEMBERSHIP
39 | add constraint ACT_FK_MEMB_GROUP
40 | foreign key (GROUP_ID_)
41 | references ACT_ID_GROUP (ID_)^
42 |
43 | alter table ACT_ID_MEMBERSHIP
44 | add constraint ACT_FK_MEMB_USER
45 | foreign key (USER_ID_)
46 | references ACT_ID_USER (ID_)^
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procdefinition/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Process Definitions
18 | editCaption = Process Definition Edit
19 | deployProcess=Deploy
20 | detailsTab=Details
21 | xmlTab=XML
22 | caption = Process definition deploy
23 | yourDecision = Your decision
24 | procDefinition = Process definition
25 | cannotRemoveActiveProcesses = There are active process instances
26 | UPDATE_EXISTING = Update existing process
27 | CREATE_NEW = Create new process
28 | processUploaded = Process definition uploaded
29 | processDeployed = Process deployed
30 | fileNotXml=File should have .xml extension
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/frame/AbstractStencilFrame.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.stencilset.frame;
18 |
19 | import com.haulmont.bpm.entity.stencil.Stencil;
20 | import com.haulmont.cuba.gui.components.AbstractFrame;
21 | import com.haulmont.cuba.gui.data.Datasource;
22 |
23 | import javax.inject.Inject;
24 |
25 | public class AbstractStencilFrame extends AbstractFrame {
26 |
27 | @Inject
28 | protected Datasource stencilDs;
29 |
30 | public void setStencil(T stencil) {
31 | stencilDs.setItem(stencil);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Редактор элементов модели
18 | addStencil=Добавить элемент
19 | addGroup=Добавить группу
20 | modelNameRequired=Заполните поле "Имя метода"
21 | methodArgs=Аргументы метода
22 | icon=Иконка
23 | resetStencilSetDlg.caption=Подтверждение
24 | resetStencilSetDlg.message=Вы уверены, что хотите вернуть набор элементов в исходное состояние?
25 | resetStencilSet=Сбросить
26 | notUploaded=<Не загружено>
27 | stencilWithIdExists=Элемент с ID '%s' уже существует
28 | selectGroup=Выберите группу
29 | importSuccessful=Импорт завершен
30 | saved=Сохранено
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procdefinition/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Определение процесса
18 | editCaption=Редактирование определения процесса
19 | deployProcess=Развернуть
20 | detailsTab=Детали
21 | xmlTab=XML
22 | caption=Развертывание определения процесса
23 | yourDecision=Ваше решение
24 | procDefinition=Определение процесса
25 | cannotRemoveActiveProcesses=Имеются активные экземпляры процесса
26 | UPDATE_EXISTING=Обновить существующий процесс
27 | CREATE_NEW=Создать новый процесс
28 | processUploaded=Определение процесса загружено
29 | processDeployed=Процесс развернут
30 | fileNotXml=Файл должен иметь расширение .xml
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/StencilsBeansMetadata.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core;
18 |
19 | import com.haulmont.cuba.core.app.AbstractBeansMetadata;
20 | import org.springframework.stereotype.Component;
21 |
22 | import java.lang.reflect.Method;
23 |
24 | /**
25 | * Class that is used by Stencils editor for getting an information about middleware beans names and their methods
26 | */
27 | @Component("bpm_StencilsBeansMetadata")
28 | public class StencilsBeansMetadata extends AbstractBeansMetadata {
29 |
30 | @Override
31 | protected boolean isMethodAvailable(Method method) {
32 | return true;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 | com.haulmont.bpm.entity.stencil.Stencil
22 | com.haulmont.bpm.entity.stencil.StandardStencil
23 | com.haulmont.bpm.entity.stencil.GroupStencil
24 | com.haulmont.bpm.entity.stencil.ServiceTaskStencil
25 | com.haulmont.bpm.entity.stencil.StencilMethodArg
26 |
27 |
28 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/test-spring.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/AbstractProcForm.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form;
18 |
19 | import com.haulmont.cuba.gui.components.AbstractWindow;
20 |
21 | import java.util.HashMap;
22 | import java.util.Map;
23 |
24 | /**
25 | * Empty implementation of {@link ProcForm}. Use it if you need to implement only few methods.
26 | */
27 | public abstract class AbstractProcForm extends AbstractWindow implements ProcForm {
28 |
29 | @Override
30 | public String getComment() {
31 | return null;
32 | }
33 |
34 | @Override
35 | public Map getFormResult() {
36 | return new HashMap<>();
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/config/BpmConfig.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.config;
18 |
19 | import com.haulmont.cuba.core.config.Config;
20 | import com.haulmont.cuba.core.config.Property;
21 | import com.haulmont.cuba.core.config.Source;
22 | import com.haulmont.cuba.core.config.SourceType;
23 | import com.haulmont.cuba.core.config.defaults.Default;
24 |
25 | @Source(type = SourceType.APP)
26 | public interface BpmConfig extends Config {
27 | @Property("bpm.modeler.url")
28 | @Default("/modeler/modeler.html")
29 | String getModelerUrl();
30 |
31 | @Property("bpm.formsConfig")
32 | @Default("com/haulmont/bpm/forms.xml")
33 | String getFormsConfig();
34 | }
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web-menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
31 |
32 |
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/jsonconverter/CubaBpmnJsonConverter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core.jsonconverter;
18 |
19 | import org.activiti.editor.language.json.converter.BaseBpmnJsonConverter;
20 | import org.activiti.editor.language.json.converter.BpmnJsonConverter;
21 |
22 | /**
23 | * A BpmnJsonConverter that can register custom stencils
24 | */
25 | public class CubaBpmnJsonConverter extends BpmnJsonConverter {
26 |
27 | public static void addConvertersToBpmnMapItem(String stencilId, Class extends BaseBpmnJsonConverter> converterClass) {
28 | convertersToBpmnMap.put(stencilId, converterClass);
29 | BpmnJsonConverter.DI_RECTANGLES.add(stencilId);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/exception/BpmException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.exception;
18 |
19 | public class BpmException extends RuntimeException {
20 | public BpmException() {
21 | }
22 |
23 | public BpmException(String message) {
24 | super(message);
25 | }
26 |
27 | public BpmException(String message, Throwable cause) {
28 | super(message, cause);
29 | }
30 |
31 | public BpmException(Throwable cause) {
32 | super(cause);
33 | }
34 |
35 | public BpmException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
36 | super(message, cause, enableSuppression, writableStackTrace);
37 | }
38 | }
--------------------------------------------------------------------------------
/modules/core/db/init/postgres/activiti.identity.create-db.sql:
--------------------------------------------------------------------------------
1 | create table ACT_ID_GROUP (
2 | ID_ varchar(64),
3 | REV_ integer,
4 | NAME_ varchar(255),
5 | TYPE_ varchar(255),
6 | primary key (ID_)
7 | )^
8 |
9 | create table ACT_ID_MEMBERSHIP (
10 | USER_ID_ varchar(64),
11 | GROUP_ID_ varchar(64),
12 | primary key (USER_ID_, GROUP_ID_)
13 | )^
14 |
15 | create table ACT_ID_USER (
16 | ID_ varchar(64),
17 | REV_ integer,
18 | FIRST_ varchar(255),
19 | LAST_ varchar(255),
20 | EMAIL_ varchar(255),
21 | PWD_ varchar(255),
22 | PICTURE_ID_ varchar(64),
23 | primary key (ID_)
24 | )^
25 |
26 | create table ACT_ID_INFO (
27 | ID_ varchar(64),
28 | REV_ integer,
29 | USER_ID_ varchar(64),
30 | TYPE_ varchar(64),
31 | KEY_ varchar(255),
32 | VALUE_ varchar(255),
33 | PASSWORD_ bytea,
34 | PARENT_ID_ varchar(255),
35 | primary key (ID_)
36 | )^
37 |
38 | create index ACT_IDX_MEMB_GROUP on ACT_ID_MEMBERSHIP(GROUP_ID_)^
39 | alter table ACT_ID_MEMBERSHIP
40 | add constraint ACT_FK_MEMB_GROUP
41 | foreign key (GROUP_ID_)
42 | references ACT_ID_GROUP (ID_)^
43 |
44 | create index ACT_IDX_MEMB_USER on ACT_ID_MEMBERSHIP(USER_ID_)^
45 | alter table ACT_ID_MEMBERSHIP
46 | add constraint ACT_FK_MEMB_USER
47 | foreign key (USER_ID_)
48 | references ACT_ID_USER (ID_)^
49 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procinstance/messages.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption = Process Instances
18 | editCaption = Process Instance Edit
19 | startProcess = Start process
20 | processStarted = Process started
21 | processCancelled = Process cancelled
22 | cancelProcess = Cancel process
23 | addProcActor = Add process actor...
24 | name = Name
25 | taskCompleted = Task completed
26 | taskClaimed = Task claimed
27 | processActions = Process actions
28 | linkedEntity = Linked entity
29 | showDetails = Show details
30 | hideDetails = Hide details
31 | saveProcInstance = Save process instance
32 | entityNotDefined = Not defined
33 | entityInstance=Entity instance
34 | cannotRemoveActiveProcInstance=Cannot remove active process instance
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/credits.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/StringFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.cuba.gui.components.Field;
21 | import com.haulmont.cuba.gui.components.TextField;
22 |
23 | public class StringFieldGenerator extends AbstractFormFieldGenerator {
24 |
25 | @Override
26 | public Field createField(ProcFormParam formParam, String actExecutionId) {
27 | TextField textField = componentsFactory.createComponent(TextField.class);
28 | standardFieldInit(textField, formParam);
29 | textField.setValue(formParam.getValue());
30 | return textField;
31 | }
32 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/frame/GroupStencilFrame.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.stencilset.frame;
18 |
19 | import com.haulmont.bpm.entity.stencil.GroupStencil;
20 | import com.haulmont.cuba.gui.components.FieldGroup;
21 |
22 | import javax.inject.Inject;
23 |
24 | public class GroupStencilFrame extends AbstractStencilFrame {
25 |
26 | @Inject
27 | private FieldGroup fieldGroup;
28 |
29 | @Override
30 | public void setStencil(GroupStencil stencil) {
31 | super.setStencil(stencil);
32 | fieldGroup.setEditable(stencil.getEditable());
33 | }
34 |
35 | @Override
36 | public void requestFocus() {
37 | fieldGroup.requestFocus();
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/modules/core/db/init/oracle/activiti.identity.create-db.sql:
--------------------------------------------------------------------------------
1 | create table ACT_ID_GROUP (
2 | ID_ NVARCHAR2(64),
3 | REV_ INTEGER,
4 | NAME_ NVARCHAR2(255),
5 | TYPE_ NVARCHAR2(255),
6 | primary key (ID_)
7 | )^
8 |
9 | create table ACT_ID_MEMBERSHIP (
10 | USER_ID_ NVARCHAR2(64),
11 | GROUP_ID_ NVARCHAR2(64),
12 | primary key (USER_ID_, GROUP_ID_)
13 | )^
14 |
15 | create table ACT_ID_USER (
16 | ID_ NVARCHAR2(64),
17 | REV_ INTEGER,
18 | FIRST_ NVARCHAR2(255),
19 | LAST_ NVARCHAR2(255),
20 | EMAIL_ NVARCHAR2(255),
21 | PWD_ NVARCHAR2(255),
22 | PICTURE_ID_ NVARCHAR2(64),
23 | primary key (ID_)
24 | )^
25 |
26 | create table ACT_ID_INFO (
27 | ID_ NVARCHAR2(64),
28 | REV_ INTEGER,
29 | USER_ID_ NVARCHAR2(64),
30 | TYPE_ NVARCHAR2(64),
31 | KEY_ NVARCHAR2(255),
32 | VALUE_ NVARCHAR2(255),
33 | PASSWORD_ BLOB,
34 | PARENT_ID_ NVARCHAR2(255),
35 | primary key (ID_)
36 | )^
37 |
38 | create index ACT_IDX_MEMB_GROUP on ACT_ID_MEMBERSHIP(GROUP_ID_)^
39 | alter table ACT_ID_MEMBERSHIP
40 | add constraint ACT_FK_MEMB_GROUP
41 | foreign key (GROUP_ID_)
42 | references ACT_ID_GROUP (ID_)^
43 |
44 | create index ACT_IDX_MEMB_USER on ACT_ID_MEMBERSHIP(USER_ID_)^
45 | alter table ACT_ID_MEMBERSHIP
46 | add constraint ACT_FK_MEMB_USER
47 | foreign key (USER_ID_)
48 | references ACT_ID_USER (ID_)^
49 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procinstance/messages_ru.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | browseCaption=Экземпляры процесса
18 | editCaption=Редактирование экземпляра процесса
19 | startProcess=Запустить процесс
20 | processStarted=Процесс запущен
21 | processCancelled=Процесс отменен
22 | cancelProcess=Отменить процесс
23 | addProcActor=Добавить участника...
24 | name=Наименование
25 | taskCompleted=Задача завершена
26 | taskClaimed=Задача назначена
27 | processActions=Процессные действия
28 | linkedEntity=Связанная сущность
29 | showDetails=Показать детали
30 | hideDetails=Спрятать детали
31 | saveProcInstance=Сохраните экземпляр процесса
32 | entityNotDefined=Не определена
33 | entityInstance=Экземпляр сущности
34 | cannotRemoveActiveProcInstance=Невозможно удалить активный экземпляр процесса
--------------------------------------------------------------------------------
/modules/core/db/init/mysql/activiti.identity.create-db.sql:
--------------------------------------------------------------------------------
1 | create table ACT_ID_GROUP (
2 | ID_ varchar(64),
3 | REV_ integer,
4 | NAME_ varchar(255),
5 | TYPE_ varchar(255),
6 | primary key (ID_)
7 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin^
8 |
9 | create table ACT_ID_MEMBERSHIP (
10 | USER_ID_ varchar(64),
11 | GROUP_ID_ varchar(64),
12 | primary key (USER_ID_, GROUP_ID_)
13 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin^
14 |
15 | create table ACT_ID_USER (
16 | ID_ varchar(64),
17 | REV_ integer,
18 | FIRST_ varchar(255),
19 | LAST_ varchar(255),
20 | EMAIL_ varchar(255),
21 | PWD_ varchar(255),
22 | PICTURE_ID_ varchar(64),
23 | primary key (ID_)
24 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin^
25 |
26 | create table ACT_ID_INFO (
27 | ID_ varchar(64),
28 | REV_ integer,
29 | USER_ID_ varchar(64),
30 | TYPE_ varchar(64),
31 | KEY_ varchar(255),
32 | VALUE_ varchar(255),
33 | PASSWORD_ LONGBLOB,
34 | PARENT_ID_ varchar(255),
35 | primary key (ID_)
36 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin^
37 |
38 | alter table ACT_ID_MEMBERSHIP
39 | add constraint ACT_FK_MEMB_GROUP
40 | foreign key (GROUP_ID_)
41 | references ACT_ID_GROUP (ID_)^
42 |
43 | alter table ACT_ID_MEMBERSHIP
44 | add constraint ACT_FK_MEMB_USER
45 | foreign key (USER_ID_)
46 | references ACT_ID_USER (ID_)^
47 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/BooleanFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatypes;
21 | import com.haulmont.cuba.gui.components.CheckBox;
22 | import com.haulmont.cuba.gui.components.Field;
23 |
24 | public class BooleanFieldGenerator extends AbstractFormFieldGenerator {
25 |
26 | @Override
27 | public Field createField(ProcFormParam formParam, String actExecutionId) {
28 | CheckBox checkBox = componentsFactory.createComponent(CheckBox.class);
29 | standardFieldInit(checkBox, formParam);
30 | setFieldValue(checkBox, formParam, Datatypes.getNN(Boolean.class), actExecutionId);
31 | return checkBox;
32 | }
33 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/DateTimeFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatypes;
21 | import com.haulmont.cuba.gui.components.DateField;
22 | import com.haulmont.cuba.gui.components.Field;
23 |
24 | import java.util.Date;
25 |
26 | public class DateTimeFieldGenerator extends AbstractFormFieldGenerator {
27 | @Override
28 | public Field createField(ProcFormParam formParam, String actExecutionId) {
29 | DateField dateField = componentsFactory.createComponent(DateField.class);
30 | standardFieldInit(dateField, formParam);
31 | setFieldValue(dateField, formParam, Datatypes.getNN(Date.class), actExecutionId);
32 | return dateField;
33 | }
34 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # CUBA BPM Add-on
2 |
3 | [](http://www.apache.org/licenses/LICENSE-2.0)
4 | [](https://travis-ci.org/cuba-platform/bpm)
5 | [](https://doc.cuba-platform.com/bpm-latest)
6 |
7 | CUBA business process management subsystem.
8 |
9 | For more information see [github.com/cuba-platform/cuba](https://github.com/cuba-platform/cuba).
10 |
11 | ## Build and install
12 |
13 | In order to build the add-on from source, you need to install the following:
14 | * Java 8 Development Kit (JDK)
15 | * [CUBA Gradle Plugin](https://github.com/cuba-platform/cuba-gradle-plugin)
16 | * [CUBA](https://github.com/cuba-platform/cuba)
17 |
18 | Let's assume that you have cloned sources into the following directories:
19 | ```
20 | work/
21 | cuba/
22 | cuba-gradle-plugin/
23 | bpm/
24 | ```
25 |
26 | Open terminal in the `work` directory and run the following command to build and install the plugin into your local Maven repository (`~/.m2`):
27 | ```
28 | cd cuba-gradle-plugin
29 | gradlew install
30 | ```
31 |
32 | After that, go to the cuba directory and build and install it with the same command:
33 | ```
34 | cd ../cuba
35 | gradlew install
36 | ```
37 |
38 | Finally, go to the bpm directory and build and install it with the same command:
39 | ```
40 | cd ../bpm
41 | gradlew install
42 | ```
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ProcessRepositoryService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.entity.ProcDefinition;
20 | import com.haulmont.bpm.entity.ProcModel;
21 |
22 | import javax.annotation.Nullable;
23 | import java.util.List;
24 |
25 | /**
26 | * Class provides a way to work process repository from a client tier. For documentation see {@code ProcessRepositoryManager}
27 | *
28 | */
29 | public interface ProcessRepositoryService {
30 |
31 | String NAME = "bpm_ProcessRepositoryService";
32 |
33 | ProcDefinition deployProcessFromXml(String xml, @Nullable ProcDefinition procDefinition, @Nullable ProcModel procModel);
34 |
35 | String getProcessDefinitionXml(String actDeploymentId);
36 |
37 | String convertModelToProcessXml(String actModelId);
38 |
39 | void undeployProcess(String actDeploymentId);
40 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/DateFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatypes;
21 | import com.haulmont.cuba.gui.components.DateField;
22 | import com.haulmont.cuba.gui.components.Field;
23 |
24 | public class DateFieldGenerator extends AbstractFormFieldGenerator {
25 | @Override
26 | public Field createField(ProcFormParam formParam, String actExecutionId) {
27 | DateField dateField = componentsFactory.createComponent(DateField.class);
28 | dateField.setResolution(DateField.Resolution.DAY);
29 | standardFieldInit(dateField, formParam);
30 | setFieldValue(dateField, formParam, Datatypes.getNN(java.sql.Date.class), actExecutionId);
31 | return dateField;
32 | }
33 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/frame/group-stencil-frame.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
25 |
26 |
27 |
28 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/IntegerFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatype;
21 | import com.haulmont.chile.core.datatypes.Datatypes;
22 | import com.haulmont.cuba.gui.components.TextField;
23 |
24 | public class IntegerFieldGenerator extends AbstractFormFieldGenerator {
25 |
26 | @Override
27 | public TextField createField(ProcFormParam formParam, String actExecutionId) {
28 | TextField textField = componentsFactory.createComponent(TextField.class);
29 | Datatype datatype = Datatypes.getNN(Integer.class);
30 | textField.setDatatype(datatype);
31 | standardFieldInit(textField, formParam);
32 | setFieldValue(textField, formParam, datatype, actExecutionId);
33 | return textField;
34 | }
35 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/persistence.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
20 |
22 | com.haulmont.bpm.entity.ProcDefinition
23 | com.haulmont.bpm.entity.ProcRole
24 | com.haulmont.bpm.entity.ProcInstance
25 | com.haulmont.bpm.entity.ProcActor
26 | com.haulmont.bpm.entity.ProcTask
27 | com.haulmont.bpm.entity.ProcAttachmentType
28 | com.haulmont.bpm.entity.ProcAttachment
29 | com.haulmont.bpm.entity.ProcModel
30 | com.haulmont.bpm.entity.StencilSet
31 |
32 |
33 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ProcessFormService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.entity.ProcTask;
20 | import com.haulmont.bpm.entity.ProcDefinition;
21 | import com.haulmont.bpm.form.ProcFormDefinition;
22 |
23 | import javax.annotation.Nullable;
24 | import java.util.List;
25 | import java.util.Map;
26 |
27 | /**
28 | * Class provides a way to work process forms from a client tier. For documentation see {@code ProcessFormManager}
29 | *
30 | */
31 | public interface ProcessFormService {
32 | String NAME = "bpm_ProcessFormService";
33 |
34 | Map getOutcomesWithForms(ProcTask procTask);
35 |
36 | @Nullable
37 | ProcFormDefinition getStartForm(ProcDefinition procDefinition);
38 |
39 | ProcFormDefinition getCancelForm(ProcDefinition procDefinition);
40 |
41 | ProcFormDefinition getDefaultCompleteTaskForm(ProcDefinition procDefinition);
42 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/StencilSetService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.cuba.core.app.scheduled.MethodInfo;
20 | import com.haulmont.cuba.core.entity.FileDescriptor;
21 |
22 | import java.util.List;
23 | import java.util.Map;
24 |
25 | /**
26 | * Class that is used for storing and retrieving stencilSet json
27 | * see StencilSetManager class documentation for more details
28 | */
29 | public interface StencilSetService {
30 |
31 | String NAME = "bpm_StencilSetService";
32 |
33 | String getStencilSet();
34 |
35 | void setStencilSet(String jsonData);
36 |
37 | void registerServiceTaskStencilBpmnJsonConverter(String stencilId);
38 |
39 | void resetStencilSet();
40 |
41 | byte[] exportStencilSet(String stencilsJson, List iconFiles);
42 |
43 | void importStencilSet(byte[] zipBytes);
44 |
45 | Map> getAvailableBeans();
46 | }
47 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/LongFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatype;
21 | import com.haulmont.chile.core.datatypes.Datatypes;
22 | import com.haulmont.cuba.gui.components.Field;
23 | import com.haulmont.cuba.gui.components.TextField;
24 |
25 | public class LongFieldGenerator extends AbstractFormFieldGenerator {
26 |
27 | @Override
28 | public Field createField(ProcFormParam formParam, String actExecutionId) {
29 | TextField textField = componentsFactory.createComponent(TextField.class);
30 | Datatype datatype = Datatypes.get(Long.class);
31 | textField.setDatatype(datatype);
32 | standardFieldInit(textField, formParam);
33 | setFieldValue(textField, formParam, datatype, actExecutionId);
34 | return textField;
35 | }
36 | }
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/controller/BpmControllerUtils.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.controller;
18 |
19 | import com.haulmont.cuba.core.sys.AppContext;
20 | import com.haulmont.cuba.core.sys.SecurityContext;
21 | import com.haulmont.cuba.security.global.UserSession;
22 |
23 | import javax.servlet.http.HttpServletRequest;
24 | import javax.servlet.http.HttpServletResponse;
25 | import java.io.IOException;
26 |
27 | public class BpmControllerUtils {
28 |
29 | public static boolean auth(HttpServletRequest request, HttpServletResponse response) throws IOException {
30 | UserSession userSession = com.haulmont.cuba.web.controllers.ControllerUtils.getUserSession(request);
31 | if (userSession == null) {
32 | response.sendError(HttpServletResponse.SC_FORBIDDEN);
33 | return false;
34 | }
35 | AppContext.setSecurityContext(new SecurityContext(userSession));
36 | return true;
37 | }
38 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/stencilset/frame/standard-stencil-frame.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
25 |
26 |
27 |
28 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/app.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2008-2019 Haulmont.
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # http://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 |
17 | ###############################################################################
18 | # Configuration #
19 | ###############################################################################
20 |
21 | cuba.dbmsType = postgres
22 |
23 | cuba.springContextConfig = +com/haulmont/bpm/spring.xml
24 | cuba.persistenceConfig = +com/haulmont/bpm/persistence.xml
25 | cuba.metadataConfig = +com/haulmont/bpm/metadata.xml
26 | cuba.viewsConfig = +com/haulmont/bpm/views.xml
27 | cuba.mainMessagePack = com.haulmont.bpm.core
28 |
29 | bpm.activiti.asyncJobExecutorEnabled = false
30 |
31 | ###############################################################################
32 | # Other #
33 | ###############################################################################
34 |
35 | cuba.webContextName = bpm-core
36 | cuba.availableLocales = English|en;Russian|ru;
37 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ProcessMessagesService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.entity.ProcDefinition;
20 |
21 | import javax.annotation.Nullable;
22 | import java.util.Locale;
23 |
24 | /**
25 | * Class provides a way to work process messages from a client tier. For documentation see {@code ProcessMessagesManager}
26 | *
27 | */
28 | public interface ProcessMessagesService {
29 | String NAME = "bpm_ProcessMessagesService";
30 |
31 | String getMessage(String actProcessdefinitionId, String key);
32 |
33 | String getMessage(String actProcessDefinitionId, String key, Locale locale);
34 |
35 | String loadString(String actProcessDefinitionId, String key);
36 |
37 | @Nullable
38 | String findMessage(String actProcessDefinitionId, String key);
39 |
40 | @Nullable
41 | String findMessage(String actProcessDefinitionId, String key, Locale locale);
42 |
43 | String loadString(String actProcessDefinitionId, String key, Locale locale);
44 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ProcessRuntimeService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.entity.ProcTask;
20 | import com.haulmont.bpm.entity.ProcDefinition;
21 | import com.haulmont.bpm.entity.ProcInstance;
22 | import com.haulmont.cuba.security.entity.User;
23 |
24 | import javax.annotation.Nullable;
25 | import java.util.Map;
26 |
27 | public interface ProcessRuntimeService {
28 | String NAME = "bpm_ProcessRuntimeService";
29 |
30 | ProcInstance startProcess(ProcInstance procInstance, String comment, Map params);
31 |
32 | ProcInstance cancelProcess(ProcInstance procInstance, String comment);
33 |
34 | void completeProcTask(ProcTask procTask, String outcome, String comment, @Nullable Map processVariables);
35 |
36 | long getActiveProcessesCount(ProcDefinition procDefinition);
37 |
38 | void claimProcTask(ProcTask procTask, User user);
39 |
40 | Object evaluateExpression(String expression, String actExecutionId);
41 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/BigDecimalFieldGenerator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.form.ProcFormParam;
20 | import com.haulmont.chile.core.datatypes.Datatype;
21 | import com.haulmont.chile.core.datatypes.Datatypes;
22 | import com.haulmont.cuba.gui.components.Field;
23 | import com.haulmont.cuba.gui.components.TextField;
24 |
25 | import java.math.BigDecimal;
26 |
27 | public class BigDecimalFieldGenerator extends AbstractFormFieldGenerator {
28 |
29 | @Override
30 | public Field createField(ProcFormParam formParam, String actExecutionId) {
31 | TextField textField = componentsFactory.createComponent(TextField.class);
32 | Datatype datatype = Datatypes.getNN(BigDecimal.class);
33 | textField.setDatatype(datatype);
34 | standardFieldInit(textField, formParam);
35 | setFieldValue(textField, formParam, datatype, actExecutionId);
36 | return textField;
37 | }
38 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/ProcTasksFrame.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.proctask;
18 |
19 | import com.haulmont.bpm.entity.ProcInstance;
20 | import com.haulmont.bpm.entity.ProcTask;
21 | import com.haulmont.cuba.gui.components.AbstractFrame;
22 | import com.haulmont.cuba.gui.data.CollectionDatasource;
23 |
24 | import javax.inject.Inject;
25 | import java.util.HashMap;
26 | import java.util.Map;
27 | import java.util.UUID;
28 |
29 | public class ProcTasksFrame extends AbstractFrame {
30 |
31 | protected ProcInstance procInstance;
32 |
33 | @Inject
34 | protected CollectionDatasource procTasksDs;
35 |
36 | public void setProcInstance(ProcInstance procInstance) {
37 | this.procInstance = procInstance;
38 | }
39 |
40 | public void refresh() {
41 | Map params = new HashMap<>();
42 | if (procInstance != null) {
43 | params.put("procInstance", procInstance.getId());
44 | }
45 | procTasksDs.refresh(params);
46 | }
47 | }
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/ProcessVariablesManager.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core;
18 |
19 | import com.haulmont.bpm.entity.ProcInstance;
20 |
21 | import java.util.Map;
22 |
23 | /**
24 | * Class for working with activiti process variables
25 | *
26 | */
27 | public interface ProcessVariablesManager {
28 | String NAME = "bpm_ProcessVariablesManager";
29 |
30 | Map getVariables(ProcInstance procInstance);
31 |
32 | void setVariables(ProcInstance procInstance, Map variables);
33 |
34 | Object getVariable(ProcInstance procInstance, String variableName);
35 |
36 | void setVariable(ProcInstance procInstance, String variableName, Object variableValue);
37 |
38 | Map getVariables(String executionId);
39 |
40 | void setVariables(String executionId, Map variables);
41 |
42 | Object getVariable(String executionId, String variableName);
43 |
44 | void setVariable(String executionId, String variableName, Object variableValue);
45 | }
46 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/generic-proc-form.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
24 |
28 |
32 |
33 |
34 |
35 |
37 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ModelService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.rest.RestModel;
20 |
21 | /**
22 | * Service for working with activiti models
23 | */
24 | public interface ModelService {
25 | String NAME = "bpm_ModelService";
26 |
27 | /**
28 | * @return an object that contains all necessary information for displaying a model in modeler
29 | */
30 | RestModel getModelJson(String actModelId);
31 |
32 | /**
33 | * Saves activiti model to the database
34 | */
35 | void updateModel(String actModelId, String modelName, String modelDescription,
36 | String modelJsonStr, String modelSvgStr);
37 |
38 | void updateModel(String actModelId, String modelName, String modelDescription);
39 |
40 | /**
41 | * Creates new activiti model
42 | * @param name model name
43 | * @return activiti model id
44 | */
45 | String createModel(String name);
46 |
47 | String updateModelNameInJson(String json, String modelName);
48 | }
49 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactionsfragment/proc-actions-fragment.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/ExtensionElementsManager.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core;
18 |
19 | import org.activiti.bpmn.model.ExtensionElement;
20 |
21 | import javax.annotation.Nullable;
22 | import java.util.List;
23 | import java.util.Map;
24 |
25 | /**
26 | * Helper class for working with extension elements of BPMN model elements
27 | *
28 | */
29 | public interface ExtensionElementsManager {
30 |
31 | String NAME = "bpm_ExtensionElementsManager";
32 |
33 | Map> getFlowElementExtensionElements(String actProcessDefinitionId, String actFlowElementDefinitionKey);
34 |
35 | Map> getStartExtensionElements(String actProcessDefinitionId);
36 |
37 | Map> getProcessExtensionElements(String actProcessDefinitionId);
38 |
39 | @Nullable
40 | String getTimerOutcome(String actProcessDefinitionId, String actBoundaryEventDefinitionKey);
41 |
42 | @Nullable
43 | String getTaskProcRole(String actProcessDefinitionId, String actTaskDefinitionKey);
44 | }
45 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/ProcAttachmentType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.entity;
18 |
19 | import javax.persistence.Entity;
20 | import javax.persistence.Table;
21 | import javax.persistence.Column;
22 | import com.haulmont.cuba.core.entity.StandardEntity;
23 | import com.haulmont.chile.core.annotations.NamePattern;
24 |
25 | @NamePattern("%s|name")
26 | @Table(name = "BPM_PROC_ATTACHMENT_TYPE")
27 | @Entity(name = "bpm$ProcAttachmentType")
28 | public class ProcAttachmentType extends StandardEntity {
29 | private static final long serialVersionUID = 5599792799275318734L;
30 |
31 | @Column(name = "NAME", nullable = false)
32 | protected String name;
33 |
34 | @Column(name = "CODE")
35 | protected String code;
36 |
37 | public void setName(String name) {
38 | this.name = name;
39 | }
40 |
41 | public String getName() {
42 | return name;
43 | }
44 |
45 | public void setCode(String code) {
46 | this.code = code;
47 | }
48 |
49 | public String getCode() {
50 | return code;
51 | }
52 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/StencilSet.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.entity;
18 |
19 | import com.haulmont.cuba.core.entity.StandardEntity;
20 |
21 | import javax.persistence.Column;
22 | import javax.persistence.Entity;
23 | import javax.persistence.Lob;
24 | import javax.persistence.Table;
25 |
26 | @Entity(name = "bpm$StencilSet")
27 | @Table(name = "BPM_STENCIL_SET")
28 | public class StencilSet extends StandardEntity {
29 |
30 | private static final long serialVersionUID = -3420632200646053615L;
31 |
32 | @Column(name = "NAME", nullable = false, unique = true)
33 | protected String name;
34 |
35 | @Lob
36 | @Column(name = "JSON_DATA", nullable = false)
37 | protected String jsonData;
38 |
39 | public String getName() {
40 | return name;
41 | }
42 |
43 | public void setName(String name) {
44 | this.name = name;
45 | }
46 |
47 | public String getJsonData() {
48 | return jsonData;
49 | }
50 |
51 | public void setJsonData(String jsonData) {
52 | this.jsonData = jsonData;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/deploymentTest1.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/deploymentTest2.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/deploymentTest3.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procactions/proc-actions-frame.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procmodel/proc-model-edit.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
25 |
28 |
29 |
31 |
33 |
34 |
35 |
36 |
37 |
38 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/service/ProcessVariablesService.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.entity.ProcInstance;
20 |
21 | import java.util.Map;
22 |
23 | /**
24 | * Class provides a way to work process variables from a client tier. For documentation see {@code ProcessVariablesManager}
25 | *
26 | */
27 | public interface ProcessVariablesService {
28 | String NAME = "bpm_ProcessVariablesService";
29 |
30 | Map getVariables(ProcInstance procInstance);
31 |
32 | void setVariables(String executionId, Map variables);
33 |
34 | void setVariables(ProcInstance procInstance, Map variables);
35 |
36 | void setVariable(ProcInstance procInstance, String variableName, Object variableValue);
37 |
38 | Map getVariables(String executionId);
39 |
40 | Object getVariable(ProcInstance procInstance, String variableName);
41 |
42 | void setVariable(String executionId, String variableName, Object variableValue);
43 |
44 | Object getVariable(String executionId, String variableName);
45 | }
46 |
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/rest/RestModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.rest;
18 |
19 | import java.io.Serializable;
20 |
21 | /**
22 | * Class is used for transporting model information necessary for modeler from middleware to web tier
23 | */
24 | public class RestModel implements Serializable {
25 |
26 | private String modelId;
27 | private String name;
28 | private String modelJson;
29 |
30 | public RestModel(String modelId, String name, String modelJson) {
31 | this.modelId = modelId;
32 | this.name = name;
33 | this.modelJson = modelJson;
34 | }
35 |
36 | public String getModelId() {
37 | return modelId;
38 | }
39 |
40 | public void setModelId(String modelId) {
41 | this.modelId = modelId;
42 | }
43 |
44 | public String getName() {
45 | return name;
46 | }
47 |
48 | public void setName(String name) {
49 | this.name = name;
50 | }
51 |
52 | public String getModelJson() {
53 | return modelJson;
54 | }
55 |
56 | public void setModelJson(String modelJson) {
57 | this.modelJson = modelJson;
58 | }
59 | }
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/migrationTest1.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procattachmenttype/proc-attachment-type-edit.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
25 |
28 |
29 |
31 |
33 |
34 |
35 |
36 |
37 |
38 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/migrationTest2.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/controller/StencilSetController.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.controller;
18 |
19 | import com.haulmont.bpm.service.StencilSetService;
20 | import org.springframework.stereotype.Controller;
21 | import org.springframework.web.bind.annotation.RequestMapping;
22 | import org.springframework.web.bind.annotation.RequestMethod;
23 | import org.springframework.web.bind.annotation.ResponseBody;
24 |
25 | import javax.inject.Inject;
26 | import javax.servlet.http.HttpServletRequest;
27 | import javax.servlet.http.HttpServletResponse;
28 | import java.io.IOException;
29 |
30 | @Controller("bpm_StencilSetController")
31 | @RequestMapping("/modeler/stencilset")
32 | public class StencilSetController {
33 |
34 | @Inject
35 | protected StencilSetService stencilSetService;
36 |
37 | @RequestMapping(method = RequestMethod.GET)
38 | @ResponseBody
39 | public String getStencilSet(HttpServletRequest request,
40 | HttpServletResponse response) throws IOException {
41 | if (BpmControllerUtils.auth(request, response)) {
42 | return stencilSetService.getStencilSet();
43 | }
44 | return null;
45 | }
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/controller/FormController.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.controller;
18 |
19 | import com.haulmont.bpm.form.ProcFormDefinition;
20 | import com.haulmont.bpm.gui.app.ProcessFormRepository;
21 | import org.springframework.stereotype.Controller;
22 | import org.springframework.web.bind.annotation.RequestMapping;
23 | import org.springframework.web.bind.annotation.RequestMethod;
24 | import org.springframework.web.bind.annotation.ResponseBody;
25 |
26 | import javax.inject.Inject;
27 | import javax.servlet.http.HttpServletRequest;
28 | import javax.servlet.http.HttpServletResponse;
29 | import java.io.IOException;
30 | import java.util.List;
31 |
32 | @Controller("bpm_FormController")
33 | @RequestMapping("/modeler/form")
34 | public class FormController {
35 |
36 | @Inject
37 | protected ProcessFormRepository processFormRepository;
38 |
39 | @RequestMapping(method = RequestMethod.GET)
40 | @ResponseBody
41 | public List getAllForms(HttpServletRequest request,
42 | HttpServletResponse response) throws IOException {
43 | if (BpmControllerUtils.auth(request, response)) {
44 | return processFormRepository.getForms();
45 | }
46 | return null;
47 | }
48 | }
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/core/engine/impl/db/ExtDbSqlSession.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.core.engine.impl.db;
18 |
19 | import org.activiti.engine.impl.db.DbSqlSession;
20 | import org.activiti.engine.impl.db.DbSqlSessionFactory;
21 |
22 | import java.sql.Connection;
23 |
24 | /**
25 | * Overriden {@code DbSqlSession} has an empty overriden {@code performSchemaOperationsProcessEngineBuild} method
26 | * because we don't want Activiti engine to manage its database schema.
27 | *
28 | * If default DbSqlSession is used then an exception is thrown when we run an application server with just added BPM
29 | * module for the first time. {@code performSchemaOperationsProcessEngineBuild()} queries the database, but the DbUpdater
30 | * hasn't created activiti tables by that time.
31 | *
32 | */
33 | public class ExtDbSqlSession extends DbSqlSession {
34 | public ExtDbSqlSession(DbSqlSessionFactory dbSqlSessionFactory) {
35 | super(dbSqlSessionFactory);
36 | }
37 |
38 | public ExtDbSqlSession(DbSqlSessionFactory dbSqlSessionFactory, Connection connection, String catalog, String schema) {
39 | super(dbSqlSessionFactory, connection, catalog, schema);
40 | }
41 |
42 | @Override
43 | public void performSchemaOperationsProcessEngineBuild() {
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/initializer/BpmInitializer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.initializer;
18 |
19 | import com.haulmont.cuba.core.sys.AppContext;
20 | import com.haulmont.cuba.core.sys.servlet.ServletRegistrationManager;
21 | import com.haulmont.cuba.core.sys.servlet.events.ServletContextInitializedEvent;
22 | import org.springframework.context.event.EventListener;
23 | import org.springframework.stereotype.Component;
24 |
25 | import javax.inject.Inject;
26 | import javax.servlet.DispatcherType;
27 | import javax.servlet.Filter;
28 | import java.util.EnumSet;
29 |
30 | @Component
31 | public class BpmInitializer {
32 | @Inject
33 | protected ServletRegistrationManager servletRegistrationManager;
34 |
35 | @EventListener
36 | public void initializeHttpFilter(ServletContextInitializedEvent event) {
37 | boolean isUberJar = Boolean.parseBoolean(AppContext.getProperty("cuba.uberJar"));
38 | if (isUberJar) {
39 | Filter filter = servletRegistrationManager.createFilter(event.getApplicationContext(), BpmFormContentFilter.class.getName());
40 | event.getSource().addFilter("bpmFormContentFilter", filter)
41 | .addMappingForUrlPatterns(
42 | EnumSet.of(DispatcherType.REQUEST, DispatcherType.ASYNC), true, "/dispatch/modeler/*");
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/proc-task-edit.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
25 |
28 |
29 |
31 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
43 |
44 |
45 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/controller/LocalesController.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.controller;
18 |
19 | import com.haulmont.cuba.core.global.GlobalConfig;
20 | import org.springframework.web.bind.annotation.GetMapping;
21 | import org.springframework.web.bind.annotation.RequestMapping;
22 | import org.springframework.web.bind.annotation.RestController;
23 |
24 | import javax.inject.Inject;
25 | import javax.servlet.http.HttpServletRequest;
26 | import javax.servlet.http.HttpServletResponse;
27 | import java.io.IOException;
28 | import java.util.Locale;
29 | import java.util.Set;
30 | import java.util.stream.Collectors;
31 |
32 | /**
33 | * Controller returns a list of available locales. It is used by the modeler localization page.
34 | */
35 | @RestController("bpm_LocalesController")
36 | @RequestMapping("/modeler/locales")
37 | public class LocalesController {
38 |
39 | @Inject
40 | protected GlobalConfig globalConfig;
41 |
42 | @GetMapping
43 | public Set getLocales(HttpServletRequest request,
44 | HttpServletResponse response) throws IOException {
45 | if (BpmControllerUtils.auth(request, response)) {
46 | return globalConfig.getAvailableLocales().values().stream().map(Locale::toString).collect(Collectors.toSet());
47 | }
48 | return null;
49 |
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/proctask/proc-tasks-frame.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
26 |
27 |
30 |
31 |
32 |
33 |
34 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procdefinition/proc-definition-deploy.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/controller/BpmFileDownloadController.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.controller;
18 |
19 | import com.haulmont.cuba.security.global.UserSession;
20 | import com.haulmont.cuba.web.controllers.ControllerUtils;
21 | import com.haulmont.cuba.web.controllers.FileDownloadController;
22 | import org.springframework.stereotype.Controller;
23 | import org.springframework.web.bind.annotation.RequestMapping;
24 | import org.springframework.web.bind.annotation.RequestMethod;
25 | import org.springframework.web.servlet.ModelAndView;
26 |
27 | import javax.servlet.http.HttpServletRequest;
28 | import javax.servlet.http.HttpServletResponse;
29 | import java.io.IOException;
30 |
31 | @Controller("bpm_BpmFileDownloadController")
32 | public class BpmFileDownloadController extends FileDownloadController {
33 |
34 | /**
35 | * Method is used by the BPMN modeler for extracting custom stencil icon
36 | */
37 | @Override
38 | @RequestMapping(value = "/modeler/icon", method = RequestMethod.GET)
39 | public ModelAndView download(HttpServletRequest request, HttpServletResponse response) throws IOException {
40 | return super.download(request, response);
41 | }
42 |
43 | @Override
44 | protected UserSession getSession(HttpServletRequest request, HttpServletResponse response) throws IOException {
45 | return ControllerUtils.getUserSession(request);
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/modules/web/src/com/haulmont/bpm/web/exceptions/EmptyModelExceptionHandler.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.web.exceptions;
18 |
19 | import com.haulmont.bpm.exception.InvalidModelException;
20 | import com.haulmont.cuba.core.global.Messages;
21 | import com.haulmont.cuba.gui.WindowManager;
22 | import com.haulmont.cuba.gui.components.Frame;
23 | import com.haulmont.cuba.gui.exception.AbstractGenericExceptionHandler;
24 | import org.springframework.stereotype.Component;
25 |
26 | import javax.inject.Inject;
27 |
28 | @Component("bpm_EmptyModelExceptionHandler")
29 | public class EmptyModelExceptionHandler extends AbstractGenericExceptionHandler {
30 |
31 | @Inject
32 | protected Messages messages;
33 |
34 | public EmptyModelExceptionHandler() {
35 | super(InvalidModelException.class.getName());
36 | }
37 |
38 | @Override
39 | protected void doHandle(String className, String message, Throwable throwable, WindowManager windowManager) {
40 | String msg = message;
41 | if ("Model is empty".equals(message)) {
42 | msg = messages.getMessage(EmptyModelExceptionHandler.class, "emptyModel.msg");
43 | } else if ("Model elements are not linked properly".equals(message)) {
44 | msg = messages.getMessage(EmptyModelExceptionHandler.class, "missingLinking.msg");
45 | }
46 | windowManager.showNotification(msg, Frame.NotificationType.WARNING);
47 | }
48 | }
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/service/ProcessRepositoryServiceBean.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.core.ProcessRepositoryManager;
20 | import com.haulmont.bpm.entity.ProcDefinition;
21 | import com.haulmont.bpm.entity.ProcModel;
22 | import org.springframework.stereotype.Service;
23 |
24 | import javax.annotation.Nullable;
25 | import javax.inject.Inject;
26 |
27 | @Service(ProcessRepositoryService.NAME)
28 | public class ProcessRepositoryServiceBean implements ProcessRepositoryService {
29 |
30 | @Inject
31 | protected ProcessRepositoryManager processRepositoryManager;
32 |
33 | @Override
34 | public ProcDefinition deployProcessFromXml(String xml, @Nullable ProcDefinition procDefinition, @Nullable ProcModel procModel) {
35 | return processRepositoryManager.deployProcessFromXml(xml, procDefinition, procModel);
36 | }
37 |
38 | @Override
39 | public String getProcessDefinitionXml(String actDeploymentId) {
40 | return processRepositoryManager.getProcessDefinitionXml(actDeploymentId);
41 | }
42 |
43 | @Override
44 | public String convertModelToProcessXml(String actModelId) {
45 | return processRepositoryManager.convertModelToProcessXml(actModelId);
46 | }
47 |
48 | @Override
49 | public void undeployProcess(String actDeploymentId) {
50 | processRepositoryManager.undeployProcess(actDeploymentId);
51 | }
52 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/procdefinition/ProcDefinitionEdit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.procdefinition;
18 |
19 | import com.haulmont.bpm.service.ProcessRepositoryService;
20 | import com.haulmont.cuba.gui.components.AbstractEditor;
21 | import com.haulmont.bpm.entity.ProcDefinition;
22 | import com.haulmont.cuba.gui.components.SourceCodeEditor;
23 | import com.haulmont.cuba.gui.components.TabSheet;
24 |
25 | import javax.inject.Inject;
26 | import java.util.Map;
27 |
28 | public class ProcDefinitionEdit extends AbstractEditor {
29 |
30 | @Inject
31 | protected TabSheet tabSheet;
32 |
33 | @Inject
34 | protected ProcessRepositoryService processRepositoryService;
35 |
36 | @Inject
37 | protected SourceCodeEditor xmlField;
38 |
39 | protected boolean xmlTabInitialized;
40 |
41 | @Override
42 | public void init(Map params) {
43 | super.init(params);
44 | initTabSheet();
45 | }
46 |
47 | protected void initTabSheet() {
48 | tabSheet.addSelectedTabChangeListener(event -> {
49 | if ("xmlTab".equals(event.getSelectedTab().getName()) && !xmlTabInitialized) {
50 | String processXml = processRepositoryService.getProcessDefinitionXml(getItem().getActId());
51 | xmlField.setValue(processXml);
52 | xmlTabInitialized = true;
53 | }
54 | });
55 | }
56 | }
--------------------------------------------------------------------------------
/modules/core/src/com/haulmont/bpm/service/ProcessFormServiceBean.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.service;
18 |
19 | import com.haulmont.bpm.core.ProcessFormManager;
20 | import com.haulmont.bpm.entity.ProcDefinition;
21 | import com.haulmont.bpm.entity.ProcTask;
22 | import com.haulmont.bpm.form.ProcFormDefinition;
23 | import org.springframework.stereotype.Service;
24 |
25 | import javax.annotation.Nullable;
26 | import javax.inject.Inject;
27 | import java.util.Map;
28 |
29 | @Service(ProcessFormService.NAME)
30 | public class ProcessFormServiceBean implements ProcessFormService {
31 |
32 | @Inject
33 | protected ProcessFormManager processFormManager;
34 |
35 | @Override
36 | public Map getOutcomesWithForms(ProcTask procTask) {
37 | return processFormManager.getOutcomesWithForms(procTask);
38 | }
39 |
40 | @Override
41 | @Nullable
42 | public ProcFormDefinition getStartForm(ProcDefinition procDefinition) {
43 | return processFormManager.getStartForm(procDefinition);
44 | }
45 |
46 | @Override
47 | public ProcFormDefinition getCancelForm(ProcDefinition procDefinition) {
48 | return processFormManager.getCancelForm(procDefinition);
49 | }
50 |
51 | @Override
52 | public ProcFormDefinition getDefaultCompleteTaskForm(ProcDefinition procDefinition) {
53 | return processFormManager.getDefaultCompleteTaskForm(procDefinition);
54 | }
55 | }
--------------------------------------------------------------------------------
/modules/global/src/com/haulmont/bpm/entity/ProcModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.entity;
18 |
19 | import javax.persistence.Entity;
20 | import javax.persistence.Table;
21 | import javax.persistence.Column;
22 | import com.haulmont.cuba.core.entity.StandardEntity;
23 | import javax.persistence.Lob;
24 | import com.haulmont.chile.core.annotations.NamePattern;
25 |
26 | @NamePattern("%s|name")
27 | @Table(name = "BPM_PROC_MODEL")
28 | @Entity(name = "bpm$ProcModel")
29 | public class ProcModel extends StandardEntity {
30 | private static final long serialVersionUID = 4795058970950415977L;
31 |
32 | @Column(name = "NAME", nullable = false, unique = true)
33 | protected String name;
34 |
35 | @Column(name = "ACT_MODEL_ID")
36 | protected String actModelId;
37 |
38 | @Lob
39 | @Column(name = "DESCRIPTION")
40 | protected String description;
41 |
42 | public void setDescription(String description) {
43 | this.description = description;
44 | }
45 |
46 | public String getDescription() {
47 | return description;
48 | }
49 |
50 | public void setName(String name) {
51 | this.name = name;
52 | }
53 |
54 | public String getName() {
55 | return name;
56 | }
57 |
58 | public void setActModelId(String actModelId) {
59 | this.actModelId = actModelId;
60 | }
61 |
62 | public String getActModelId() {
63 | return actModelId;
64 | }
65 | }
--------------------------------------------------------------------------------
/modules/gui/src/com/haulmont/bpm/gui/form/generic/fieldgenerator/FormFieldGeneratorsFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2008-2019 Haulmont.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package com.haulmont.bpm.gui.form.generic.fieldgenerator;
18 |
19 | import com.haulmont.bpm.gui.form.generic.GenericProcForm;
20 |
21 | import java.util.HashMap;
22 | import java.util.Map;
23 |
24 | /**
25 | * Factory that produces field generators for {@link GenericProcForm}
26 | */
27 |
28 | public class FormFieldGeneratorsFactory {
29 |
30 | protected Map generatorsMap;
31 |
32 | public FormFieldGeneratorsFactory() {
33 | init();
34 | }
35 |
36 | public void init() {
37 | generatorsMap = new HashMap<>();
38 | generatorsMap.put("string", new StringFieldGenerator());
39 | generatorsMap.put("boolean", new BooleanFieldGenerator());
40 | generatorsMap.put("int", new IntegerFieldGenerator());
41 | generatorsMap.put("long", new LongFieldGenerator());
42 | generatorsMap.put("decimal", new BigDecimalFieldGenerator());
43 | generatorsMap.put("date", new DateFieldGenerator());
44 | generatorsMap.put("dateTime", new DateTimeFieldGenerator());
45 | generatorsMap.put("entity", new EntityFieldGenerator());
46 | generatorsMap.put("enum", new EnumFieldGenerator());
47 | }
48 |
49 | public FormFieldGenerator createFormFieldGenerator(String paramTypeName) {
50 | return generatorsMap.get(paramTypeName);
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/modules/core/test/com/haulmont/bpm/process/testAutomaticProcActorCreation.bpmn20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | manager
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------