Go to the documentation of this file.00001
00002
00003 #include "tao/DiffServPolicy/Client_Network_Priority_Policy.h"
00004 #include "tao/ORB_Constants.h"
00005 #include "tao/SystemException.h"
00006
00007 ACE_RCSID (DiffServPolicy,
00008 Client_Network_Priority_Policy,
00009 "$Id: Client_Network_Priority_Policy.cpp 81449 2008-04-25 18:30:04Z johnnyw $")
00010
00011 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00012
00013 TAO_Client_Network_Priority_Policy::TAO_Client_Network_Priority_Policy (void)
00014 : ::CORBA::Object ()
00015 , ::CORBA::Policy ()
00016 , TAO::NetworkPriorityPolicy ()
00017 , ::CORBA::LocalObject ()
00018 , request_diffserv_codepoint_ (0)
00019 , reply_diffserv_codepoint_ (0)
00020 , network_priority_model_ (TAO::NO_NETWORK_PRIORITY)
00021 {
00022 }
00023
00024 TAO_Client_Network_Priority_Policy::TAO_Client_Network_Priority_Policy (
00025 const TAO::DiffservCodepoint request_diffserv_codepoint,
00026 const TAO::DiffservCodepoint reply_diffserv_codepoint,
00027 TAO::NetworkPriorityModel network_priority_model)
00028 : ::CORBA::Object ()
00029 , ::CORBA::Policy ()
00030 , TAO::NetworkPriorityPolicy ()
00031 , ::CORBA::LocalObject ()
00032 , request_diffserv_codepoint_ (request_diffserv_codepoint)
00033 , reply_diffserv_codepoint_ (reply_diffserv_codepoint)
00034 , network_priority_model_ (network_priority_model)
00035 {
00036 }
00037
00038 TAO_Client_Network_Priority_Policy::TAO_Client_Network_Priority_Policy (
00039 const TAO_Client_Network_Priority_Policy &rhs)
00040 : ::CORBA::Object ()
00041 , ::CORBA::Policy ()
00042 , TAO::NetworkPriorityPolicy ()
00043 , ::CORBA::LocalObject ()
00044 , request_diffserv_codepoint_ (rhs.request_diffserv_codepoint_)
00045 , reply_diffserv_codepoint_ (rhs.reply_diffserv_codepoint_)
00046 , network_priority_model_ (rhs.network_priority_model_)
00047 {
00048 }
00049
00050 CORBA::Policy_ptr
00051 TAO_Client_Network_Priority_Policy::create (const CORBA::Any &)
00052 {
00053 CORBA::Policy_ptr policy = CORBA::Policy::_nil ();
00054
00055 ACE_NEW_THROW_EX (policy,
00056 TAO_Client_Network_Priority_Policy (),
00057 CORBA::NO_MEMORY (
00058 CORBA::SystemException::_tao_minor_code (
00059 TAO::VMCID,
00060 ENOMEM),
00061 CORBA::COMPLETED_NO));
00062
00063 return policy;
00064 }
00065
00066 CORBA::PolicyType
00067 TAO_Client_Network_Priority_Policy::policy_type (void)
00068 {
00069 return TAO::CLIENT_NETWORK_PRIORITY_TYPE;
00070 }
00071
00072 TAO_Client_Network_Priority_Policy *
00073 TAO_Client_Network_Priority_Policy::clone (void) const
00074 {
00075 TAO_Client_Network_Priority_Policy *copy = 0;
00076 ACE_NEW_RETURN (copy,
00077 TAO_Client_Network_Priority_Policy (*this),
00078 0);
00079 return copy;
00080 }
00081
00082 TAO::DiffservCodepoint
00083 TAO_Client_Network_Priority_Policy::request_diffserv_codepoint (void)
00084 {
00085 return this->request_diffserv_codepoint_;
00086 }
00087
00088 void
00089 TAO_Client_Network_Priority_Policy::request_diffserv_codepoint (
00090 TAO::DiffservCodepoint req_dscp)
00091 {
00092 this->request_diffserv_codepoint_ = req_dscp;
00093 }
00094
00095 TAO::DiffservCodepoint
00096 TAO_Client_Network_Priority_Policy::reply_diffserv_codepoint (void)
00097 {
00098 return this->reply_diffserv_codepoint_;
00099 }
00100
00101 void
00102 TAO_Client_Network_Priority_Policy::reply_diffserv_codepoint (
00103 TAO::DiffservCodepoint reply_dscp)
00104 {
00105 this->reply_diffserv_codepoint_ = reply_dscp;
00106 }
00107
00108 TAO::NetworkPriorityModel
00109 TAO_Client_Network_Priority_Policy::network_priority_model (void)
00110 {
00111 return this->network_priority_model_;
00112 }
00113
00114 void
00115 TAO_Client_Network_Priority_Policy::network_priority_model (
00116 TAO::NetworkPriorityModel npm)
00117 {
00118 this->network_priority_model_ = npm;
00119 }
00120
00121 CORBA::Policy_ptr
00122 TAO_Client_Network_Priority_Policy::copy (void)
00123 {
00124 TAO_Client_Network_Priority_Policy* servant = 0;
00125 ACE_NEW_THROW_EX (servant,
00126 TAO_Client_Network_Priority_Policy (*this),
00127 CORBA::NO_MEMORY ());
00128
00129 return servant;
00130 }
00131
00132 void
00133 TAO_Client_Network_Priority_Policy::destroy (void)
00134 {
00135 }
00136
00137 TAO_Cached_Policy_Type
00138 TAO_Client_Network_Priority_Policy::_tao_cached_type (void) const
00139 {
00140 return TAO_CACHED_POLICY_CLIENT_NETWORK_PRIORITY;
00141 }
00142
00143 TAO_Policy_Scope
00144 TAO_Client_Network_Priority_Policy::_tao_scope (void) const
00145 {
00146 return static_cast<TAO_Policy_Scope> (TAO_POLICY_DEFAULT_SCOPE |
00147 TAO_POLICY_CLIENT_EXPOSED);
00148 }
00149
00150 TAO_END_VERSIONED_NAMESPACE_DECL