#-----------------------------------------------------------------------------
# Standard Shark configuration file
#-----------------------------------------------------------------------------

######################### NAME
# the name of shark instance
enginename=Shark

######################### ENVIRONMENT TYPE
# The type of environment. Standard type is assumed by default. If shark is deployed as
# Geronimo EJB, this property should be set to 'geronimo'
#EnvironmentType=standard

######################### KERNEL SETTING for UNSATISFIED SPLIT CONDITIONS
# There can be a cases when some activity that has outgoing transitions other
# than to itself (other then circular one), has nowhere to go based on
# calculation of these conditions (all of the conditions are evaluated to false)
# In that case, the process could hang (it will not go anywhere, and it will
# also not finish), finish (if there is no other active activities), or
# the last transaction that finishes the activity will be rolled back.
# This settings apply to the block activity's activities also, but the difference
# is that if you set parameter to FINISH_IF_POSSIBLE, shark will actually
# finish block activity if possible.
# The possible values for the entry are IGNORE, FINISH_IF_POSSIBLE and ROLLBACK,
# and default kernel behaviour is FINISH_IF_POSSIBLE
#SharkKernel.UnsatisfiedSplitConditionsHandling=FINISH_IF_POSSIBLE

######################### KERNEL SETTING for OTHERWISE TRANSITION
# XPDL spec does not say that OTHERWISE transition should be executed only
# if no other transition condition is evaluated to true (in the case of XOR split).
# So, if you i.e. put OTHERWISE transition to be the first outgoing transition
# of some activity, other transition's condition won't be even considered.
# You can configure shark to deviate from the spec, so that OTHERWISE transition
# is evaluated and executed only if no other transition condition is evaluated to
# true. To do that, you should set the following property to true.
SharkKernel.handleOtherwiseTransitionLast=true

######################## KERNEL SETTING FOR ASSIGNMENT CREATION
# Determines if kernel will create assignments - default is true.
# There are situations when assignment creation is not necessary,
# and this is the case when you always execute activities directly using
# change_state() WfActivity method, and there is only one assignment per
# activity, that probably belongs to the user that created the process.
#SharkKernel.createAssignments=true

######################## KERNEL SETTING FOR DEFAULT ASSIGNMENT CREATION
# Determines if kernel will create default assignment for the process creator
# if  assignment manager return zero assignments
# NOTE: if this property is set to true, there can be side-effect
#       with Tool activities with Manual Start and Finish mode
# Shark kernel default value is true
#SharkKernel.createDefaultAssignment=true

######################## KERNEL SETTING FOR RESOURCE HANDLING DURING ASSIGNMENT CREATION
# Defines the limit number for loading all WfResources from DB before creating assignments.
# When kernel determines that more assignments than the number specified by the limit
# should be created it will make a call to retrieve all WfResources from DB.
# When DODS is used as a persistence layer, it can improve the performance
# if there are not too many WfResource objects in the system.
#SharkKernel.LimitForRetrievingAllResourcesWhenCreatingAssignments=5


######################### KERNEL SETTING for ASSIGNMENT RE-EVALUATION
# Determines if there will be the assignment re-evaluation during shark startup
# If you set this property to true, all not-accepted assignments are going to
# be re-evaluated (old ones will be deleted, and new ones will be created
# based on current mappings, current state of User/Group information and
# current implementation of AssignmentManager class
# The shark kernel default is false
#Assignments.InitialReevaluation=false

######################## KERNEL SETTING FOR ASSIGNMENT HANDLING
# Determines if kernel will delete other assignments from DB everytime when
# someone accepts/rejects assignment, and will re-evaluate assignments
# each time this happens.
# If it is set to true, the side-effect is that if there was reassignment,
# and the user that got this reassigned assignment rejects it, he will
# not get it afterwards
# The shark kernel default is true
#SharkKernel.deleteOtherAssignments=true

######################### STORING CONNECTION INFO
# Determines if connection info will be stored into the map
#SharkKernel.storingConnectionInfo=true

