00001 // -*- C++ -*- 00002 // 00003 // $Id: Base_Transport_Property.h 77151 2007-02-15 13:24:41Z johnnyw $ 00004 00005 // =================================================================== 00006 /** 00007 * @file Base_Transport_Property.h 00008 * 00009 * $Id: Base_Transport_Property.h 77151 2007-02-15 13:24:41Z johnnyw $ 00010 * 00011 * @author Bala Natarajan <bala@cs.wustl.edu> 00012 */ 00013 // =================================================================== 00014 00015 #ifndef TAO_BASE_CONNECTION_PROPERTY_H 00016 #define TAO_BASE_CONNECTION_PROPERTY_H 00017 00018 #include /**/ "ace/pre.h" 00019 00020 #include "tao/Transport_Descriptor_Interface.h" 00021 00022 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00023 # pragma once 00024 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00025 00026 #include "tao/Endpoint.h" 00027 00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00029 00030 /** 00031 * @class TAO_Base_Transport_Property 00032 * 00033 * @brief A concrete implementation for connnection property 00034 * 00035 * This class is a concrete implementation of a simple connection 00036 * property class. This provides an implementation for the virtual 00037 * functions declared in TAO_Transport_Descriptor_Interface. 00038 */ 00039 class TAO_Export TAO_Base_Transport_Property 00040 : public TAO_Transport_Descriptor_Interface 00041 { 00042 public: 00043 00044 /// Default constructor 00045 TAO_Base_Transport_Property (void); 00046 00047 /// Constructor 00048 TAO_Base_Transport_Property (TAO_Endpoint *endpoint, 00049 CORBA::Boolean flag = false); 00050 00051 /// Destructor 00052 virtual ~TAO_Base_Transport_Property (void); 00053 00054 /// The copy constructor. 00055 TAO_Base_Transport_Property (const TAO_Base_Transport_Property &rhs); 00056 00057 /// This call allocates and copies the contents of this class and 00058 /// returns the pointer 00059 virtual TAO_Transport_Descriptor_Interface *duplicate (void); 00060 00061 /// Try to determine if this object is same as the @a other_prop. 00062 virtual CORBA::Boolean is_equivalent ( 00063 const TAO_Transport_Descriptor_Interface *other_prop); 00064 00065 /// Generate hash value for our class 00066 virtual u_long hash (void) const; 00067 }; 00068 00069 TAO_END_VERSIONED_NAMESPACE_DECL 00070 00071 #if defined (__ACE_INLINE__) 00072 # include "tao/Base_Transport_Property.inl" 00073 #endif /* __ACE_INLINE__ */ 00074 00075 #include /**/ "ace/post.h" 00076 #endif /*TAO_BASE_CONNECTION_PROPERTY_H*/