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 updateOrderRepository2 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.