######################### KERNEL SETTINGS for CACHE INITIALIZATION
# Following can be set to init process and resource caches at shark startup.
# If you uncomment following lines, all processes and resources will be filled
# into cache (if the cache size allows this).
# The value of following properties can be set as a comma separated list of
# the process/resource ids that need to be put into cache on engine start,
# e.g.: Cache.InitProcessCacheString=1_test_js_basic, 5_test_js_Game
# Shark kernel default is "not init anything"
#Cache.InitProcessCacheString=*
#Cache.InitResourceCacheString=*

######################### KERNEL SETTING for CACHING CLOSED PROCESSES
# If Shark's caching manager is specified, you can define if closed
# processes will be cached or not. Kernel's default is false.
#SharkKernel.cacheClosedProcesses=false

######################### KERNEL OPTIMIZATION PARAMETER FOR ONE-USER ONE PROCESS SCENARIO
# If it is sure there is only one thread at a time dealing with one process instance
# setting this parameter to false can optimize performance if caching manager is
# also specified. Kernel's default value is "true"
#SharkKernel.useReadOnlyConcept=true

######################## KERNEL SETTING FOR DEADLINE RE-EVALUATION
# Determines if deadlines will be re-evaluated each time external deadline
# management check shark deadlines.
# Default kernel setting is true.
#Deadlines.reevaluateDeadlines=true

# Determines if process or activity context will be used when re-evaluating deadlines
# Default kernel setting is activity context.
Deadlines.useProcessContext=true

# Determines if asynchronous deadline should be raised only once, or every time
# when deadline check is performed.
# Default kernel setting is true (to raise deadline only once).
#Deadlines.raiseAsyncDeadlineOnlyOnce=true

######################## KERNEL AND EVENT AUDIT PERSISTENT MANAGER SETTING FOR (NON)PERSISTING OLD EVENT AUDIT DATA
# Determines if old event audit data should be persisted or not.
# Default is to persist.
# The value of this property must be respected by both, the kernel, and event
# audit manager
#PERSIST_OLD_EVENT_AUDIT_DATA=true

######################## KERNEL SETTING FOR THE PRIORITY HANDLING
# Determines if it is allowed to set the priority of the WfProcess/WfActivity
# out of the range [1-5] as defined by OMG spec
# Default kernel setting is false.
#SharkKernel.allowOutOfRangePriority=false

######################## KERNEL SETTING FOR THE FILTER BUILDERS
# Determines if filter builders will make SQL queries to always check
# against uppercase values of VARCHAR fields
# Default kernel setting is false.
#FilterBuilder.useUppercaseStringQueries=false

######################### CALLBACK UTILITIES
# used for logging, and getting the shark properties
# the default kernel setting is as follows
#CallbackUtilitiesClassName=org.enhydra.shark.CallbackUtil

CallbackUtil.TimeProfiler.default=120
CallbackUtil.TimeProfiler.level=info
#CallbackUtil.TimeProfiler.WfProcessWrapper.start=-10
#CallbackUtil.TimeProfiler.SharkConnectionImpl=-10


######################### OBJECT FACTORY
# the class name of the factory used to creating kernel objects
# the default kernel setting is as follows
#ObjectFactoryClassName=org.enhydra.shark.SharkObjectFactory

######################### TOOL ACTIVITY HANDLER
# the class name of the manager used to execute tool agents
# the default kernel setting is as follows
#ToolActivityHandlerClassName=org.enhydra.shark.StandardToolActivityHandler
ToolActivityHandlerClassName=org.joget.workflow.shark.WorkflowToolActivityHandler

######################### Tx SYNCHRONIZATION FACTORY
TxSynchronizationFactoryClassName=org.enhydra.shark.SharkTxSynchronizationFactory
SharkTxSynchronizationFactory.XATransactionManagerLookupName=jwTransactionManager
#SharkTxSynchronizationFactory.debug=false

