3 //=============================================================================
5 * @file EndpointPolicy_i.h
7 * @author Yan Dai <dai_y@ociweb.com>
9 //=============================================================================
12 #ifndef TAO_ENDPOINTPOLICY_I_H
13 #define TAO_ENDPOINTPOLICY_I_H
15 #include /**/ "ace/pre.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #include "tao/EndpointPolicy/EndpointPolicyC.h"
24 #include "tao/LocalObject.h"
28 #pragma warning(disable:4250)
31 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
35 * @class TAO_EndpointPolicy_i
37 * @brief Implementation class for TAO-specific Endpoint Policy.
39 * This policy is used to filter the endpoints in profiles during
40 * the creation of object references.
42 class TAO_EndpointPolicy_Export TAO_EndpointPolicy_i
43 : public virtual EndpointPolicy::Policy
,
44 public virtual ::CORBA::LocalObject
48 TAO_EndpointPolicy_i (const EndpointPolicy::EndpointList
&value
);
51 TAO_EndpointPolicy_i (const TAO_EndpointPolicy_i
&rhs
);
53 virtual ~TAO_EndpointPolicy_i ();
55 /// Returns a copy of this>
56 virtual TAO_EndpointPolicy_i
*clone () const;
58 // = The EndpointPolicy::Policy methods
60 virtual CORBA::PolicyType
policy_type ();
62 virtual CORBA::Policy_ptr
copy ();
64 virtual void destroy ();
66 // Return the cached policy type for this policy.
67 virtual TAO_Cached_Policy_Type
_tao_cached_type () const;
69 virtual EndpointPolicy::EndpointList
* value ();
73 EndpointPolicy::EndpointList value_
;
77 TAO_END_VERSIONED_NAMESPACE_DECL
83 #include /**/ "ace/post.h"
84 #endif /* TAO_ENDPOINTPOLICY_I_H */