|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object atg.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 updateItem the original container specified in the UpdateItem
isn'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 AddItem s generated during
reconcilication. |
protected void |
reconcileGiftRepositoryForDeletedHIs(CloneEditState pCloneEditState)
Reconciles the gift repository based on the DeleteItem s 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 UpdateItem s 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
valueprotected void mapOriginalToClone(CloneEditState pCloneEditState, Order pOriginalOrder, Order pCloneOrder) throws CommerceException
mapOriginalToClone
in class CollectionEditHandler
CommerceException
CollectionEditHandler.mapOriginalToCloneCollection(CloneEditState, Collection, Collection)
protected void detectChangesToCollection(CloneEditState pCloneEditState, java.lang.Object pOriginalCollectionContainer, java.lang.Object pCloneCollectionContainer) throws CommerceException
detectChangesToCollection
in class CollectionEditHandler
pCloneEditState
- 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 collectionPropertyName
pCloneCollectionContainer
- the object that has the clone collection in the property defined by collectionPropertyName
CommerceException
protected 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 CollectionEditHandler
CommerceException
reconcileGiftlistRepository(CloneEditState)
protected void addItem(CloneEditState pCloneEditState, AddItem pAddItem) throws CommerceException
addItem
in class ListEditHandler
pCloneEditState
- pAddItem
-
CommerceException
protected void deleteItem(CloneEditState pCloneEditState, DeleteItem pDeleteItem) throws CommerceException
deleteItem
in class CollectionEditHandler
pCloneEditState
- 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
DeleteItem
s, UpdateItem
s and AddItem
s generated
during the update detected process.
Also reconciles new handling instructions added to new shipping groups.
pCloneEditState
-
CommerceException
CloneEditHandler.getDeleteItems(CloneEditState)
,
CloneEditHandler.getAddItems(CloneEditState)
,
CloneEditHandler.getUpdateItems(CloneEditState)
,
reconcileGiftRepositoryForNewShippingGroups(CloneEditState)
protected void reconcileGiftRepositoryForAddedHIs(CloneEditState pCloneEditState) throws CommerceException
AddItem
s generated during
reconcilication.
pCloneEditState
-
CommerceException
protected void reconcileGiftRepositoryForUpdatedHIs(CloneEditState pCloneEditState) throws CommerceException
UpdateItem
s generated during
reconcilication.
pCloneEditState
-
CommerceException
protected void reconcileGiftRepositoryForDeletedHIs(CloneEditState pCloneEditState) throws CommerceException
DeleteItem
s 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 CollectionEditHandler
CommerceException
CollectionEditHandler.validateCollectionSize(Object, Object)
public void adjustCloneCommerceIdReferences(CloneEditState pCloneEditState) throws CommerceException
adjustCloneCommerceIdReferences
in class CloneEditHandler
CommerceException
public void adjustOriginalCommerceIdReferences(CloneEditState pCloneEditState) throws CommerceException
adjustOriginalCommerceIdReferences
in class CloneEditHandler
CommerceException
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 CollectionEditHandler
pCloneContainer
- 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.
CommerceException
updateItem(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 CloneEditHandler
CommerceException
moveItem(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 |