######################### XPDL Validation settings
ValidateSubFlowReferences=true
ValidatePerformerExpressions=true
ValidateActualParameterExpressions=true
ValidateConditionExpressions=true
ValidateDeadlineExpressions=true
ValidateConditionByType=false
AllowUndefinedStart=false
AllowUndefinedEnd=true

SharkKernel.IgnoreXPDLValidationWarnings=true


#-----------------------------------------------------------------------------
#                   DODS'S Database Manager Configuration
#-----------------------------------------------------------------------------
# Here is a DB configuration for default DODS implementations of shark's
# persistence interfaces.
#

#DatabaseManager.DB.sharkdb.Connection.ConnectionFactory=com.lutris.appserver.server.sql.DataSourceDBConnectionFactory
#DatabaseManager.DB.sharkdb.ConnectionAllocator=com.lutris.appserver.server.sql.datasource.DataSourceConnectionAllocator
#DatabaseManager.DB.shark.Connection.DataSourceName = java:comp/datasource/sharkdb
DatabaseManager.DB.sharkdb.Connection.DataSourceName=jdbc/sharkdb

#
# Turn on/off debugging for transactions or queries. Valid values
# are "true" or "false".
#
#DatabaseManager.Debug="false"

#
# Special settings for Postgresql DB
#DatabaseManager.ObjectIdColumnName=ObjectId
#DatabaseManager.VersionColumnName=ObjectVersion

#
# Maximum amount of time that a thread will wait for
# a connection from the connection pool before an
# exception is thrown.  This will prevent possible dead
# locks.  The time out is in milliseconds.  If the
# time out is <= zero, the allocation of connections
# will wait indefinitely.
#
#DatabaseManager.DB.sharkdb.Connection.AllocationTimeout=10000

#
# Properties required for HSQL
# NOTE: When working with other DBs, you should comment these three properties
#
DatabaseManager.DB.sharkdb.ObjectId.NextWithPrefix = false
DatabaseManager.DB.sharkdb.ObjectId.NextColumnName = nextoid
#DatabaseManager.DB.sharkdb.Connection.ShutDownString = SHUTDOWN


#
# Used to log database (SQL) activity.
#
DatabaseManager.DB.sharkdb.Connection.Logging=true

DatabaseManager.defaults.XATransactionManagerLookupName=jwTransactionManager

#
# Default cache configuration
#
#DatabaseManager.defaults.cache.maxCacheSize=100
#DatabaseManager.defaults.cache.maxSimpleCacheSize=50
#DatabaseManager.defaults.cache.maxComplexCacheSize=25
DatabaseManager.defaults.cache.maxCacheSize=0
DatabaseManager.defaults.cache.maxSimpleCacheSize=0
DatabaseManager.defaults.cache.maxComplexCacheSize=0
#DatabaseManager.defaults.cache.reserveFactor=0.1


#
# Default table configuration
#
#DatabaseManager.defaults.maxExecuteTime=200

#DatabaseManager.defaults.CacheLockRetryCount=12
#DatabaseManager.defaults.CacheLockTimeout=120

#DatabaseManager.ConfigurationDir=@@/conf/dods

#=============================================================================
# Default assignment manager is Standard
#
#-----------------------------------------------------------------------------
#
# Standard assignment manager defaults
#
#AssignmentManagerClassName=org.enhydra.shark.assignment.StandardAssignmentManager

# Participant map and UserGroup details for StandardAssignmentManager
#StandardAssignmentManager.ParticipantMapPersistenceManagerClassName=org.enhydra.shark.partmappersistence.DODSParticipantMappingAdmin
#StandardAssignmentManager.UserGroupManagerClassName=org.enhydra.shark.usergroup.DODSUserGroupManagerAdmin
#StandardAssignmentManager.UserGroupManagerClassName=wf.model.KacangUserGroupManagerAdmin

#
# HistoryRelated assigment manager
#
AssignmentManagerClassName=org.enhydra.shark.assignment.HistoryRelatedAssignmentManager

