UIOP_Factory.cpp

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // UIOP_Factory.cpp,v 1.6 2006/03/10 07:19:19 jtc Exp
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            "UIOP_Factory.cpp,v 1.6 2006/03/10 07:19:19 jtc Exp")
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      major_ (TAO_DEF_GIOP_MAJOR),
00028      minor_ (TAO_DEF_GIOP_MINOR)
00029 {
00030 }
00031 
00032 TAO_UIOP_Protocol_Factory::~TAO_UIOP_Protocol_Factory (void)
00033 {
00034 }
00035 
00036 int
00037 TAO_UIOP_Protocol_Factory::match_prefix (const ACE_CString &prefix)
00038 {
00039   // Check for the proper prefix for this protocol.
00040   return (ACE_OS::strcasecmp (prefix.c_str (), ::prefix_) == 0);
00041 }
00042 
00043 const char *
00044 TAO_UIOP_Protocol_Factory::prefix (void) const
00045 {
00046   return ::prefix_;
00047 }
00048 
00049 char
00050 TAO_UIOP_Protocol_Factory::options_delimiter (void) const
00051 {
00052   return '|';
00053 }
00054 
00055 TAO_Acceptor *
00056 TAO_UIOP_Protocol_Factory::make_acceptor (void)
00057 {
00058   TAO_Acceptor *acceptor = 0;
00059 
00060   ACE_NEW_RETURN (acceptor,
00061                   TAO_UIOP_Acceptor,
00062                   0);
00063 
00064   return acceptor;
00065 }
00066 
00067 int
00068 TAO_UIOP_Protocol_Factory::init (int /* argc */,
00069                                  ACE_TCHAR* /* argv */ [])
00070 {
00071   return 0;
00072 }
00073 
00074 TAO_Connector *
00075 TAO_UIOP_Protocol_Factory::make_connector (void)
00076 {
00077   TAO_Connector *connector = 0;
00078 
00079   ACE_NEW_RETURN (connector,
00080                   TAO_UIOP_Connector,
00081                   0);
00082 
00083   return connector;
00084 }
00085 
00086 int
00087 TAO_UIOP_Protocol_Factory::requires_explicit_endpoint (void) const
00088 {
00089   return 1;
00090 }
00091 
00092 TAO_END_VERSIONED_NAMESPACE_DECL
00093 
00094 ACE_STATIC_SVC_DEFINE (TAO_UIOP_Protocol_Factory,
00095                        ACE_TEXT ("UIOP_Factory"),
00096                        ACE_SVC_OBJ_T,
00097                        &ACE_SVC_NAME (TAO_UIOP_Protocol_Factory),
00098                        ACE_Service_Type::DELETE_THIS |
00099                           ACE_Service_Type::DELETE_OBJ,
00100                        0)
00101 
00102 ACE_FACTORY_DEFINE (TAO_Strategies, TAO_UIOP_Protocol_Factory)
00103 
00104 
00105 #endif  /* TAO_HAS_UIOP == 1 */

Generated on Thu Nov 9 13:39:31 2006 for TAO_Strategies by doxygen 1.3.6