atg.commerce.order.processor
Class ProcSendPromotionUsedMessage

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

public class ProcSendPromotionUsedMessage
extends EventSender

This processor sends an event to the scenario engine when an promotion is used in an order. A promotion is "used" when an order is processed. The event object sent is PromotionUsed.

See Also:
PromotionUsed, EventSender

Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
Fields inherited from class atg.commerce.order.processor.EventSender
FAILURE, SUCCESS
 
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
ProcSendPromotionUsedMessage()
           
 
Method Summary
 java.io.Serializable createEventToSend(Order pOrder, PricingAdjustment pAdjustment, RepositoryItem pProfile)
          This method creates and populates a PromotionUsed object.
 java.io.Serializable createEventToSend(Order pOrder, PricingAdjustment pAdjustment, RepositoryItem pProfile, java.lang.Object pParam)
          This method creates and populates a PromotionUsed object.
 java.io.Serializable createEventToSend(Order order, RepositoryItem promo, RepositoryItem profile)
          This method creates and populates a PromotionUsed object.
 java.lang.String getLoggingIdentifier()
          Returns property LoggingIdentifier
 java.lang.String getMessageSourceName()
          This defines the string that the source property of messages will be set to.
 PromotionTools getPromotionTools()
          Returns the promotionTools
 int runProcess(java.lang.Object pParam, PipelineResult pResult)
          This method will loop through all the promotions calling @see #createEventToSend which will return the event object to be sent.
 void setLoggingIdentifier(java.lang.String pLoggingIdentifier)
          Sets property LoggingIdentifier
 void setMessageSourceName(java.lang.String pMessageSourceName)
           
 void setPromotionTools(PromotionTools pPromotionTools)
          Sets the promotionTools
 
Methods inherited from class atg.commerce.order.processor.EventSender
createEventToSend, getEventType, getEventType, getMessageIdGenerator, getMessageIdSpaceName, getMessageSourceContext, getNextMessageId, getPortName, getRetCodes, getSiteId, isAllowMessageSending, sendObjectMessage, setAllowMessageSending, setEventType, setMessageIdGenerator, setMessageIdSpaceName, setMessageSourceContext, setPortName, startMessageSource, stopMessageSource
 
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

ProcSendPromotionUsedMessage

public ProcSendPromotionUsedMessage()
Method Detail

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 will loop through all the promotions calling @see #createEventToSend which will return the event object to be sent. @see #sendObjectMessage will be called with the event to be sent, along with the @see #getEventType and the

Specified by:
runProcess in interface PipelineProcessor
Overrides:
runProcess in class EventSender
Parameters:
pParam - a HashMap which must contain an Order and Profile 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:
This method requires that an Order and Profile object be supplied in pParam in a HashMap. Use the PipelineConstants class' static members to key the objects in the HashMap., PipelineProcessor.runProcess(Object, PipelineResult)

createEventToSend

public java.io.Serializable createEventToSend(Order order,
                                              RepositoryItem promo,
                                              RepositoryItem profile)
This method creates and populates a PromotionUsed object. The PromotionUsed object is the message which will be sent to the scenario engine.

Parameters:
order - the order to set in the message
promo - the promotion to set in the message
profile - the profile to set in the message
Returns:
the Serializable message object

createEventToSend

public java.io.Serializable createEventToSend(Order pOrder,
                                              PricingAdjustment pAdjustment,
                                              RepositoryItem pProfile)
This method creates and populates a PromotionUsed object. The PromotionUsed object is the message which will be sent to the scenario engine.

Parameters:
pOrder - the order to set in the message
pAdjustment - the pricing adjustment to set promotion and discount in the message
pProfile - the profile to set in the message
Returns:
the Serializable message object

createEventToSend

public java.io.Serializable createEventToSend(Order pOrder,
                                              PricingAdjustment pAdjustment,
                                              RepositoryItem pProfile,
                                              java.lang.Object pParam)
This method creates and populates a PromotionUsed object. The PromotionUsed object is the message which will be sent to the scenario engine.

Parameters:
pOrder - the order to set in the message
pAdjustment - the pricing adjustment to set promotion and discount in the message
pProfile - the profile to set in the message
pParam - pipeline parameters map to extract site id property
Returns:
the Serializable message object

getPromotionTools

public PromotionTools getPromotionTools()
Returns the promotionTools


setPromotionTools

public void setPromotionTools(PromotionTools pPromotionTools)
Sets the promotionTools


setMessageSourceName

public void setMessageSourceName(java.lang.String pMessageSourceName)

getMessageSourceName

public java.lang.String getMessageSourceName()
This defines the string that the source property of messages will be set to.