HistoryRelatedAssignmentManager.extAttrReassignToOriginalPerformer=ReassignToOriginalPerformer
HistoryRelatedAssignmentManager.extAttrAssignToPerformerOfActivity=AssignToPerformerOfActivity
HistoryRelatedAssignmentManager.extAttrDoNotAssignToPerformerOfActivity=DoNotAssignToPerformerOfActivity

# Participant map and UserGroup details for HistoryRelatedAssignmentManager
#HistoryRelatedAssignmentManager.ParticipantMapPersistenceManagerClassName=org.enhydra.shark.partmappersistence.DODSParticipantMappingAdmin
#HistoryRelatedAssignmentManager.UserGroupManagerClassName=org.enhydra.shark.usergroup.DODSUserGroupManagerAdmin

# Custom Managers
AssignmentManagerClassName=org.joget.workflow.shark.WorkflowAssignmentManager
WorkflowAssignmentManager.UserGroupManagerClassName=org.joget.workflow.shark.WorkflowUserGroupManagerAdmin



#
# XPDLStraightParticipantMapping assigment manager
#
#AssignmentManagerClassName=org.enhydra.shark.assignment.XPDLStraightParticipantMappingAssignmentManager


#=============================================================================
# Default cache is LRU
#
#-----------------------------------------------------------------------------
# Cache defaults
#
#CacheManagerClassName=org.enhydra.shark.caching.LRUCacheMgr

# Default LRU cache sizes (LRU implementation default is 100 for each cache)
#LRUProcessCache.Size=100
#LRUResourceCache.Size=100
LRUProcessCache.Size=0
LRUResourceCache.Size=0

#CacheManagerClassName=org.enhydra.shark.caching.SimpleCacheMgr
# Default simple cache sizes
#SimpleProcessCache.Size=100
#SimpleResourceCache.Size=100

#=============================================================================
# Default event audit manager is DODS
#
#-----------------------------------------------------------------------------
#
# DODS event audit manager defaults
#
#EventAuditManagerClassName=org.enhydra.shark.eventaudit.DODSEventAuditManager
EventAuditManagerClassName=org.joget.workflow.shark.WorkflowEventAuditManager

# Determines the maximum size of String that will be stored in VARCHAR field.
# String which size is greater than specified value will be stored as a BLOB.
# The maximumum size that can be set is 4000 (the default one)
#DODSEventAuditManager.maxVARCHARSize=4000

# Determines which data model will be used for storing process and activity
# variable event audits. There are two options:
#  1. using standard data model, where all data types are in one table (including
#     BLOB data type for persisting custom Java objects and large Strings
#  2. using optional data model, where one table contains all data types except
#     BLOB, and there is another table that references previous table, and is
#     used only for storing BLOB information (for persisting custom Java objects
#     and large Strings)
# Default is to use standard data model, but using optional data model can improve
# performance in use cases where there are not so many custom Java objects and
# large String objects and when shark and DODS caches are not used, and this is
# especially better choice if using Oracle DB.
#DODSEventAuditManager.useStandardVariableDataModel=true

# Specifies if array variables will be stored as BLOBS
#DODSEventAuditManager.storeArraysAsBLOBs=true

#
# Notifying event audit manager
#
#EventAuditManagerClassName=org.enhydra.shark.eventaudit.NotifyingEventAuditManager

# if set to true, displays some debug info (mostly when error happens)
#NotifyingEventAuditManager.Debug=false


#=============================================================================
# Default instance persistence manager is DODS
#
#-----------------------------------------------------------------------------
#
# DODS instance persistent manager defaults
#
#InstancePersistenceManagerClassName=org.enhydra.shark.instancepersistence.DODSPersistentManager
InstancePersistenceManagerClassName=org.joget.workflow.shark.WorkflowDODSPersistentManager

# Determines if finished processes which state is "closed.completed" should be
# automatically deleted from DB (DODS persistence manager default is false)
#DODSPersistentManager.deleteFinishedProcesses=false

