Go to the documentation of this file.00001 #ifndef logging_ACS_LOG_FACTORY_I_H
00002 #define logging_ACS_LOG_FACTORY_I_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef __cplusplus
00031 #error This is a C++ include file and cannot be used from plain C
00032 #endif
00033
00034 #include <acsutil.h>
00035 #include <logging_idlS.h>
00036
00037 #include <orbsvcs/Log/BasicLogFactory_i.h>
00038
00039 #include "loggingACSStructuredPushSupplier.h"
00040
00044 class ACSLogFactory_i : public TAO_BasicLogFactory_i,
00045 public POA_Logging::ACSLogFactory
00046 {
00047
00048 public:
00049
00053 ACSLogFactory_i();
00054
00058 ~ACSLogFactory_i();
00059
00063 void
00064 set_logging_supplier(ACSStructuredPushSupplier* supplier)
00065 {
00066 m_logging_supplier = supplier;
00067 }
00068
00069 PortableServer::ServantBase* create_log_servant(DsLogAdmin::LogId id);
00070
00071
00072 Logging::ACSLogFactory_ptr
00073 activate (CORBA::ORB_ptr orb,
00074 PortableServer::POA_ptr poa);
00075
00076 Logging::AcsLogService_ptr
00077 create (DsLogAdmin::LogFullActionType full_action,
00078 CORBA::ULongLong max_size,
00079 DsLogAdmin::LogId_out id_out);
00080
00081 Logging::AcsLogService_ptr
00082 create_with_id (DsLogAdmin::LogId id,
00083 DsLogAdmin::LogFullActionType full_action,
00084 CORBA::ULongLong max_size);
00085
00089
00090
00091
00092
00093
00094
00095
00096
00097 protected:
00098
00100 ACSStructuredPushSupplier* m_logging_supplier;
00101
00102 CORBA::RepositoryId create_repositoryid ();
00103
00104 };
00105
00106 #endif // logging_ACS_LOG_FACTORY_I_H