00001 #ifndef _TASK_STATIC_CONTAINER_SERVICES_H 00002 #define _TASK_STATIC_CONTAINER_SERVICES_H 00003 /******************************************************************************* 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: taskStaticContainerServices.h,v 1.12 2011/10/14 21:05:01 javarias Exp $" 00007 * 00008 * who when what 00009 * -------- ---------- ---------------------------------------------- 00010 * bjeram yyyy-mm-dd created 00011 */ 00012 00013 /************************************************************************ 00014 * 00015 *---------------------------------------------------------------------- 00016 */ 00017 00018 #ifndef __cplusplus 00019 #error This is a C++ include file and cannot be used from plain C 00020 #endif 00021 00022 00023 #include <acsContainerServices.h> 00024 #include <maciComponentStateManager.h> 00025 00026 00027 class StaticContainerServices: public maci::ContainerServices 00028 00029 { 00030 public: 00031 00035 StaticContainerServices( 00036 const maci::Handle componentHandle, 00037 ACE_CString& name, 00038 ACE_CString& type, 00039 PortableServer::POA_ptr poa, 00040 CORBA::ORB_ptr orb ); 00041 00045 virtual ~StaticContainerServices(){} 00046 00047 public: 00048 00052 CORBA::Object* getCORBAComponent(const char* name) 00053 { 00054 return CORBA::Object::_nil(); 00055 } 00056 00060 CORBA::Object* getCORBAComponentNonSticky(const char* name) 00061 { 00062 return CORBA::Object::_nil(); 00063 } 00064 00072 CORBA::Object* getCORBADynamicComponent(maci::ComponentSpec compSpec, bool markAsDefault) 00073 { 00074 return CORBA::Object::_nil(); 00075 } 00076 00082 CORBA::Object* getCORBADefaultComponent(const char* idlType) 00083 { 00084 return CORBA::Object::_nil(); 00085 } 00086 00094 maci::ComponentInfo getComponentDescriptor(const char* componentName) 00095 { return maci::ComponentInfo(); } 00096 00111 ACE_CString_Vector findComponents(const char *nameWilcard, const char *typeWildcard) { return ACE_CString_Vector(); } 00112 00123 void releaseComponent(const char *name) 00124 {} 00125 00131 void releaseAllComponents(){} 00132 00142 CDB::DAL_ptr getCDB(); 00143 00146 PortableServer::POA_var getOffShootPOA() { return PortableServer::POA::_nil(); } 00147 00157 ACS::OffShoot_ptr activateOffShoot(PortableServer::Servant cbServant) { return ACS::OffShoot::_nil(); } 00158 00165 void deactivateOffShoot(PortableServer::Servant cbServant) 00166 {} 00167 00172 PortableServer::POA_var createOffShootPOA(){ return PortableServer::POA::_nil(); } 00173 00191 maci::ComponentStateManager* getComponentStateManager() 00192 { 00193 return &componentStateManager_m; 00194 } 00195 00196 /* 00197 * @throw maciErrType::IncompleteComponentSpecEx 00198 * @throw maciErrType::InvalidComponentSpecEx 00199 * @throw maciErrType::ComponentSpecIncompatibleWithActiveComponentEx 00200 * @throw maciErrType::CannotGetComponentEx 00201 */ 00202 virtual CORBA::Object* getCORBACollocatedComponent(maci::ComponentSpec, 00203 bool, const char*) 00204 { 00205 return CORBA::Object::_nil(); 00206 } 00207 00208 virtual acsalarm::AlarmSource* getAlarmSource(); 00209 00210 private: 00211 CORBA::ORB_var orb_m; 00212 00214 // maci::ContainerImpl *m_containerImpl; 00215 00217 maci::Handle m_componentHandle; 00218 00220 maci::MACIComponentStateManager componentStateManager_m; 00221 00222 }; 00223 00224 #endif