# Determines the maximum size of String that will be stored in VARCHAR field.
# String which size is greater than specified value will be stored as a BLOB.
# The maximumum size that can be set is 4000 (the default one)
#DODSPersistentManager.maxVARCHARSize=4000

# Determines which data model will be used for storing process and activity
# variables. There are two options:
#  1. using standard data model, where all data types are in one table (including
#     BLOB data type for persisting custom Java objects and large Strings
#  2. using optional data model, where one table contains all data types except
#     BLOB, and there is another table that references previous table, and is
#     used only for storing BLOB information (for persisting custom Java objects
#     and large Strings)
# Default is to use standard data model, but using optional data model can improve
# performance in use cases where there are not so many custom Java objects and
# large String objects, and when shark and DODS caches are not used, and this is
# especially better choice if using Oracle DB.
#DODSPersistentManager.useStandardVariableDataModel=true

# Specifies if array variables will be stored as BLOBS
#DODSPersistentManager.storeArraysAsBLOBs=true

#=============================================================================
# Default logging manager is Standard
#
#-----------------------------------------------------------------------------
#
# Standard logging manager defaults
#
LoggingManagerClassName=org.enhydra.shark.logging.StandardLoggingManager


# Standard Logging manager is using log4j, and here is log4j configuration
#
log4j.rootLogger=warn, Console

#log4j.appender.Database=org.apache.log4j.RollingFileAppender
#log4j.appender.Database.File=@@/logs/SharkPersistence.log
#log4j.appender.Database.MaxFileSize=10MB
#log4j.appender.Database.MaxBackupIndex=2
#log4j.appender.Database.layout=org.apache.log4j.PatternLayout
#log4j.appender.Database.layout.ConversionPattern=%d{ISO8601}: %m%n

#log4j.appender.XMLOutFormatForPersistence=org.apache.log4j.FileAppender
#log4j.appender.XMLOutFormatForPersistence.File=@@/logs/chainsaw-persistence.log
#log4j.appender.XMLOutFormatForPersistence.append=false
#log4j.appender.XMLOutFormatForPersistence.layout=org.apache.log4j.xml.XMLLayout

#log4j.appender.PackageEvents=org.apache.log4j.RollingFileAppender
#log4j.appender.PackageEvents.File=@@/logs/SharkPackageHandlingEvents.log
#log4j.appender.PackageEvents.MaxFileSize=10MB
#log4j.appender.PackageEvents.MaxBackupIndex=2
#log4j.appender.PackageEvents.layout=org.apache.log4j.PatternLayout
#log4j.appender.PackageEvents.layout.ConversionPattern=%d{ISO8601}: %m%n

#log4j.appender.DatabaseManager=org.apache.log4j.RollingFileAppender
#log4j.appender.DatabaseManager.File=@@/logs/dods.log
#log4j.appender.DatabaseManager.MaxFileSize=10MB
#log4j.appender.DatabaseManager.MaxBackupIndex=2
#log4j.appender.DatabaseManager.layout=org.apache.log4j.PatternLayout
#log4j.appender.DatabaseManager.layout.ConversionPattern=%d{ISO8601}: %m%n

#log4j.appender.XMLOutFormatForPackageEvents=org.apache.log4j.FileAppender
#log4j.appender.XMLOutFormatForPackageEvents.File=@@/logs/chainsaw-packageevents.log
#log4j.appender.XMLOutFormatForPackageEvents.append=false
#log4j.appender.XMLOutFormatForPackageEvents.layout=org.apache.log4j.xml.XMLLayout

#log4j.appender.SharkExecution=org.apache.log4j.RollingFileAppender
#log4j.appender.SharkExecution.File=@@/logs/SharkExecutionFlow.log
#log4j.appender.SharkExecution.MaxFileSize=10MB
#log4j.appender.SharkExecution.MaxBackupIndex=2
#log4j.appender.SharkExecution.layout=org.apache.log4j.PatternLayout
#log4j.appender.SharkExecution.layout.ConversionPattern=%d{ISO8601}: %m%n

