When Nucleus shuts down, it recursively shuts down all child services. The sequence in which these services shut down is undefined. You can control this sequence by configuring the Nucleus component /atg/dynamo/service/ShutdownService, which implements the class atg.service.ShutdownService. The services property of this component lists the order in which services are shut down. For example:

$class=atg.service.ShutdownService
services+=\
  /atg/reporting/datacollection/userprofiling/SiteVisitFileLogger
  /atg/reporting/datacollection/userprofiling/UserFileLogger
  /atg/reporting/datacollection/userprofiling/SegmentFileLogger
  /atg/reporting/datacollection/commerce/OrderFileLogger

As a message sink that implements the interface atg.dms.patchbay.MessageSink, ShutdownService listens for the JMS message atg.das.Shutdown, which is generated just before Nucleus starts to shut down. On receiving this message, ShutdownService iterates over the list of services configured in its services property and calls stopService() on each one. After this process is complete, Nucleus recursively shuts down all remaining services.

Default Configuration

The Oracle Commerce Platform installation specifies the ShutdownService as an initial service in the DAS module, in /atg/dynamo/service/Initial. The installation also provides three ShutdownService components in the following modules:


Copyright © 1997, 2015 Oracle and/or its affiliates. All rights reserved. Legal Notices