ATG Commerce Programming Guide

Pipelines

A pipeline is an execution mechanism that allows for modular code execution. ATG Commerce uses pipelines to execute tasks, such as loading an Order, saving an Order, and checking out an Order. The PipelineManager implements the pipeline execution mechanism.

The commerce pipeline is defined in an XML file, which can be found at <ATG9dir>/B2CCommerce/config/atg/commerce/commercepipeline.xml for ATG Consumer Commerce and at <ATG9dir>/B2BCommerce/config/atg/commerce/commercepipeline.xml for ATG Business Commerce. To execute a pipeline through JSPs, define a handle method in a form handler class that calls the PipelineManager.

In the Nucleus hierarchy, the PipelineManager is located at /atg/commerce/PipelineManager. When you deploy an application that includes ATG Commerce, a new instance is created and the commerce pipeline configuration is loaded. The commerce pipeline configuration file contains the definition for the processOrder chain. To insert a new link, add a new element to the XML file that references the new pipeline processor. The new functionality is inserted into the execution chain without affecting the existing code.

In the overall architecture of ATG Commerce, the PipelineManager is below the OrderManager. A pipeline should generally be executed from an OrderManager method. This is the case for the loadOrder(), updateOrder(), and processOrder() methods.