atg.commerce.order.processor
Class ProcSetCatalogRefs

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

public class ProcSetCatalogRefs
extends ApplicationLoggingImpl
implements PipelineProcessor

This processor sets the catalog references into the CommerceItems in the order. When an Order is saved its catalogRef is not persisted, but its id is. When the Order is loaded, the catalogRefId is loaded, but the catalogRef remains null. This processor looks up the catalogRef in the ProductCatalog using the catalogRefId.


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
ProcSetCatalogRefs()
           
 
Method Summary
 java.lang.String getLoggingIdentifier()
          Returns property LoggingIdentifier
 int[] getRetCodes()
          Returns the valid return codes 1 - The processor completed
 java.lang.String getSubstituteDeletedSkuId()
          This property specifies the id of the sku that will represent all deleted skus.
 boolean isSubstituteRemovedSku()
          The property is checked to validate whether a CommerceItem that contains a sku which has since been removed from the repository should be substituted with another sku that represents the deleted sku..
protected  void loadCatalogRef(CommerceItemContainer order, CatalogTools catalogTools)
           
 RepositoryItem retrieveDeletedSkuItem(CatalogTools pCatalogTools, java.lang.String pCatalogKey, java.lang.String pOriginalSkuId)
          This method will return the RepositoryItem that represents all deleted skus.
 int runProcess(java.lang.Object pParam, PipelineResult pResult)
          This method sets the catalog references into the CommerceItems in the order.
 void setLoggingIdentifier(java.lang.String pLoggingIdentifier)
          Sets property LoggingIdentifier
 void setSubstituteDeletedSkuId(java.lang.String pSubstituteDeletedSkuId)
           
 void setSubstituteRemovedSku(boolean pSubstituteRemovedSku)
           
 
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

ProcSetCatalogRefs

public ProcSetCatalogRefs()
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 sets the catalog references into the CommerceItems in the order. When an Order is saved its catalogRef is not persisted, but its id is. When the Order is loaded, the catalogRefId is loaded, but the catalogRef remains null. This processor takes the looks up the catalogRef in the ProductCatalog using the catalogRefId. This method requires that an Order and a CatalogTools 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 a CatalogTools 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)

setSubstituteRemovedSku

public void setSubstituteRemovedSku(boolean pSubstituteRemovedSku)

isSubstituteRemovedSku

public boolean isSubstituteRemovedSku()
The property is checked to validate whether a CommerceItem that contains a sku which has since been removed from the repository should be substituted with another sku that represents the deleted sku..

Returns:
true if the processor should deal with removed skus, false otherwise.

setSubstituteDeletedSkuId

public void setSubstituteDeletedSkuId(java.lang.String pSubstituteDeletedSkuId)

getSubstituteDeletedSkuId

public java.lang.String getSubstituteDeletedSkuId()
This property specifies the id of the sku that will represent all deleted skus.

Returns:
the sku id representing deleted skus

retrieveDeletedSkuItem

public RepositoryItem retrieveDeletedSkuItem(CatalogTools pCatalogTools,
                                             java.lang.String pCatalogKey,
                                             java.lang.String pOriginalSkuId)
This method will return the RepositoryItem that represents all deleted skus. It uses @see SubstituteDeletedSkuId to lookup the sku which should be used.

Parameters:
pCatalogTools - the catalog tools that contain the catalog repository
pCatalogKey - the catalog key that was being used to lookup the original sku id.
pOriginalSkuId - the sku id for the item that was initially removed.
Returns:
the RepositoryItem which contains information explaining that a sku has been deleted, null if the sku is not found.

loadCatalogRef

protected void loadCatalogRef(CommerceItemContainer order,
                              CatalogTools catalogTools)
                       throws RepositoryException,
                              CommerceException
Throws:
RepositoryException
CommerceException