├── 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 |
21 | 22 | 23 | 24 |
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 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 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 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 | [![license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0) 4 | [![Build Status](https://travis-ci.org/cuba-platform/bpm.svg?branch=master)](https://travis-ci.org/cuba-platform/bpm) 5 | [![Documentation](https://img.shields.io/badge/documentation-online-03a9f4.svg)](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 |