public class ProcCheckIfApprovalRequired
extends atg.nucleus.GenericService
implements atg.service.pipeline.PipelineProcessor
This processor is designed to interrupt the processOrder pipeline by stopping the chain when the Order needs approval. Otherwise, a successful return code triggers a normal transition to the next processor.
If the Order needs approval the processor returns PipelineProcessor.STOP_CHAIN_EXECUTION_AND_COMMIT
Otherwise, the processor returns a successful return code 2
to indicate a normal transition.
Modifier and Type | Field and Description |
---|---|
static int |
APPROVAL_NOT_REQUIRED
return code when an approval is not required
|
static int |
APPROVAL_REQUIRED
return code when approval is required
|
static java.lang.String |
CLASS_VERSION |
protected boolean |
mEnabled |
protected OrderApprovalTools |
mOrderApprovalTools |
protected int[] |
mRetCodes
Returns the valid return codes.
|
STOP_CHAIN_EXECUTION, STOP_CHAIN_EXECUTION_AND_COMMIT, STOP_CHAIN_EXECUTION_AND_ROLLBACK
Constructor and Description |
---|
ProcCheckIfApprovalRequired() |
Modifier and Type | Method and Description |
---|---|
OrderApprovalTools |
getOrderApprovalTools() |
int[] |
getRetCodes() |
boolean |
isEnabled()
Enables and disables the order approval check.
|
int |
runProcess(java.lang.Object pParam,
atg.service.pipeline.PipelineResult pResult)
Checks if the Order being processed needs approval to be submitted.
|
void |
setEnabled(boolean mEnabled)
Enables and disables the order approval check.
|
void |
setOrderApprovalTools(OrderApprovalTools mOrderApprovalTools) |
protected boolean |
shouldExecuteApprovalCheck(java.lang.Object pParam,
atg.service.pipeline.PipelineResult pResult)
This method is called to determine if the process should check if approval is
required for the current order.
|
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public static final java.lang.String CLASS_VERSION
public static final int APPROVAL_NOT_REQUIRED
public static final int APPROVAL_REQUIRED
protected int[] mRetCodes
protected OrderApprovalTools mOrderApprovalTools
protected boolean mEnabled
public void setOrderApprovalTools(OrderApprovalTools mOrderApprovalTools)
mOrderApprovalTools
- the mOrderApprovalTools to setpublic OrderApprovalTools getOrderApprovalTools()
public void setEnabled(boolean mEnabled)
public boolean isEnabled()
public int[] getRetCodes()
getRetCodes
in interface atg.service.pipeline.PipelineProcessor
public int runProcess(java.lang.Object pParam, atg.service.pipeline.PipelineResult pResult) throws java.lang.Exception
- the agent does not have the 'cmcApproval' role
- the agent has an appeasement limit
- the appeasements applied to the order exceed the agents appeasement limit
runProcess
in interface atg.service.pipeline.PipelineProcessor
java.lang.Exception
shouldExecuteApprovalCheck(Object, PipelineResult)
protected boolean shouldExecuteApprovalCheck(java.lang.Object pParam, atg.service.pipeline.PipelineResult pResult)
If the processor is disabled, the extra parameters contains the bypass flag, or if the order is a replacement order on a return request, false is returned.
pParam
- this incoming params to the processorpResult
- this incoming PipelineResult to the processor.OrderApprovalTools.CSC_BYPASS_APPROVAL_CHECK_PARAM