#
# https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#common-application-properties
#
#server configuration
server.address=${container.hostname}
server.port=${container.port}

cxf.path=/${kie.server.context}/services/rest

#jbpm configuration
jbpm.executor.enabled=${jbpm.executor.enabled}
#jbpm.executor.retries=5
#jbpm.executor.interval=0
#jbpm.executor.threadPoolSize=1
#jbpm.executor.timeUnit=SECONDS

kieserver.location=${kie.server.base.http.url}
#kieserver.controllers=

kieserver.drools.enabled=${kieserver.drools.enabled}
kieserver.dmn.enabled=${kieserver.dmn.enabled}
kieserver.jbpm.enabled=${kieserver.jbpm.enabled}
kieserver.jbpmui.enabled=${kieserver.jbpmui.enabled}
kieserver.casemgmt.enabled=${kieserver.casemgmt.enabled}
kieserver.optaplanner.enabled=${kieserver.optaplanner.enabled}
kieserver.swagger.enabled=${kieserver.swagger.enabled}
kieserver.prometheus.enabled=${kieserver.prometheus.enabled}
kieserver.scenariosimulation.enabled=${kieserver.scenariosimulation.enabled}

# task assigning extensions enablement
kieserver.taskAssigning.runtime.enabled=${kieserver.taskAssigning.runtime.enabled}
kieserver.taskAssigning.planning.enabled=${kieserver.taskAssigning.planning.enabled}

# only required for jBPM
#data source configuration
spring.datasource.username=${org.kie.server.datasource.username}
spring.datasource.password=${org.kie.server.datasource.password}
spring.datasource.url=${org.kie.server.datasource.connection.url}
spring.datasource.xa.data-source-class-name=${org.kie.server.datasource.driver.class}

narayana.dbcp.enabled=true
narayana.dbcp.maxTotal=20

#hibernate configuration
spring.jpa.properties.hibernate.dialect=${org.kie.server.persistence.dialect}
spring.jpa.properties.hibernate.show_sql=false
spring.jpa.properties.hibernate.hbm2ddl.auto=create-drop
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

#transaction manager configuration
spring.jta.narayana.transaction-manager-id=1


# task assigning configuration parameters
taskassigning.processRuntime.url=${taskassigning.processRuntime.url}
taskassigning.processRuntime.user=${taskassigning.processRuntime.user}
taskassigning.processRuntime.pwd=${taskassigning.processRuntime.pwd}
taskassigning.processRuntime.targetUser=${taskassigning.processRuntime.targetUser}
taskassigning.core.model.planningUserId=${taskassigning.core.model.planningUserId}
taskassigning.publishWindowSize=${taskassigning.publishWindowSize}
taskassigning.solutionSyncInterval=${taskassigning.solutionSyncInterval}

taskassigning.userSystem.name=${taskassigning.userSystem.name}
taskassigning.userSystem.simple.users=${taskassigning.userSystem.simple.users}
taskassigning.userSystem.simple.skills=${taskassigning.userSystem.simple.skills}