Go to the documentation of this file.00001
00002
00003
00004 #include "tao/Strategies/UIOP_Factory.h"
00005
00006 #if TAO_HAS_UIOP == 1
00007
00008 #include "tao/Strategies/UIOP_Acceptor.h"
00009 #include "tao/Strategies/UIOP_Connector.h"
00010
00011 #include "tao/ORB_Constants.h"
00012
00013 #include "ace/OS_NS_strings.h"
00014
00015
00016 ACE_RCSID (Strategies,
00017 UIOP_Factory,
00018 "$Id: UIOP_Factory.cpp 84281 2009-01-30 15:01:17Z wotte $")
00019
00020
00021 static const char prefix_[] = "uiop";
00022
00023 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00024
00025 TAO_UIOP_Protocol_Factory::TAO_UIOP_Protocol_Factory (void)
00026 : TAO_Protocol_Factory (TAO_TAG_UIOP_PROFILE)
00027 {
00028 }
00029
00030 TAO_UIOP_Protocol_Factory::~TAO_UIOP_Protocol_Factory (void)
00031 {
00032 }
00033
00034 int
00035 TAO_UIOP_Protocol_Factory::match_prefix (const ACE_CString &prefix)
00036 {
00037
00038 return (ACE_OS::strcasecmp (prefix.c_str (), ::prefix_) == 0);
00039 }
00040
00041 const char *
00042 TAO_UIOP_Protocol_Factory::prefix (void) const
00043 {
00044 return ::prefix_;
00045 }
00046
00047 char
00048 TAO_UIOP_Protocol_Factory::options_delimiter (void) const
00049 {
00050 return '|';
00051 }
00052
00053 TAO_Acceptor *
00054 TAO_UIOP_Protocol_Factory::make_acceptor (void)
00055 {
00056 TAO_Acceptor *acceptor = 0;
00057
00058 ACE_NEW_RETURN (acceptor,
00059 TAO_UIOP_Acceptor,
00060 0);
00061
00062 return acceptor;
00063 }
00064
00065 int
00066 TAO_UIOP_Protocol_Factory::init (int , ACE_TCHAR* [])
00067 {
00068 return 0;
00069 }
00070
00071 TAO_Connector *
00072 TAO_UIOP_Protocol_Factory::make_connector (void)
00073 {
00074 TAO_Connector *connector = 0;
00075
00076 ACE_NEW_RETURN (connector,
00077 TAO_UIOP_Connector,
00078 0);
00079
00080 return connector;
00081 }
00082
00083 int
00084 TAO_UIOP_Protocol_Factory::requires_explicit_endpoint (void) const
00085 {
00086 return 1;
00087 }
00088
00089
00090 ACE_STATIC_SVC_DEFINE (TAO_UIOP_Protocol_Factory,
00091 ACE_TEXT ("UIOP_Factory"),
00092 ACE_SVC_OBJ_T,
00093 &ACE_SVC_NAME (TAO_UIOP_Protocol_Factory),
00094 ACE_Service_Type::DELETE_THIS |
00095 ACE_Service_Type::DELETE_OBJ,
00096 0)
00097
00098 ACE_FACTORY_DEFINE (TAO_Strategies, TAO_UIOP_Protocol_Factory)
00099
00100 TAO_END_VERSIONED_NAMESPACE_DECL
00101
00102
00103 #endif