IIOP_Factory.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file   IIOP_Factory.h
00006  *
00007  *  IIOP_Factory.h,v 1.19 2006/04/19 11:37:03 jwillemsen Exp
00008  *
00009  *  @author Fred Kuhns <fredk@cs.wustl.edu>
00010  */
00011 //=============================================================================
00012 
00013 
00014 #ifndef TAO_IIOP_FACTORY_H
00015 #define TAO_IIOP_FACTORY_H
00016 
00017 #include /**/ "ace/pre.h"
00018 
00019 #include "tao/orbconf.h"
00020 
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif /* ACE_LACKS_PRAGMA_ONCE */
00024 
00025 #if defined (TAO_HAS_IIOP) && (TAO_HAS_IIOP != 0)
00026 
00027 #include "tao/Protocol_Factory.h"
00028 #include "ace/Service_Config.h"
00029 
00030 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00031 
00032 class TAO_Acceptor;
00033 class TAO_Connector;
00034 
00035 class TAO_Export TAO_IIOP_Protocol_Factory : public TAO_Protocol_Factory
00036 {
00037 public:
00038   TAO_IIOP_Protocol_Factory (void);
00039   virtual ~TAO_IIOP_Protocol_Factory (void);
00040 
00041   // = Service Configurator hooks.
00042   /// Dynamic linking hook
00043   virtual int init (int argc, ACE_TCHAR* argv[]);
00044 
00045   /// Verify prefix is a match
00046   virtual int match_prefix (const ACE_CString &prefix);
00047 
00048   /// Returns the prefix used by the protocol.
00049   virtual const char *prefix (void) const;
00050 
00051   /// Return the character used to mark where an endpoint ends and
00052   /// where its options begin.
00053   virtual char options_delimiter (void) const;
00054 
00055   // = Check Protocol_Factory.h for a description of these methods.
00056   virtual TAO_Acceptor  *make_acceptor (void);
00057   virtual TAO_Connector *make_connector  (void);
00058   virtual int requires_explicit_endpoint (void) const;
00059 
00060 private:
00061   /// Changing the version number can be used to provide backwards
00062   /// compatibility with old clients.
00063   int const major_;
00064   int const minor_;
00065 };
00066 
00067 TAO_END_VERSIONED_NAMESPACE_DECL
00068 
00069 ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_IIOP_Protocol_Factory)
00070 ACE_FACTORY_DECLARE (TAO, TAO_IIOP_Protocol_Factory)
00071 
00072 #endif /* TAO_HAS_IIOP && TAO_HAS_IIOP != 0 */
00073 
00074 #include /**/ "ace/post.h"
00075 #endif /* TAO_IIOP_FACTORY_H */

Generated on Thu Nov 9 11:54:13 2006 for TAO by doxygen 1.3.6