The performIdTargetModification chain is triggered by a ModifyOrder message that includes a modification of type IdTargetModification.
The following sections describe each processor in the pipeline chain.
handleModificationTargetType
This processor determines which processor to pass control to by looking at the TargetType property of the IdTargetModification. If the TargetType is TARGET_ORDER, then control passes to performOrderModificationChain. If the TargetType is TARGET_SHIPPING_GROUP, control passes to performShippingGroupModification. If the TargetType is TARGET_ITEM, control passes to performItemModification. If TargetType is TARGET_RELATIONSHIP, control passes to performRelationshipModification. If TargetType is none of the above types, control passes to modificationNotSupported1.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/HandleModificationTargetType
PipelineProcessor object: atg.commerce.pricing.processor.ProcSendScenarioEvent
Transitions: Return value of 1 executes the performOrderModificationChain processor. Return value of 2 executees the performShippingGroupModification processor. Return value of 3 executes the performItemModification. Return value of 4 executes the performRelationshipModification processor. Return value of 5 executes the modificationNotSupported1 processor.
performOrderModificationChain
This processor executes the performOrderModification chain. After execution, the execution of this chain stops.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/PerformOrderModificationChain
PipelineProcessor object: atg.commerce.order.processor.ProcExecuteChain
Transitions: None. This is the last link in the chain and causes the PipelineManager to return to the caller.
performShippingGroupModification
Determines the appropriate fulfiller for the shipping group of the modification, and sends a ModifyOrder message to that fulfiller. Execution of this chain then stops.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/PerformShippingGroupModification
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcPerformShippingGroupModification
Transitions: None. This is the last link in the chain and causes the PipelineManager to return to the caller.
performItemModification
Item modifications are not currently supported, so this processor sets the status of the particular modification to STATUS_FAILED and adds the modification to the list to be sent back in a ModifyOrderNotification message. Execution of this chain then stops.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/ModificationNotSupported
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcModificationUnsupported
Transitions: None. This is the last link in the chain and causes the PipelineManager to return to the caller.
performRelationshipModification
Determines the appropriate fulfiller for the shipping group involved in the ShippingGroupCommerceItem relationship the modification is requested for, and sends a ModifyOrder message to that fulfiller. Execution of this chain then stops.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/PerformRelationshipModification
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcPerformRelationshipModification
Transitions: None. This is the last link in the chain and causes the PipelineManager to return to the caller.
modificationNotSupported1
Sets the status of the particular modification to STATUS_FAILED and adds the modification to the list to be sent back in a ModifyOrderNotification message. Execution of this chain then stops.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/fulfillment/processor/ModificationNotSupported
PipelineProcessor object: atg.commerce.fulfillment.processor.ProcModificationUnsupported
Transitions: None. This is the last link in the chain and causes the PipelineManager to return to the caller.

