• Classes
  • Modules
  • Namespaces
  • Files
  • Related Pages
  • File List
  • File Members

maciTestClientImpl.h

Go to the documentation of this file.
00001 #ifndef maciTestClientImpl_h
00002 #define maciTestClientImpl_h
00003 
00004 /*******************************************************************************
00005 * E.S.O. - ACS project
00006 *
00007 * "@(#) $Id: maciTestClientImpl.h,v 1.86 2008/10/01 02:40:28 cparedes Exp $"
00008 *
00009 * who       when      what
00010 * --------  --------  ----------------------------------------------
00011 * kzagar   2002-02-15 Created
00012 */
00013 
00014 /************************************************************************
00015  *
00016  *----------------------------------------------------------------------
00017  */
00018 
00019 
00020 #ifndef __cplusplus
00021 #error This is a C++ include file and cannot be used from plain C
00022 #endif
00023 
00024 
00025 #include <maciS.h>
00026 #include <SString.h>
00027 
00028 //Class MaciTestClientImpl
00029 class  MaciTestClientImpl : public virtual POA_maci::Client
00030 {
00031 public:
00032   //Constructor
00033   MaciTestClientImpl (ACE_CString name, maci::Manager_ptr mgr, int onPing);
00034 
00035   //Destructor
00036   virtual ~MaciTestClientImpl (void);
00037 
00038   void setHandle(maci::Handle h) { m_handle = h; };
00039 
00040 virtual char * name ();
00041 
00042 virtual void disconnect ();
00043 
00044 virtual maci::AuthenticationData * authenticate (
00045     maci::ExecutionId execution_id,
00046     const char * question);
00047 
00048 virtual void message (
00049     CORBA::Short type,
00050     const char * message
00051   );
00052 
00053 virtual void taggedmessage (
00054     CORBA::Short type,
00055     CORBA::Short tag,
00056     const char * message
00057   );
00058 
00059 virtual CORBA::Boolean ping ();
00060 
00061 virtual void components_available (
00062     const maci::ComponentInfoSeq & cobs);
00063 
00064 virtual void components_unavailable (
00065     const maci::stringSeq & cob_names);
00066 protected:
00067   ACE_CString m_name;
00068   maci::Manager_ptr m_manager;
00069   maci::Handle m_handle;
00070   int m_onPing;
00071 };
00072 
00073 //Class MaciTestContainerImpl
00074 class  MaciTestContainerImpl :
00075   public virtual POA_maci::Container,
00076   public virtual MaciTestClientImpl
00077 {
00078 public:
00079   //Constructor
00080   MaciTestContainerImpl (ACE_CString name, maci::Manager_ptr mgr,
00081     PortableServer::POA_ptr poa, int onPing, int onActivate,
00082     bool haveRecovery);
00083 
00084   //Destructor
00085   virtual ~MaciTestContainerImpl (void);
00086 
00087 virtual maci::ComponentInfo * activate_component (
00088     maci::Handle h,
00089     maci::ExecutionId execution_id,
00090     const char * name,
00091     const char * exe,
00092     const char * type
00093   );
00094 
00095 virtual void deactivate_components (
00096     const maci::HandleSeq & h
00097   );
00098 
00099 virtual void shutdown (
00100     CORBA::ULong action
00101   );
00102 
00103 virtual maci::ComponentInfoSeq * get_component_info (
00104     const maci::HandleSeq & h
00105   );
00106 
00107 virtual char * name ();
00108 
00109 virtual void disconnect ();
00110 
00111 virtual maci::AuthenticationData * authenticate (
00112     maci::ExecutionId execution_id,
00113     const char * question
00114   );
00115 
00116 virtual void message (
00117     CORBA::Short type,
00118     const char * message
00119   );
00120 
00121 virtual CORBA::Boolean ping (
00122   );
00123 
00124 virtual void components_available (
00125     const maci::ComponentInfoSeq & cobs
00126   );
00127 
00128 virtual void components_unavailable (
00129     const maci::stringSeq & cob_names
00130   );
00131 
00132 protected:
00133   int m_onActivate;
00134   PortableServer::POA_ptr m_poa;
00135   bool m_haveRecovery;
00136 };
00137 
00138 //Class MaciTestAdministratorImpl
00139 class  MaciTestAdministratorImpl :
00140   public virtual POA_maci::Administrator,
00141   public virtual MaciTestClientImpl
00142 {
00143 public:
00144   //Constructor
00145   MaciTestAdministratorImpl (ACE_CString name, maci::Manager_ptr mgr, int onPing);
00146 
00147   //Destructor
00148   virtual ~MaciTestAdministratorImpl (void);
00149 
00150 virtual void client_logged_in (
00151     const maci::ClientInfo & info,
00152     ACS::Time timestamp,
00153     maci::ExecutionId execution_id
00154   );
00155 
00156 virtual void client_logged_out (
00157     maci::Handle h,
00158     ACS::Time timestamp
00159   );
00160 
00161 virtual void container_logged_in (
00162     const maci::ContainerInfo & info,
00163     ACS::Time timestamp,
00164     maci::ExecutionId execution_id
00165   );
00166 
00167 virtual void container_logged_out (
00168     maci::Handle h,
00169     ACS::Time timestamp
00170   );
00171 
00172 virtual void components_requested (
00173     const maci::HandleSeq & clients,
00174     const maci::HandleSeq & COBs,
00175     ACS::Time timestamp
00176   );
00177 
00178 virtual void components_released (
00179     const maci::HandleSeq & clients,
00180     const maci::HandleSeq & COBs,
00181     ACS::Time timestamp
00182   );
00183 
00184 virtual void component_activated (
00185     const maci::ComponentInfo & info,
00186     ACS::Time timestamp,
00187     maci::ExecutionId execution_id
00188   );
00189 
00190 virtual void component_deactivated (
00191     maci::Handle h,
00192     ACS::Time timestamp
00193   );
00194 
00195 virtual char * name ();
00196 
00197 virtual void disconnect ();
00198 
00199 virtual maci::AuthenticationData * authenticate (
00200     maci::ExecutionId execution_id,
00201     const char * question
00202   );
00203 
00204 virtual void message (
00205     CORBA::Short type,
00206     const char * message
00207   );
00208 
00209 virtual void taggedmessage (
00210     CORBA::Short type,
00211     CORBA::Short tag,
00212     const char * message
00213   );
00214 
00215 virtual CORBA::Boolean ping (
00216   );
00217 
00218 virtual void components_available (
00219     const maci::ComponentInfoSeq & cobs
00220   );
00221 
00222 virtual void components_unavailable (
00223     const maci::stringSeq & cob_names
00224   );
00225 
00226 };
00227 
00228 #endif /* maciTestClientImpl_h */
00229 
00230 
00231 

Generated on Thu Jan 12 2012 23:13:51 for ACS-10.0 C++ API by  doxygen 1.7.0