T - the type of the param to determine the prioritypublic abstract class DefaultPriorityProvider<T> extends Object implements PriorityProvider<T>
| Modifier and Type | Field and Description | 
|---|---|
| static long | DEFAULT_PRIORITYThe default priority. | 
| static long | DEFAULT_PRIORITY_ON_RESOLUTION_FAILUREThe default priority in case of resolution failure. | 
| Constructor and Description | 
|---|
| DefaultPriorityProvider() | 
| Modifier and Type | Method and Description | 
|---|---|
| long | determinePriority(ExecutionEntity execution,
                 T param,
                 String jobDefinitionId) | 
| protected Long | evaluateValueProvider(ParameterValueProvider valueProvider,
                     ExecutionEntity execution,
                     String errorMessageHeading)Evaluates a given value provider with the given execution entity to determine
 the correct value. | 
| long | getDefaultPriority()Returns the default priority. | 
| long | getDefaultPriorityOnResolutionFailure()Returns the default priority in case of resolution failure. | 
| protected Long | getProcessDefinedPriority(ProcessDefinitionImpl processDefinition,
                         String propertyKey,
                         ExecutionEntity execution,
                         String errorMsgHead)Returns the priority which is defined in the given process definition. | 
| protected abstract Long | getProcessDefinitionPriority(ExecutionEntity execution,
                            T param)Returns the priority defined in the process definition. | 
| protected abstract Long | getSpecificPriority(ExecutionEntity execution,
                   T param,
                   String jobDefinitionId)Returns the priority defined in the specific entity. | 
| protected boolean | isSymptomOfContextSwitchFailure(Throwable t,
                               ExecutionEntity contextExecution) | 
| protected boolean | isValidLongValue(Number value)Checks if the given number is a valid long value. | 
| protected abstract void | logNotDeterminingPriority(ExecutionEntity execution,
                         Object value,
                         ProcessEngineException e)Logs the exception which was thrown if the priority can not be determined. | 
public static long DEFAULT_PRIORITY
public static long DEFAULT_PRIORITY_ON_RESOLUTION_FAILURE
public long getDefaultPriority()
public long getDefaultPriorityOnResolutionFailure()
protected Long evaluateValueProvider(ParameterValueProvider valueProvider, ExecutionEntity execution, String errorMessageHeading)
valueProvider - the provider which contains the valueexecution - the execution entityerrorMessageHeading - the heading which is used for the error messagepublic long determinePriority(ExecutionEntity execution, T param, String jobDefinitionId)
determinePriority in interface PriorityProvider<T>execution - may be null when the job is not created in the context of a
   running process instance (e.g. a timer start event)param - extra parameter to determine priority onjobDefinitionId - the job definition id if related to a jobprotected abstract Long getSpecificPriority(ExecutionEntity execution, T param, String jobDefinitionId)
execution - the current executionparam - the generic paramjobDefinitionId - the job definition id if related to a jobprotected abstract Long getProcessDefinitionPriority(ExecutionEntity execution, T param)
execution - the current executionparam - the generic paramprotected Long getProcessDefinedPriority(ProcessDefinitionImpl processDefinition, String propertyKey, ExecutionEntity execution, String errorMsgHead)
processDefinition - the process definition that should contains the prioritypropertyKey - the key which identifies the propertyexecution - the current executionerrorMsgHead - the error message header which is used if the evaluation failsprotected abstract void logNotDeterminingPriority(ExecutionEntity execution, Object value, ProcessEngineException e)
execution - the current execution entityvalue - the current valuee - the exception which was catchedprotected boolean isSymptomOfContextSwitchFailure(Throwable t, ExecutionEntity contextExecution)
protected boolean isValidLongValue(Number value)
value - the number which should be checkedCopyright © 2018. All rights reserved.