#log4j.appender.XMLOutFormatForExecution=org.apache.log4j.FileAppender
#log4j.appender.XMLOutFormatForExecution.File=@@/logs/chainsaw-execution.log
#log4j.appender.XMLOutFormatForExecution.append=false
#log4j.appender.XMLOutFormatForExecution.layout=org.apache.log4j.xml.XMLLayout

#log4j.appender.NTEventLog=org.apache.log4j.nt.NTEventLogAppender
#log4j.appender.NTEventLog.source=SharkCORBA-Service
#log4j.appender.NTEventLog.layout=org.apache.log4j.PatternLayout
#log4j.appender.NTEventLog.layout.ConversionPattern="%d{ISO8601}: [%t], %p, %c: %m%n"

#log4j.appender.TP=org.apache.log4j.RollingFileAppender
#log4j.appender.TP.File=@@/logs/tp.log
#log4j.appender.TP.MaxFileSize=10MB
#log4j.appender.TP.MaxBackupIndex=2
#log4j.appender.TP.layout=org.apache.log4j.PatternLayout
#log4j.appender.TP.layout.ConversionPattern=%d{ISO8601}: [%t], %p, %c: %m%n

#log4j.appender.TP-IP=org.apache.log4j.RollingFileAppender
#log4j.appender.TP-IP.File=@@/logs/tp-ip.log
#log4j.appender.TP-IP.MaxFileSize=10MB
#log4j.appender.TP-IP.MaxBackupIndex=2
#log4j.appender.TP-IP.layout=org.apache.log4j.PatternLayout
#log4j.appender.TP-IP.layout.ConversionPattern=%d{ISO8601}: [%t], %p, %c: %m%n

#log4j.appender.TP-EA=org.apache.log4j.RollingFileAppender
#log4j.appender.TP-EA.File=@@/logs/tp-ea.log
#log4j.appender.TP-EA.MaxFileSize=10MB
#log4j.appender.TP-EA.MaxBackupIndex=2
#log4j.appender.TP-EA.layout=org.apache.log4j.PatternLayout
#log4j.appender.TP-EA.layout.ConversionPattern=%d{ISO8601}: [%t], %p, %c: %m%n

log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ISO8601}: %m%n

#log4j.logger.Persistence=INFO
#log4j.logger.Persistence=INFO,Database,XMLOutFormatForPersistence

#log4j.logger.PackageEventLogger=INFO
#log4j.logger.PackageEventLogger=INFO,PackageEvents,XMLOutFormatForPackageEvents

#log4j.logger.TimeProfiler=INFO
#log4j.logger.TimeProfiler-InstancePersistence=INFO
#log4j.logger.TimeProfiler-EventAudit=INFO

#log4j.logger.Shark=INFO
#log4j.logger.Shark=INFO,Console,SharkExecution,XMLOutFormatForExecution

#log4j.logger.Scripting=INFO
#log4j.logger.Scripting=INFO,SharkExecution,XMLOutFormatForExecution

#log4j.logger.DatabaseManager=INFO

#=============================================================================
# Default repository persistent manager is DODS
#

#RepositoryPersistenceManagerClassName=org.enhydra.shark.repositorypersistence.FileSystemRepositoryPersistenceManager

# The location of xpdl repository.
# If you want to specify it by relative path, you must know that this path must
# be relative to the Shark.conf file (in conf folder)
FileSystemRepositoryPersistenceManager.XPDL_REPOSITORY=@INTERNAL_REPOSITORY@

# The location of xpdl history repository.
# If you want to specify it by relative path, you must know that this path must
# be relative to the Shark.conf file (in conf folder)
FileSystemRepositoryPersistenceManager.XPDL_HISTORY_REPOSITORY=@HISTORY_INTEREPSTRY@


