=default for generated implementation copy ctor
[ACE_TAO.git] / TAO / tao / Messaging / Buffering_Constraint_Policy.cpp
blobed468eb16fa127ce251d0a525071b4583fa7451e
1 #include "tao/Messaging/Buffering_Constraint_Policy.h"
3 #if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
5 #include "tao/Messaging/TAO_ExtA.h"
6 #include "tao/SystemException.h"
7 #include "ace/CORBA_macros.h"
9 #if ! defined (__ACE_INLINE__)
10 #include "tao/Messaging/Buffering_Constraint_Policy.inl"
11 #endif /* __ACE_INLINE__ */
13 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
15 TAO_Buffering_Constraint_Policy::TAO_Buffering_Constraint_Policy (const TAO::BufferingConstraint &buffering_constraint)
16 : ::CORBA::Object ()
17 , ::CORBA::Policy ()
18 , TAO::BufferingConstraintPolicy ()
19 , ::CORBA::LocalObject ()
20 , buffering_constraint_ (buffering_constraint)
24 TAO_Buffering_Constraint_Policy::TAO_Buffering_Constraint_Policy (const TAO_Buffering_Constraint_Policy &rhs)
25 : ::CORBA::Object ()
26 , ::CORBA::Policy ()
27 , TAO::BufferingConstraintPolicy ()
28 , ::CORBA::LocalObject ()
29 , buffering_constraint_ (rhs.buffering_constraint_)
33 CORBA::PolicyType
34 TAO_Buffering_Constraint_Policy::policy_type ()
36 return TAO::BUFFERING_CONSTRAINT_POLICY_TYPE;
39 CORBA::Policy_ptr
40 TAO_Buffering_Constraint_Policy::create (const CORBA::Any& val)
42 const TAO::BufferingConstraint *buffering_constraint = 0;
43 if ((val >>= buffering_constraint) == 0)
44 throw ::CORBA::PolicyError (CORBA::BAD_POLICY_VALUE);
46 TAO_Buffering_Constraint_Policy *servant = 0;
47 ACE_NEW_THROW_EX (servant,
48 TAO_Buffering_Constraint_Policy (*buffering_constraint),
49 CORBA::NO_MEMORY ());
51 return servant;
55 TAO_Buffering_Constraint_Policy *
56 TAO_Buffering_Constraint_Policy::clone () const
58 TAO_Buffering_Constraint_Policy *copy = 0;
59 ACE_NEW_RETURN (copy,
60 TAO_Buffering_Constraint_Policy (*this),
61 0);
62 return copy;
65 TAO::BufferingConstraint
66 TAO_Buffering_Constraint_Policy::buffering_constraint ()
68 return this->buffering_constraint_;
71 CORBA::Policy_ptr
72 TAO_Buffering_Constraint_Policy::copy ()
74 TAO_Buffering_Constraint_Policy* servant = 0;
75 ACE_NEW_THROW_EX (servant,
76 TAO_Buffering_Constraint_Policy (*this),
77 CORBA::NO_MEMORY ());
79 return servant;
82 void
83 TAO_Buffering_Constraint_Policy::destroy ()
87 TAO_Cached_Policy_Type
88 TAO_Buffering_Constraint_Policy::_tao_cached_type () const
90 return TAO_CACHED_POLICY_BUFFERING_CONSTRAINT;
93 TAO_END_VERSIONED_NAMESPACE_DECL
95 #endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */