The handleModifyOrderNotification
chain is triggered by OrderFulfiller
receiving a ModifyOrderNotification
message.
The following sections describe each processor in the pipeline chain.
extractOrderId2
This processor attempts to extract the ID of the order from the OrderId
property of the ModifyOrderNotification
message.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/ExtractOrderId
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcExtractOrderId
Transitions: Return value of 1 executes the loadOrder2
processor.
loadOrder2
This processor loads the order from the order repository.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/LoadOrderRepository
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcLoadOrderRepository
Transitions: Return value of 1 executes the handleModificationClassType1
processor.
handleModificationClassType1
Determines if the modifications listed in the ModifyOrderNotification
message are valid. If so, it calls the appropriate processor chains, and upon conclusion, passes control to the updateOrderRepository2
processor. Possible chains that ModifyOrderNotification
modifications could trigger are handleIdTargetModification
, handleShipGroupUpdateModification
, and handlePayGroupUpdateModification
.
If a modification listed is not valid, then the chain moves on to the modificationNotSupported3
processor.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/HandleModificationClassType
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcHandleModificationClassType
Transitions: Return value of 1 executes the updateOrderRepository2
processor. Return value of 2 executes the modificationNotSupported3
processor.
modificationNotSupported3
This processor currently does nothing. Control then passes to updateOrderRepository1
.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/ModificationNotSupported
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcModificationUnsupported
Transitions: Return value of 1 executes the updateOrderRepository
2 processor.
updateOrderRepository2
Updates the order in the repository with any changes that may have been made during the execution of this chain.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/UpdateOrderRepository
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcUpdateOrderRepository
Transitions: Return value of 1 executes the sendModifyOrderNotification2
processor.
sendModifyOrderNotification2
If any modifications were made during the execution of this chain, this processor sends a ModifyOrderNotification
message with the list of modifications using JMS.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/SendModifyOrderNotification
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcSendModifyOrderNotification
Transitions: None. This is the last link in the chain and causes the PipelineManager
to return to the caller.