| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectatg.nucleus.logging.VariableArgumentApplicationLoggingImpl
atg.nucleus.GenericService
atg.commerce.order.edit.CloneEditHandler
atg.commerce.order.edit.CollectionEditHandler
atg.commerce.order.edit.ListEditHandler
atg.commerce.order.edit.HandlingInstructionEditHandler
public class HandlingInstructionEditHandler
This handler updates handling instructions between the clone and original order and reconciles the gift repository based on the changes.
ListEditHandler| Field Summary | |
|---|---|
| static java.lang.String | CLASS_VERSION | 
| protected  CommerceItemEditHandler | mCommerceItemEditHandler | 
| protected  GiftlistManager | mGiftlistManager | 
| protected  HandlingInstructionManager | mHandlingInstructionManager | 
| protected  ShippingGroupEditHandler | mShippingGroupEditHandler | 
| Fields inherited from class atg.commerce.order.edit.CollectionEditHandler | 
|---|
| mCollectionPropertyName, mSortPropertyName, mSubPropertyHandlers, mThrowExceptionsForCollectionChanges, STATE_CLONETOORIGINAL_MAP, STATE_ORIGINALTOCLONE_MAP | 
| Fields inherited from class atg.commerce.order.edit.CloneEditHandler | 
|---|
| mFulfillmentMessageSender, mKeyPropertyName, mOrderFulfillmentTools, mPropertiesToCopyOnUpdate, STATE_ADD_ITEMS, STATE_DELETE_ITEMS, STATE_UPDATE_ITEMS | 
| Fields inherited from class atg.nucleus.GenericService | 
|---|
| SERVICE_INFO_KEY | 
| 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 | |
|---|---|
| HandlingInstructionEditHandler() | |
| Method Summary | |
|---|---|
| protected  void | addItem(CloneEditState pCloneEditState,
        AddItem pAddItem)Overrides add item to use the handling group container interfaces to add the new handling instruction. | 
|  void | adjustCloneCommerceIdReferences(CloneEditState pCloneEditState)Adjusts the commerceItemId and shippingGroupId in eac hclone handling instruction to reference the clone commerce item and shipping group id. | 
| protected  void | adjustCloneHandlingInstructionReferences(CloneEditState pCloneEditState,
                                         HandlingInstruction pHandlingInstruction)Adjusts the handling instruction's commerce item and shipping group id properties so they reference the ids of the clone objects. | 
| protected  void | adjustHandlingInstructionReferences(CloneEditState pCloneEditState,
                                    HandlingInstruction pHandlingInstruction)Changes the commerceItemId and shippingGroupId of the handling instruction to their original order counter parts. | 
|  void | adjustOriginalCommerceIdReferences(CloneEditState pCloneEditState)Adjusts the commerceItemId and shippingGroupId in each original order handling instruction to reference the original commerce item and shipping group id. | 
|  void | applyChanges(CloneEditState pCloneEditState)Extends the base behavior to update the commerce item and shipping group handling instruction references to match the original counterparts. | 
| protected  void | deleteItem(CloneEditState pCloneEditState,
           DeleteItem pDeleteItem)Overrides delete item to use the handling instruction container interfaces to remove the item | 
| protected  void | detectChangesToCollection(CloneEditState pCloneEditState,
                          java.lang.Object pOriginalCollectionContainer,
                          java.lang.Object pCloneCollectionContainer)Extends the base behavior by first getting the shipping group lists from the containers and calling super with the shipping group lists. | 
