atg.commerce.order.processor
Class ProcCreateImplicitRelationships

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

public class ProcCreateImplicitRelationships
extends ApplicationLoggingImpl
implements PipelineProcessor

This processor creates relationships in an Order which has one ShippingGroup and/or one PaymentGroup. If the Order contains only one ShippingGroup and it contains no Relationships, then all the CommerceItems are added to the ShippingGroup by adding a ShippingGroupCommerceItemRelationship between each CommerceItem and the ShippingGroup. If the Order contains only one PaymentGroup and it contains no Relationships, then the entire cost of the Order is added to the PaymentGroup by adding a PaymentGroupOrderRelationship between the Order and PaymentGroup.

See Also:
Relationship, ShippingGroupRelationship, CommerceItemRelationship, PaymentGroupRelationship, OrderRelationship, ShippingGroupCommerceItemRelationship, PaymentGroupCommerceItemRelationship, PaymentGroupShippingGroupRelationship, PaymentGroupOrderRelationship

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
ProcCreateImplicitRelationships()
           
 
Method Summary
 java.lang.String getLoggingIdentifier()
          Returns property LoggingIdentifier
 int[] getRetCodes()
          Returns the valid return codes 1 - The processor completed
 int runProcess(java.lang.Object pParam, PipelineResult pResult)
          This method creates relationships in an Order which has one ShippingGroup and/or one PaymentGroup.
 void setLoggingIdentifier(java.lang.String pLoggingIdentifier)
          Sets property LoggingIdentifier
 
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, 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

ProcCreateImplicitRelationships

public ProcCreateImplicitRelationships()
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.

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 creates relationships in an Order which has one ShippingGroup and/or one PaymentGroup. If the Order contains only one ShippingGroup and it contains no Relationships, then all the CommerceItems are added to the ShippingGroup by adding a ShippingGroupCommerceItemRelationship between each CommerceItem and the ShippingGroup. If the Order contains only one PaymentGroup and it contains no Relationships, then the entire cost of the Order is added to the PaymentGroup by adding a PaymentGroupOrderRelationship between the Order and PaymentGroup. To add the ShippingGroupCommerceItemRelationships, the OrderManager method addRemainingItemQuantityToShippingGroup(Order, String, String) is called once for each CommerceItem. To add the PaymentGroupOrderRelationship, the OrderManager method addRemainingOrderAmountToPaymentGroup(Order, String) is called once for the Order. This method requires that an Order and OrderManager 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 and OrderManager 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), OrderManager.addRemainingItemQuantityToShippingGroup(Order, String, String), OrderManager.addRemainingOrderAmountToPaymentGroup(Order, String)