RepositoryPersistenceManagerClassName=org.enhydra.shark.repositorypersistence.DODSRepositoryPersistenceManager

# The database used for Repository persistence when using DODS implementaion
#DODSRepositoryPersistenceManager.DatabaseName=sharkdb

# If set to true, the debug information on repository transaction will be
# written to console
#DODSRepositoryPersistenceManager.debug=false


#=============================================================================
# Default Scripting manager is Standard
#
#-----------------------------------------------------------------------------
#
#ScriptingManagerClassName=org.enhydra.shark.scripting.StandardScriptingManager
ScriptingManagerClassName=org.joget.workflow.shark.WorkflowScriptingManager

#=============================================================================
# Default Security manager is Standard
#
#-----------------------------------------------------------------------------
#
#SecurityManagerClassName=org.enhydra.shark.security.StandardSecurityManager

# The possible security modes for this implementation of Security API are:
# NO_SECURITY     -> everybody can do anything
# NORMAL_SECURITY -> the operations of accepting/rejecting assignment (or changing
#                     activity state to "open.running" or to "open.not_running.not_started"),
#                     of reassigning accepted assignment and of changing activity's
#                     variables ca be handled only by the user that owns a assignment/activity,
#                     or by some predefined admin user
# ADMIN_SECURITY  -> various operations as creating or terminating a process, getting
#                     the list of process manager's processes, process's activities, ...
StandardSecurityManager.SECURITY_MODE=NORMAL_SECURITY

# the list of admin users
StandardSecurityManager.AdminUser1=admin

#=============================================================================
# Default Tool agent settings
#
#-----------------------------------------------------------------------------
#
ToolAgentManagerClassName=org.enhydra.shark.toolagent.StandardToolAgentManager

# Application map details for StandardToolAgentManager
StandardToolAgentManager.ApplicationMapPersistenceManagerClassName=org.enhydra.shark.appmappersistence.DODSApplicationMappingAdmin

# The list of tool agents
ToolAgent.JavaClassToolAgent=org.enhydra.shark.toolagent.JavaClassToolAgent
ToolAgent.JavaScriptToolAgent=org.enhydra.shark.toolagent.JavaScriptToolAgent
ToolAgent.BshToolAgent=org.enhydra.shark.toolagent.BshToolAgent
ToolAgent.RuntimeApplicationToolAgent=org.enhydra.shark.toolagent.RuntimeApplicationToolAgent
ToolAgent.MailToolAgent=org.enhydra.shark.toolagent.MailToolAgent
ToolAgent.SOAPToolAgent=org.enhydra.shark.toolagent.SOAPToolAgent
ToolAgent.SchedulerToolAgent=org.enhydra.shark.toolagent.SchedulerToolAgent

# Pool size for Scheduler Tool Agent
SchedulerToolAgent.threadPoolSize=13

#
# the properties for our default implementation of MailMessageHandler interface
# required by MailToolAgent
#

# the parameters for retrieving mails, possible values for protocol are "pop3" and "imap"
DefaultMailMessageHandler.IncomingMailServer=someserver.co.yu
DefaultMailMessageHandler.IncomingMailProtocol=pop3
DefaultMailMessageHandler.StoreFolderName=INBOX
DefaultMailMessageHandler.IMAPPortNo=143
DefaultMailMessageHandler.POP3PortNo=110

# the parameters for sending mails
DefaultMailMessageHandler.SMTPMailServer=someserver.co.yu
DefaultMailMessageHandler.SMTPPortNo=25
DefaultMailMessageHandler.SourceAddress=shark@objectweb.org

# credentials
DefaultMailMessageHandler.Login=shark
DefaultMailMessageHandler.Password=sharkspwd

# authentication
DefaultMailMessageHandler.useAuthentication=false


#
# The default parameters used for SMIME implementation of MailMessageHandler
# interface required by MailToolAgent
#

