Public Member Functions

alma.acs.component.ComponentLifecycle Interface Reference

Inheritance diagram for alma.acs.component.ComponentLifecycle:
alma.acs.component.ComponentImplBase alma.acs.component.StatefulComponentLifecycle alma.acs.component.StatelessComponentLifecycle alma.contLogTest.TestLogLevelsCompImpl.TestLogLevelsCompImpl alma.COUNTER.CounterConsumerImpl.CounterConsumerImpl alma.COUNTER.CounterSupplierImpl.CounterSupplierImpl alma.demo.HelloDemoImpl.HelloDemoImpl alma.lifecycleTest.TestLifeCycleCompImpl.TestLifeCycleCompImpl

List of all members.

Public Member Functions

void initialize (ContainerServices containerServices) throws ComponentLifecycleException
void execute () throws ComponentLifecycleException
void cleanUp () throws AcsJComponentCleanUpEx
void aboutToAbort ()

Detailed Description

Interface that every component has to implement.

The methods are used by the container to start and stop the component, that is, to manage its lifecycle.

Note that the constructor of the component implementation should be very small, preferably empty. Use the methods initialize(ContainerServices) and execute() instead.

TODOs:

Author:
hsommer

Member Function Documentation

void alma.acs.component.ComponentLifecycle.aboutToAbort (  ) 

Called when due to some error condition the component is about to be forcefully removed some unknown amount of time later (usually not very much...).

The component should make an effort to die as neatly as possible.

Because of its urgency, this method will be called asynchronously to the execution of any other method of the component.

Referenced by alma.acs.container.ComponentAdapter.getComponentAbortionist().

void alma.acs.component.ComponentLifecycle.cleanUp (  )  throws AcsJComponentCleanUpEx

Called after the last functional call to the component has finished. The component should then orderly release resources etc.

Referenced by alma.acs.container.ComponentAdapter.deactivateComponent().

void alma.acs.component.ComponentLifecycle.execute (  )  throws ComponentLifecycleException

Called after ComponentLifecycle#initialize(ContainerServices) to tell the component that it has to be ready to accept incoming functional calls any time.

Examples:

  • last-minute initializations for which initialize seemed too early
  • component could start actions which aren't triggered by any functional call, e.g. the Scheduler could start to rank SBs in a separate thread.

Must be implemented as a synchronous (blocking) call (can spawn threads though).

Referenced by alma.acs.container.ComponentAdapter.executeComponent().

void alma.acs.component.ComponentLifecycle.initialize ( ContainerServices  containerServices  )  throws ComponentLifecycleException

Called to give the component time to initialize itself. For instance, the component could retrieve connections, read in configuration files/parameters, build up in-memory tables, ...

Called before execute(). In fact, this method might be called quite some time before functional requests can be sent to the component.

Must be implemented as a synchronous (blocking) call.

Parameters:
containerServices callback object for services provided by the container

Referenced by alma.acs.container.ComponentAdapter.initializeComponent().


The documentation for this interface was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties