Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef TAO_COIOP_ACCEPTOR_H
00016 #define TAO_COIOP_ACCEPTOR_H
00017
00018 #include "ace/pre.h"
00019
00020 #include "tao/orbconf.h"
00021
00022 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00023 # pragma once
00024 #endif
00025
00026 #if defined (TAO_HAS_COIOP) && (TAO_HAS_COIOP != 0)
00027
00028 #include "tao/Strategies/strategies_export.h"
00029 #include "tao/Transport_Acceptor.h"
00030 #include "tao/Acceptor_Impl.h"
00031 #include "tao/GIOP_Message_Version.h"
00032 #include "ace/UUID.h"
00033
00034 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045 class TAO_Strategies_Export TAO_COIOP_Acceptor : public TAO_Acceptor
00046 {
00047 public:
00048
00049 TAO_COIOP_Acceptor (void);
00050
00051
00052 ~TAO_COIOP_Acceptor (void);
00053
00054
00055
00056
00057
00058
00059
00060 virtual int open (TAO_ORB_Core *orb_core,
00061 ACE_Reactor *reactor,
00062 int version_major,
00063 int version_minor,
00064 const char *address,
00065 const char *options = 0);
00066 virtual int open_default (TAO_ORB_Core *orb_core,
00067 ACE_Reactor *reactor,
00068 int version_major,
00069 int version_minor,
00070 const char *options = 0);
00071 virtual int close (void);
00072 virtual int create_profile (const TAO::ObjectKey &object_key,
00073 TAO_MProfile &mprofile,
00074 CORBA::Short priority);
00075
00076 virtual int is_collocated (const TAO_Endpoint *endpoint);
00077 virtual CORBA::ULong endpoint_count (void);
00078
00079 virtual int object_key (IOP::TaggedProfile &profile,
00080 TAO::ObjectKey &key);
00081
00082
00083 protected:
00084
00085
00086 virtual int parse_options (const char *options);
00087
00088
00089
00090 int create_new_profile (const TAO::ObjectKey &object_key,
00091 TAO_MProfile &mprofile,
00092 CORBA::Short priority);
00093
00094
00095
00096 int create_shared_profile (const TAO::ObjectKey &object_key,
00097 TAO_MProfile &mprofile,
00098 CORBA::Short priority);
00099 protected:
00100
00101
00102
00103
00104
00105 ACE_Utils::UUID uuid_;
00106
00107
00108
00109
00110
00111
00112 TAO_GIOP_Message_Version version_;
00113
00114
00115 TAO_ORB_Core *orb_core_;
00116 };
00117
00118 TAO_END_VERSIONED_NAMESPACE_DECL
00119
00120 #endif
00121
00122 #include "ace/post.h"
00123
00124 #endif