# default enveloping parameters
SMIMEMailMessageHandler.Env.Default.Path=
SMIMEMailMessageHandler.Env.Default.KeystoreName=
# Allowable values are: BKS, JKS, PKCS12, UBER
SMIMEMailMessageHandler.Env.Default.KeystoreType=JKS
SMIMEMailMessageHandler.Env.Default.KeystorePassword=
# Allowable values are: DES(key length 56), DES_EDE3_CBC(key length 128,192), RC2_CBC (key length 40, 64, 128)
SMIMEMailMessageHandler.Env.Default.Algorithm=RC2_CBC
SMIMEMailMessageHandler.Env.Default.KeyLength=40

# default signing parameters
SMIMEMailMessageHandler.Sig.Default.Path=
SMIMEMailMessageHandler.Sig.Default.KeystoreName=
# Allowable values are: BKS, JKS, PKCS12, UBER
SMIMEMailMessageHandler.Sig.Default.KeystoreType=JKS
SMIMEMailMessageHandler.Sig.Default.KeystorePassword=
# Allowable values are: MD2_WITH_RSA, MD5_WITH_RSA, SHA1_WITH_DSA, SHA1_WITH_RSA
SMIMEMailMessageHandler.Sig.Default.Algorithm=SHA1_WITH_RSA
SMIMEMailMessageHandler.Sig.Default.IncludeCert=True
SMIMEMailMessageHandler.Sig.Default.IncludeSignAttrib=True
SMIMEMailMessageHandler.Sig.Default.ExternalSignature=True


# Default tool agent is used when there is no mapping for some
# XPDL application definition
DefaultToolAgent=org.enhydra.shark.toolagent.DefaultToolAgent
ToolAgentPluginDir=/tmp/taplugins

# Specifies the size of cache for holding ext. attributes (for shark performance reason)
# Default -1 means unlimited
#AbstractToolAgent.extAttribsCacheSize=-1

#=============================================================================
# WfEngineInterpoerability manager
#
#-----------------------------------------------------------------------------
#
#WfEngineInteroperabilityManagerClassName=org.enhydra.shark.interoperability.WfXMLInteroperabilityImpl
#Interoperability.Host=localhost
#Interoperability.Port=8080
#Interoperability.ObserverPath=/axis/services/asapObserverBinding
#Interoperability.IgnoreTerminateAndAbortRemoteExceptions=false


#=============================================================================
# DODS Settings for Id Generator
#-----------------------------------------------------------------------------
# default cache size for Ids (if cache size for particular object Id is not
# specified, then this size is used, and if this cache size also isn't
# specified, program default is used)
DODS.defaults.IdGenerator.CacheSize=1

# cache size for process instance Ids
#DODS.IdGenerator._process_.CacheSize=100

# cache size for activity instance Ids
#DODS.IdGenerator._activity_.CacheSize=100


################################# CORBA Settings when Shark is deployed as CORBA service
# host and port of CORBA service
nameserverhost=localhost
nameserverport=10123

# location of CORBA name server executable
nameserver.executable=@JAVA_DIR@/bin/tnameserv

# if set to value greater than zero, shark's CORBA wrapper will periodically
# restart nameserver (the given period is in minutes)
nameserver.restarting_period_minutes=0

# if set to true, CORBA service will start a thread for periodical check of deadlines
Deadlines.SERVER_SIDE_CHECKING=false

# The time in millis used to poll shark for checking deadlines if
# server side checking is ON
Deadlines.pollingTime=300000

# It has been noticed that CORBA server has memory leaking. This option
# tries to prevent it, by making the server track and disconnect objects
# when client says so (on SharkConnection and other intefaces disconnect
# method). When turned off, server behaves as before, not caring about
# object deallocation.
#
# See also: SharkCORBAServer.doneWith(org.omg.CORBA.Object toDisconnect)

CORBAServer.TrackAndDisconnect=true

# If set to true, when CORBA server has problem contacting external requester
# for the first time, due to the network problem or client application shutdown,
# next time it won't try to contact the requester for this process instance
CORBAServer.ignoreProblematicRequester=true
