Page History
Jira | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Note |
---|
This feature is part of the ongoing effort to support more DCM features natively in the Blueriq Runtime. Its modules and behavior may change over time. Please check release notes and upgrade instructions when using it. |
We are in the process of separating the Process Engine from the Blueriq Runtime. Additionally, we are creating a Case Engine, which will support DCM natively, so there is no more need to include DCM application logic in your Blueriq models.
Communication between Runtime and Case Engine will happen asynchronously wherever possible. If you want to know more about this effort, please contact Blueriq Support.
For more information, see:
...
The Case Engine component manages all operations on cases, case data and tasks. It communicates with the Blueriq Runtime through asynchronous messages and a REST API.
The Case Engine component is essential to use DCM 2.0 and depends on multiple other components to function properly.
This section explains how to install the Case Engine component, how to configure it and which other components are needed to be installed.
Installation
The Case Engine will be delivered with the runtime and can be downloaded here : https://artifactory.blueriq.com/artifactory/libs-BQ15-download/ alternatively you can also use the DCM 2.0 Beta Release which also includes the case engine
The case engine is a standalone application and should be started directly in Java using the command line:
Code Block | ||||
---|---|---|---|---|
| ||||
$ java -Dserver.port=18081 -Dspring.config.additional-location=file:/// config/ /DCM2/CaseEngine/config -jar blueriq-dcm-case-engine-14.11.0.4888.jar |
Dependencies
The case engine component depends on the following components:
- Audit component [editor]
- DCM Lists Components
- Timeline SQL Store component
- Trace SQL Store component [editor]
- DCM queueing RabbitMQ
- Document database MongoDB
Configuration
Specific for the case engine there are mutliple properties that needs to be set.
These properties are divided into three files:
- application.properties: common properties that concern security, logging and the connection to the customer data
- case-engine.properties: properties for several queues, mongoDB and quartz
- external-datasource.properties: propterties that enable the case engine to communicate with the process data sql store
Create the files in the additional config location of the case engine and copy and paste the corresponding properties into each file.
Code Block | ||||
---|---|---|---|---|
| ||||
### Users ###
blueriq.security.auth-providers.local01.type=in-memory
blueriq.security.auth-providers.local01.users.location=users.properties
blueriq.security.auth-providers-chain=local01
### Customerdata ###
blueriq.customerdata-client.url=http://localhost:30002/customerdata/api/v1/
blueriq.customerdata-client.username=blueriq
blueriq.customerdata-client.password=welcome
### Exports ###
blueriq.exports.description=Exports
blueriq.exports.prefix=export
blueriq.exports.folder=exports
blueriq.exports.enabled=true
### Security settings ###
blueriq.security.csrf-protection.enabled=false
### Blueriq logging ###
logging.level.com.aquima=DEBUG
logging.level.com.blueriq=DEBUG
logging.file.name=logs/case-engine.log
spring.main.allow-circular-references=true
|
Code Block | ||||
---|---|---|---|---|
| ||||
blueriq.case.engine.rabbitmq.host=localhost
blueriq.case.engine.rabbitmq.port=30010
blueriq.case.engine.rabbitmq.username=blueriq
blueriq.case.engine.rabbitmq.password=welcome
blueriq.case.engine.rabbitmq.virtualHost=/
blueriq.case.engine.rabbitmq.ssl.enabled=false
blueriq.case.engine.rabbitmq.queueNames=dcmEventsQueue
blueriq.case.engine.rabbitmq.exchangeName=dcmEvents
blueriq.process.engine.v2.rabbitmq.host=localhost
blueriq.process.engine.v2.rabbitmq.port=30010
blueriq.process.engine.v2.rabbitmq.username=blueriq
blueriq.process.engine.v2.rabbitmq.password=welcome
blueriq.process.engine.v2.rabbitmq.virtualHost=/
blueriq.process.engine.v2.rabbitmq.ssl.enabled=false
blueriq.process.engine.v2.rabbitmq.exchangeName=dcmTasksEvents
blueriq.case.engine.scheduler.rabbitmq.host=localhost
blueriq.case.engine.scheduler.rabbitmq.port=30010
blueriq.case.engine.scheduler.rabbitmq.username=blueriq
blueriq.case.engine.scheduler.rabbitmq.password=welcome
blueriq.case.engine.scheduler.rabbitmq.virtualHost=/
blueriq.case.engine.scheduler.rabbitmq.ssl.enabled=false
blueriq.case.engine.scheduler.rabbitmq.exchangeName=dcmScheduledEvents
blueriq.case.engine.maintenance.rabbitmq.host=localhost
blueriq.case.engine.maintenance.rabbitmq.port=30010
blueriq.case.engine.maintenance.rabbitmq.username=blueriq
blueriq.case.engine.maintenance.rabbitmq.password=welcome
blueriq.case.engine.maintenance.rabbitmq.virtualHost=/
blueriq.case.engine.maintenance.rabbitmq.ssl.enabled=false
blueriq.case.engine.maintenance.rabbitmq.exchangeName=dcmMaintenanceEvents
blueriq.case.engine.data.mongodb.host=localhost
blueriq.case.engine.data.mongodb.port=30012
blueriq.case.engine.data.mongodb.database=caseEngine
blueriq.locking.mongodb.host=localhost
blueriq.locking.mongodb.port=30012
blueriq.locking.mongodb.database=locks
spring.quartz.job-store-type=memory
spring.quartz.properties.org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
spring.quartz.properties.org.quartz.threadPool.threadCount=2 |
Code Block | ||||
---|---|---|---|---|
| ||||
#### Datasources H2 ###
blueriq.datasource.process-sql-store.url=jdbc:h2:./dcm;AUTO_SERVER=TRUE
blueriq.datasource.process-sql-store.username=sa
blueriq.datasource.process-sql-store.password=
blueriq.datasource.process-sql-store.driverClassName=org.h2.Driver
blueriq.hibernate.process-sql-store.hbm2ddl.auto=create
blueriq.hibernate.process-sql-store.dialect=org.hibernate.dialect.H2Dialect
blueriq.hibernate.process-sql-store.criteria.literal_handling_mode=BIND
blueriq.hibernate.process-sql-store.globally_quoted_identifiers=true
blueriq.hibernate.process-sql-store.globally_quoted_identifiers_skip_column_definitions=true
|
...