atg.commerce.order.processor
Class ProcAuthorizePayment

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.logging.ApplicationLoggingImpl
          extended by atg.commerce.order.processor.ProcAuthorizePayment
All Implemented Interfaces:
ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, VariableArgumentApplicationLogging, PipelineProcessor

public class ProcAuthorizePayment
extends ApplicationLoggingImpl
implements PipelineProcessor

This processor authorizes payment for an Order in the form of a PaymentGroup. It calls the authorize() method in the PaymentManager passing it a list of PaymentGroups.

See Also:
PaymentManager

Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
Fields inherited from interface atg.service.pipeline.PipelineProcessor
STOP_CHAIN_EXECUTION, STOP_CHAIN_EXECUTION_AND_COMMIT, STOP_CHAIN_EXECUTION_AND_ROLLBACK
 
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
DEFAULT_LOG_TRACE_STATUS
 
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
 
Constructor Summary
ProcAuthorizePayment()
           
 
Method Summary
protected  void addCreditCardError(PaymentGroup pFailedPaymentGroup, java.lang.String pStatusMessage, PipelineResult pResult, java.util.ResourceBundle pBundle)
          This method handles adding authorization error messages to the pipeline result object.
protected  void addErrorToPipelineResult(PaymentGroup pFailedPaymentGroup, java.lang.String pStatusMessage, PipelineResult pResult, java.util.ResourceBundle pBundle)
          This method handles calling the appropriate method to place errors into the Pipeline Result object.
protected  void addGiftCertificateError(PaymentGroup pFailedPaymentGroup, java.lang.String pStatusMessage, PipelineResult pResult, java.util.ResourceBundle pBundle)
          This method handles adding authorization error messages to the pipeline result object.
protected  void addPaymentGroupError(PaymentGroup pFailedPaymentGroup, java.lang.String pStatusMessage, PipelineResult pResult, java.util.ResourceBundle pBundle)
          This method handles adding authorization error messages to the pipeline result object.
 java.lang.String getLoggingIdentifier()
          Returns property LoggingIdentifier
 PaymentManager getPaymentManager()
          Returns the paymentManager
 int[] getRetCodes()
          Returns the valid return codes 1 - The processor completed
 int runProcess(java.lang.Object pParam, PipelineResult pResult)
          This method authorizes payment for an Order in the form of a PaymentGroup.
 void setLoggingIdentifier(java.lang.String pLoggingIdentifier)
          Sets property LoggingIdentifier
 void setPaymentManager(PaymentManager pPaymentManager)
          Sets the paymentManager
 
Methods inherited from class atg.nucleus.logging.ApplicationLoggingImpl
addGlobalLogListeners, addLogListener, getLoggingForVlogging, getLoggingIdentifer, getLogListenerCount, getLogListeners, initializeFromServiceEvent, isAutoInitListeners, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, removeLogListener, sendLogEvent, setAutoInitListeners, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static java.lang.String CLASS_VERSION
Class version string

Constructor Detail

ProcAuthorizePayment

public ProcAuthorizePayment()
Method Detail

getRetCodes

public int[] getRetCodes()
Returns the valid return codes 1 - The processor completed

Specified by:
getRetCodes in interface PipelineProcessor
Returns:
an integer array of the valid return codes.

getPaymentManager

public PaymentManager getPaymentManager()
Returns the paymentManager


setPaymentManager

public void setPaymentManager(PaymentManager pPaymentManager)
Sets the paymentManager


setLoggingIdentifier

public void setLoggingIdentifier(java.lang.String pLoggingIdentifier)
Sets property LoggingIdentifier

Overrides:
setLoggingIdentifier in class ApplicationLoggingImpl

getLoggingIdentifier

public java.lang.String getLoggingIdentifier()
Returns property LoggingIdentifier

Overrides:
getLoggingIdentifier in class ApplicationLoggingImpl

runProcess

public int runProcess(java.lang.Object pParam,
                      PipelineResult pResult)
               throws java.lang.Exception
This method authorizes payment for an Order in the form of a PaymentGroup. It calls the authorize() method in the PaymentManager passing it a list of PaymentGroups. For each PaymentGroup that failed to authorize, extract out the message from the PaymentResult object and call addErrorToPipelineResult. This method requires that an Order object be supplied in pParam in a HashMap. Use the PipelineConstants class' static members to key the objects in the HashMap.

Specified by:
runProcess in interface PipelineProcessor
Parameters:
pParam - a HashMap which must contain an Order object
pResult - a PipelineResult object which stores any information which must be returned from this method invokation
Returns:
an integer specifying the processor's return code
Throws:
java.lang.Exception - throws any exception back to the caller
See Also:
PipelineProcessor.runProcess(Object, PipelineResult), atg.commerce.payment.PaymentManager#authorize(List)

addErrorToPipelineResult

protected void addErrorToPipelineResult(PaymentGroup pFailedPaymentGroup,
                                        java.lang.String pStatusMessage,
                                        PipelineResult pResult,
                                        java.util.ResourceBundle pBundle)
This method handles calling the appropriate method to place errors into the Pipeline Result object. It will do an instanceof check on the pFailedPaymentGroup object and call the appropriate method. The current mapping is as follows:

If a new PaymentGroup is added and the error messages need to be handled in a special way, then this class should be extended and this method overriden. The overriden method would make instanceof checks. If the PaymentGroup is not handled by any of the instanceof checks in that class then call the super method.

Parameters:
pFailedPaymentGroup - the payment group that failed to authorize
pStatusMessage - message indicating why the payment group failed to authorize
pResult - the pipeline result object.
pBundle - resource bundle specific to users locale

addGiftCertificateError

protected void addGiftCertificateError(PaymentGroup pFailedPaymentGroup,
                                       java.lang.String pStatusMessage,
                                       PipelineResult pResult,
                                       java.util.ResourceBundle pBundle)
This method handles adding authorization error messages to the pipeline result object. It creates an errorMessage and errorKey and adds these to the ResultObject.

Parameters:
pFailedPaymentGroup - the payment group that failed to authorize
pStatusMessage - message indicating why the payment group failed to authorize
pResult - the pipeline result object.
pBundle - resource bundle specific to users locale

addCreditCardError

protected void addCreditCardError(PaymentGroup pFailedPaymentGroup,
                                  java.lang.String pStatusMessage,
                                  PipelineResult pResult,
                                  java.util.ResourceBundle pBundle)
This method handles adding authorization error messages to the pipeline result object. It creates an errorMessage and errorKey and adds these to the ResultObject.

Parameters:
pFailedPaymentGroup - the payment group that failed to authorize
pStatusMessage - message indicating why the payment group failed to authorize
pResult - the pipeline result object.
pBundle - resource bundle specific to users locale

addPaymentGroupError

protected void addPaymentGroupError(PaymentGroup pFailedPaymentGroup,
                                    java.lang.String pStatusMessage,
                                    PipelineResult pResult,
                                    java.util.ResourceBundle pBundle)
This method handles adding authorization error messages to the pipeline result object. It creates an errorMessage and errorKey and adds these to the ResultObject.

Parameters:
pFailedPaymentGroup - the payment group that failed to authorize
pStatusMessage - message indicating why the payment group failed to authorize
pResult - the pipeline result object.
pBundle - resource bundle specific to users locale