Dynamic Services consists of components that enable the catalog properties to be dynamically updated as the catalog structure is modified by an ACC user, BCC user, or a program using the Repository API.
CatalogChangesListener
Component: /atg/commerce/catalog/custom/CatalogChangesListener
(for custom catalogs) or /atg/commerce/catalog/CatalogChangesListener
(for standard catalogs)
This component registers itself at deployment as a property changed listener for the product catalog. It is notified for each repository change made to a category or catalog item in the product catalog. As each change is made, it calls the CatalogCompletionService
to make dynamic updates to the appropriate catalog item property values.
CatalogCompletionService
Component: /atg/commerce/catalog/custom/CatalogCompletionService
(for custom catalogs) or /atg/commerce/catalog/CatalogCompletionService
(for standard catalogs)
This component updates catalog item property values in real time based on changes made to the product catalog repository. It is called by the CatalogChangesListener
when changes are made to the product catalog repository.
Refer to the CatalogUpdateService for a list of properties that are maintained by this service.
Additional property information:
Property | Description |
---|---|
| If true, the catalog item’s The |
| True/False |
StandardCatalogCompletionService
Component: /atg/commerce/catalog/StandardCatalogCompletionService
This component updates catalog item property values in real time based on changes made to the product catalog repository. It is called by the CatalogChangesListener
when changes are made to the product catalog repository.
The StandardCatalogCompletionService
updates the parentCategory
property for product and category items. When a product or category is made a child of another category, the parentCategory
of the new child is automatically set to the new parent if the child’s parentCategory
property is null.
When a product or category is removed as a child from a category, the service checks the former child’s parentCategory
. If parentCategory
is set to the category that is no longer the parent, the service checks the former child’s parentCategories
property, and assigns the first category in the list as the new parentCategory
. If the parentCategories
list is empty, parentCategory
is set to null.
Running the Dynamic Services
The dynamic service components are started automatically. You can disable the CatalogCompletionService
or the StandardCatalogCompletionService
by setting the service’s enabled
property to false
. If you set the enabled
property to false
, the components still start up with ATG Commerce, but they do not do anything if called.