acscomponent::ACSComponentImpl − |
#include <acscomponentImpl.h> Inherits Logging::Loggable. Inherited by ACS::parameterTask [virtual], ACSComponentTestClassImpl [virtual], ArchiveConsumerCompImpl [virtual], baci::CharacteristicComponentImpl, CDBPropsCompImpl [virtual], ComponentGetterImpl [virtual], ConstrErrorHelloWorld [virtual], ConsumerCompImpl [virtual], CounterConsumerImpl [virtual], CounterSupplierImpl [virtual], DDSNCBenchmarkSupplierImpl [virtual], DynamicTestClassImpl [virtual], ErrorComponent [virtual], execComponentTestImpl [virtual], HelloWorld [virtual], HelloWorld [virtual], InitErrorHelloWorld [virtual], LogConfigTestClass [virtual], MaciContainerServicesTestClassImpl [virtual], MaciTestClass [virtual], MC::mockBlobberImpl, MC::mockControllerImpl, MockComponent [virtual], Mount, Mount1Impl [virtual], NCBenchmarkSupplierImpl [virtual], RTSupplierCompImpl [virtual], SimpleExampleDDSImpl [virtual], SimpleExampleNCImpl [virtual], SlowDestructionComponent [virtual], SupplierCompImpl [virtual], testalarmsystem::AlarmTestMountImpl, testalarmsystem::AlarmTestMountMultiThreadedImpl, TestLifeCycleComp [virtual], TestLogLevelsComp [virtual], TimerImpl [virtual], TimingExplorerImpl [virtual], and TMCDB::MonitorCollectorImpl. |
Public Member Functions |
ACSComponentImpl (const ACE_CString &name, maci::ContainerServices *containerServices) |
virtual ~ACSComponentImpl () |
PortableServer::POA_var getPOA () |
const char * componentName () |
virtual char * name () |
virtual ::ACS::ComponentStates componentState () |
virtual void initialize () |
virtual void execute () |
virtual void cleanUp () |
virtual void aboutToAbort () |
virtual void __execute () |
virtual void __aboutToAbort () |
virtual void __cleanUp () |
virtual void __initialize () |
maci::ContainerServices * getContainerServices () |
Private Attributes |
ACE_CString m_name |
Loki::SmartPtr< maci::ContainerServices > m_containerServices_p |
This class implements the ACS dynamic component, without any entry in the CDB, and provides life cycle methods. Characteristic components derive from this class. |
acscomponent::ACSComponentImpl::ACSComponentImpl (const ACE_CString & name, maci::ContainerServices * containerServices) Constructor. The ACSComponent shall be considered an abstract class and at the end of the constructor the state of the ACSComponent is set to COMPSTATE_NEW (m_componentState = ACS::COMPSTATE_NEW). |
Parameters: |
poa poa which will activate this and also all
other Components |
virtual acscomponent::ACSComponentImpl::~ACSComponentImpl () [virtual] Destructor |
Note: ContainerServices is not availble in the destructor |
virtual void acscomponent::ACSComponentImpl::__aboutToAbort () [virtual] The function stops the threads before calling aboutToAbort() |
Returns: |
void |
virtual void acscomponent::ACSComponentImpl::__cleanUp () [virtual] The function stops the threads before calling cleanUp() |
Returns: |
void |
virtual void acscomponent::ACSComponentImpl::__execute () [virtual] The function starts the thread before calling execute |
Returns: |
void |
virtual void acscomponent::ACSComponentImpl::__initialize () [virtual] The __initialize simply calls initialize (added for uniformity with the other life cycle function) |
Returns: |
void |
virtual void acscomponent::ACSComponentImpl::aboutToAbort () [virtual] 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. |
Returns: |
void |
Reimplemented in MaciContainerServicesTestClassImpl, and DynamicTestClassImpl. |
virtual void acscomponent::ACSComponentImpl::cleanUp () [virtual] Called after the last functional call to the component has finished. The component should then orderly release resources etc. If this method is overwritten in a subclass, the developer has to make sure that all cleanup performed by the implementation of the base class take place. The best way to do this is to call the implementation of the base itself explicitly, as would be done implicitly in a destructor chain. |
Returns: |
void |
Reimplemented in DDSNCBenchmarkSupplierImpl, MaciContainerServicesTestClassImpl, DynamicTestClassImpl, and TMCDB::MonitorCollectorImpl. |
const char* acscomponent::ACSComponentImpl::componentName () [inline] componentName() returns the name of the component as a C++ array of chars. It differs from name() because does not involve CORBA |
Returns: |
The name of the component |
References m_name. |
virtual ::ACS::ComponentStates acscomponent::ACSComponentImpl::componentState () Property for the state of the ACSComponent |
Returns: |
state of the ACSComponent |
virtual void acscomponent::ACSComponentImpl::execute () [virtual] Called after initialize to tell the component that it has to be ready to accept incoming functional calls any time. Must be implemented as a synchronous (blocking) call (can spawn threads though). |
Returns: |
void |
Reimplemented in MaciContainerServicesTestClassImpl, DynamicTestClassImpl, and MaciHierarchicalTestClass. |
maci::ContainerServices* acscomponent::ACSComponentImpl::getContainerServices () Get a pointer to the services provided by the container which hosts the component |
Returns: |
A pointer to the container services |
PortableServer::POA_var acscomponent::ACSComponentImpl::getPOA () [inline] Get POA reference This function is used to return m_poa because inherited classes would not have access to it otherwise. |
Returns: |
POA reference |
References m_containerServices_p. |
virtual void acscomponent::ACSComponentImpl::initialize () [virtual] 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. |
Returns: |
void |
Reimplemented in InitErrorHelloWorld, TimingExplorerImpl, MaciContainerServicesTestClassImpl, DynamicTestClassImpl, and TMCDB::MonitorCollectorImpl. |
virtual char* acscomponent::ACSComponentImpl::name () [virtual] Property for the name of the ACSComponent The string returned by this method is the actual name of this instance which the manager can convert to a DO reference if a client has the right access level. |
Returns: |
Name of DO |
Loki::SmartPtr<maci::ContainerServices> acscomponent::ACSComponentImpl::m_containerServices_p [private] Smart pointer of the container services |
Referenced by getPOA(). |
ACE_CString acscomponent::ACSComponentImpl::m_name [private] Name of the component |
Reimplemented in MaciTestClass. Referenced by componentName(). |
Generated automatically by Doxygen for ACS-2015.2 C++ API from the source code. |