| protected  void | detectRemovedHandlingInstructions(CloneEditState pCloneEditState)Iterates over all the handling instructions that were originally mapped and determines if any of the clone shipping groups contain the counterpart clone handling instruction . | 
| protected  void | detectUpdatesForNewShippingGroup(CloneEditState pCloneEditState,
                                 ShippingGroup pNewShippingGroup)Iterates over all the new shipping groups in the clone order (e.g. | 
| protected  ShippingGroup | findCloneShippingGroupForHI(CloneEditState pCloneEditState,
                            java.lang.String pCloneHIId)Finds the clone shipping group that contains the given clone handling instruction | 
| protected  ShippingGroup | findOriginalShippingGroupForHI(CloneEditState pCloneEditState,
                               java.lang.String pOriginalHIId)Finds the original shipping group that contains the given original handling instruction | 
|  CommerceItemEditHandler | getCommerceItemEditHandler()Reference to the CommerceItemEditHandler used to access commerce item meta-deta generated from the cloning process. | 
|  GiftlistManager | getGiftlistManager()All Giftlist manipulations are done with this. | 
|  HandlingInstructionManager | getHandlingInstructionManager()The HandlingInstruction manager | 
|  ShippingGroupEditHandler | getShippingGroupEditHandler()Reference to the ShippingGroupEditHandler used to access shipping group meta-deta generated from the cloning process. | 
| protected  boolean | handleMissingOriginalObject(CloneEditState pCloneEditState,
                            java.lang.Object pCloneContainer,
                            java.lang.Object pCloneObject,
                            java.lang.Object pOriginalContainer,
                            java.lang.Object pOriginalCounterPartKey)If an original handling instruction cannot be found in original shipping group associated with the clone shipping group, it could mean the handling instruction was moved during updates to a difference clone shipping group. | 
| protected  void | mapOriginalToClone(CloneEditState pCloneEditState,
                   Order pOriginalOrder,
                   Order pCloneOrder)Overrides base behavior to process all the CommerceItemContainers starting with the order. | 
| protected  void | moveItem(CloneEditState pCloneEditState,
         UpdateItem pUpdateItem)This API is called by updateItemthe original container specified in theUpdateItemisn't the container that maps to the clone container and handles the move operation. | 
|  void | reconcileGiftlistRepository(CloneEditState pCloneEditState)Reconciles the gift list quantity purchased for updated, added and removed giftlist handling instructions. | 
| protected  void | reconcileGiftRepositoryForAddedHIs(CloneEditState pCloneEditState)Reconciles the gift repository based on the AddItems generated during
 reconcilication. | 
| protected  void | reconcileGiftRepositoryForDeletedHIs(CloneEditState pCloneEditState)Reconciles the gift repository based on the DeleteItems generated during
 reconcilication. | 
| protected  void | reconcileGiftRepositoryForNewShippingGroups(CloneEditState pCloneEditState)Reconciles the gift repository for any new gift handling instructions that may have been added to new shipping groups in the clone order. | 
| protected  void | reconcileGiftRepositoryForUpdatedHIs(CloneEditState pCloneEditState)Reconciles the gift repository based on the UpdateItems generated during
 reconcilication. | 
|  void | setCommerceItemEditHandler(CommerceItemEditHandler pCommerceItemEditHandler) | 
|  void | setGiftlistManager(GiftlistManager pGiftlistManager) | 
|  void | setHandlingInstructionManager(HandlingInstructionManager pHandlingInstructionManager)Specifies the HandlingInstructionManager. | 
|  void | setShippingGroupEditHandler(ShippingGroupEditHandler pShippingGroupEditHandler) | 
| protected  void | updateItem(CloneEditState pCloneEditState,
           UpdateItem pUpdateItem)Extends the base behavior to handle the condition where the handling instruction moved from one shipping group to another. | 
| protected  void | validateCollection(Order pOriginalOrder,
                   Order pCloneOrder)Validates the handling instruction collections for each shipping group in the order. | 
| 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 | 
|---|
public static final java.lang.String CLASS_VERSION
protected GiftlistManager mGiftlistManager
protected CommerceItemEditHandler mCommerceItemEditHandler
protected ShippingGroupEditHandler mShippingGroupEditHandler
protected HandlingInstructionManager mHandlingInstructionManager
| Constructor Detail | 
|---|
public HandlingInstructionEditHandler()
| Method Detail | 
|---|
public void setGiftlistManager(GiftlistManager pGiftlistManager)
public GiftlistManager getGiftlistManager()
public CommerceItemEditHandler getCommerceItemEditHandler()
public void setCommerceItemEditHandler(CommerceItemEditHandler pCommerceItemEditHandler)
public ShippingGroupEditHandler getShippingGroupEditHandler()
public void setShippingGroupEditHandler(ShippingGroupEditHandler pShippingGroupEditHandler)
public void setHandlingInstructionManager(HandlingInstructionManager pHandlingInstructionManager)
pHandlingInstructionManager - a HandlingInstructionManager valuepublic HandlingInstructionManager getHandlingInstructionManager()
HandlingInstructionManager value
protected void mapOriginalToClone(CloneEditState pCloneEditState,
                                  Order pOriginalOrder,
                                  Order pCloneOrder)
                           throws CommerceException
mapOriginalToClone in class CollectionEditHandlerCommerceExceptionCollectionEditHandler.mapOriginalToCloneCollection(CloneEditState, Collection, Collection)
protected void detectChangesToCollection(CloneEditState pCloneEditState,
                                         java.lang.Object pOriginalCollectionContainer,
                                         java.lang.Object pCloneCollectionContainer)
                                  throws CommerceException
detectChangesToCollection in class CollectionEditHandlerpCloneEditState - the CloneEditState that was created at the beginning of the clone process.pOriginalCollectionContainer - the object that has the original collection in the property defined by collectionPropertyNamepCloneCollectionContainer - the object that has the clone collection in the property defined by collectionPropertyName
CommerceExceptionprotected void detectRemovedHandlingInstructions(CloneEditState pCloneEditState)
 If the clone counterpart cannot be found anywhere in the clone order, a DeleteItem
 is created for the original handling instruction.
pCloneEditState - 
protected void detectUpdatesForNewShippingGroup(CloneEditState pCloneEditState,
                                                ShippingGroup pNewShippingGroup)
 An UpdateItem is generated for each one found to be moved to a new shipping group.
pCloneEditState - pNewShippingGroup - 
public void applyChanges(CloneEditState pCloneEditState)
                  throws CommerceException
Also reconciles the gift repository based on updates made to gift handling instructions
applyChanges in class CollectionEditHandlerCommerceExceptionreconcileGiftlistRepository(CloneEditState)
protected void addItem(CloneEditState pCloneEditState,
                       AddItem pAddItem)
                throws CommerceException
addItem in class ListEditHandlerpCloneEditState - pAddItem - 
CommerceException
protected void deleteItem(CloneEditState pCloneEditState,
                          DeleteItem pDeleteItem)
                   throws CommerceException
deleteItem in class CollectionEditHandlerpCloneEditState - pDeleteItem - the DeleteItem object
CommerceException
protected void adjustHandlingInstructionReferences(CloneEditState pCloneEditState,
                                                   HandlingInstruction pHandlingInstruction)
pCloneEditState - pHandlingInstruction - 
protected void adjustCloneHandlingInstructionReferences(CloneEditState pCloneEditState,
                                                        HandlingInstruction pHandlingInstruction)
The clones are the counterparts to the current original commerce item and shipping group ids being referenced.
pCloneEditState - pHandlingInstruction - 
public void reconcileGiftlistRepository(CloneEditState pCloneEditState)
                                 throws CommerceException
DeleteItems, UpdateItems and AddItems generated
 during the update detected process. 
 Also reconciles new handling instructions added to new shipping groups.
pCloneEditState - 
CommerceExceptionCloneEditHandler.getDeleteItems(CloneEditState), 
CloneEditHandler.getAddItems(CloneEditState), 
CloneEditHandler.getUpdateItems(CloneEditState), 
reconcileGiftRepositoryForNewShippingGroups(CloneEditState)
protected void reconcileGiftRepositoryForAddedHIs(CloneEditState pCloneEditState)
                                           throws CommerceException
AddItems generated during
 reconcilication.
pCloneEditState - 
CommerceException
protected void reconcileGiftRepositoryForUpdatedHIs(CloneEditState pCloneEditState)
                                             throws CommerceException
UpdateItems generated during
 reconcilication.
pCloneEditState - 
CommerceException
protected void reconcileGiftRepositoryForDeletedHIs(CloneEditState pCloneEditState)
                                             throws CommerceException
DeleteItems generated during
 reconcilication.
pCloneEditState - 
CommerceException
protected void reconcileGiftRepositoryForNewShippingGroups(CloneEditState pCloneEditState)
                                                    throws CommerceException
pCloneEditState - 
CommerceException
protected void validateCollection(Order pOriginalOrder,
                                  Order pCloneOrder)
                           throws CommerceException
validateCollection in class CollectionEditHandlerCommerceExceptionCollectionEditHandler.validateCollectionSize(Object, Object)
public void adjustCloneCommerceIdReferences(CloneEditState pCloneEditState)
                                     throws CommerceException
adjustCloneCommerceIdReferences in class CloneEditHandlerCommerceException
public void adjustOriginalCommerceIdReferences(CloneEditState pCloneEditState)
                                        throws CommerceException
adjustOriginalCommerceIdReferences in class CloneEditHandlerCommerceException
protected boolean handleMissingOriginalObject(CloneEditState pCloneEditState,
                                              java.lang.Object pCloneContainer,
                                              java.lang.Object pCloneObject,
                                              java.lang.Object pOriginalContainer,
                                              java.lang.Object pOriginalCounterPartKey)
                                       throws CommerceException
 This implementation will search for the missing original object in the other original shipping groups. If found, 
 a new UpdateItem is generated. 
 
 updateItem is implemented to recognize that the original container specified in the UpdateItem 
 isn't the container that maps to the clone container and handles the move operation.
handleMissingOriginalObject in class CollectionEditHandlerpCloneContainer - the container where the clone object is locatedpCloneObject - the clone object for which the original object is missingpOriginalContainer - the original container from which the original object is missingpOriginalCounterPartKey - the key of the missing original object.
CommerceExceptionupdateItem(CloneEditState, UpdateItem)
protected ShippingGroup findOriginalShippingGroupForHI(CloneEditState pCloneEditState,
                                                       java.lang.String pOriginalHIId)
pCloneEditState - pOriginalHIId - the handling instruction id to find
protected ShippingGroup findCloneShippingGroupForHI(CloneEditState pCloneEditState,
                                                    java.lang.String pCloneHIId)
pCloneEditState - pCloneHIId - the handling instruction id to find
protected void updateItem(CloneEditState pCloneEditState,
                          UpdateItem pUpdateItem)
                   throws CommerceException
 A move occurs when the original container specified in the UpdateItem 
 isn't the container that maps to the clone container.
updateItem in class CloneEditHandlerCommerceExceptionmoveItem(CloneEditState, UpdateItem)
protected void moveItem(CloneEditState pCloneEditState,
                        UpdateItem pUpdateItem)
                 throws CommerceException
updateItem the original container specified in the UpdateItem 
 isn't the container that maps to the clone container and handles the move operation.
pCloneEditState - pUpdateItem - 
CommerceException| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||