#include <QoSProperties.h>
Inheritance diagram for TAO_Notify_QoSProperties:
|
Definition at line 89 of file QoSProperties.h.
00089 {UNSUPPORTED_PROPERTY_COUNT = 1}; |
|
Constuctor.
Definition at line 16 of file QoSProperties.cpp. References unsupported_.
00017 : event_reliability_(CosNotification::EventReliability) 00018 , connection_reliability_(CosNotification::ConnectionReliability) 00019 , priority_ (CosNotification::Priority) 00020 , timeout_ (CosNotification::Timeout) 00021 , stop_time_supported_ (CosNotification::StopTimeSupported) 00022 , maximum_batch_size_ (CosNotification::MaximumBatchSize) 00023 , pacing_interval_ (CosNotification::PacingInterval) 00024 , max_events_per_consumer_ (CosNotification::MaxEventsPerConsumer) 00025 , discard_policy_ (CosNotification::DiscardPolicy) 00026 , order_policy_ (CosNotification::OrderPolicy) 00027 , thread_pool_ (NotifyExt::ThreadPool) 00028 , thread_pool_lane_ (NotifyExt::ThreadPoolLanes) 00029 , blocking_policy_(TAO_Notify_Extensions::BlockingPolicy) 00030 { 00031 unsupported_[0] = CosNotification::StartTimeSupported; 00032 } |
|
Destructor.
Definition at line 34 of file QoSProperties.cpp.
00035 { 00036 } |
|
|
|
Definition at line 89 of file QoSProperties.inl.
00090 { 00091 return this->blocking_policy_; 00092 } |
|
Definition at line 105 of file QoSProperties.inl. References connection_reliability_.
00106 { 00107 return this->connection_reliability_; 00108 } |
|
Definition at line 16 of file QoSProperties.inl. References connection_reliability_.
00017 { 00018 return this->connection_reliability_; 00019 } |
|
Populate with all properties from this object. Returns -1 on error.
Definition at line 178 of file QoSProperties.cpp. References blocking_policy_, connection_reliability_, discard_policy_, event_reliability_, max_events_per_consumer_, maximum_batch_size_, order_policy_, pacing_interval_, priority_, TAO_Notify_PropertySeq::property_map_, stop_time_supported_, and timeout_. Referenced by TAO_Notify_Object::set_qos(), and transfer().
00179 { 00180 qos_properties.event_reliability_ = this->event_reliability_; 00181 qos_properties.connection_reliability_ = this->connection_reliability_; 00182 qos_properties.priority_ = this->priority_; 00183 qos_properties.timeout_ = this->timeout_; 00184 qos_properties.stop_time_supported_ = this->stop_time_supported_; 00185 qos_properties.maximum_batch_size_ = this->maximum_batch_size_; 00186 qos_properties.pacing_interval_ = this->pacing_interval_; 00187 qos_properties.max_events_per_consumer_ = this->max_events_per_consumer_; 00188 qos_properties.discard_policy_ = this->discard_policy_; 00189 qos_properties.order_policy_ = this->order_policy_; 00190 00191 qos_properties.blocking_policy_ = this->blocking_policy_; 00192 00193 PROPERTY_MAP::ITERATOR iter (this->property_map_); 00194 PROPERTY_MAP::ENTRY *entry; 00195 00196 for (; iter.next (entry); iter.advance ()) 00197 { 00198 if (qos_properties.property_map_.rebind (entry->ext_id_, entry->int_id_) == -1) 00199 return -1; 00200 } 00201 00202 return 0; 00203 } |
|
Definition at line 151 of file QoSProperties.inl.
00152 { 00153 return this->discard_policy_; 00154 } |
|
Definition at line 63 of file QoSProperties.inl.
00064 { 00065 return this->discard_policy_; 00066 } |
|
Definition at line 98 of file QoSProperties.inl. References event_reliability_.
00099 { 00100 return this->event_reliability_; 00101 } |
|
Definition at line 9 of file QoSProperties.inl. References event_reliability_. Referenced by TAO_Notify::Topology_Object::is_persistent().
00010 { 00011 return this->event_reliability_; 00012 } |
|
This version initializes the base from our members.
Definition at line 50 of file QoSProperties.cpp. References TAO_Notify_PropertySeq::add(), connection_reliability_, event_reliability_, TAO_Notify_StructProperty_T< TYPE >::is_valid(), TAO_Notify_Property_Boolean::is_valid(), TAO_Notify_PropertyBase_T< TYPE >::is_valid(), maximum_batch_size_, pacing_interval_, stop_time_supported_, thread_pool_, thread_pool_lane_, TAO_Notify_StructProperty_T< TYPE >::value(), and TAO_Notify_PropertyBase_T< TYPE >::value().
00051 { 00052 if (this->event_reliability_.is_valid()) 00053 { 00054 CORBA::Any a; 00055 a <<= this->event_reliability_.value(); 00056 this->add(this->event_reliability_.name(), a); 00057 } 00058 if (this->connection_reliability_.is_valid()) 00059 { 00060 CORBA::Any a; 00061 a <<= this->connection_reliability_.value(); 00062 this->add(this->connection_reliability_.name(), a); 00063 } 00064 if (this->priority_.is_valid()) 00065 { 00066 CORBA::Any a; 00067 a <<= this->priority_.value(); 00068 this->add(this->priority_.name(), a); 00069 } 00070 if (this->timeout_.is_valid()) 00071 { 00072 CORBA::Any a; 00073 a <<= this->timeout_.value(); 00074 this->add(this->timeout_.name(), a); 00075 } 00076 if (this->stop_time_supported_.is_valid()) 00077 { 00078 CORBA::Any a; 00079 a <<= CORBA::Any::from_boolean (this->stop_time_supported_.value()); 00080 this->add(this->stop_time_supported_.name(), a); 00081 } 00082 if (this->maximum_batch_size_.is_valid()) 00083 { 00084 CORBA::Any a; 00085 a <<= this->maximum_batch_size_.value(); 00086 this->add(this->maximum_batch_size_.name(), a); 00087 } 00088 if (this->pacing_interval_.is_valid()) 00089 { 00090 CORBA::Any a; 00091 a <<= this->pacing_interval_.value(); 00092 this->add(this->pacing_interval_.name(), a); 00093 } 00094 if (this->max_events_per_consumer_.is_valid()) 00095 { 00096 CORBA::Any a; 00097 a <<= this->max_events_per_consumer_.value(); 00098 this->add(this->max_events_per_consumer_.name(), a); 00099 } 00100 if (this->discard_policy_.is_valid()) 00101 { 00102 CORBA::Any a; 00103 a <<= this->discard_policy_.value(); 00104 this->add(this->discard_policy_.name(), a); 00105 } 00106 if (this->order_policy_.is_valid()) 00107 { 00108 CORBA::Any a; 00109 a <<= this->order_policy_.value(); 00110 this->add(this->order_policy_.name(), a); 00111 } 00112 00113 if (this->thread_pool_.is_valid()) 00114 { 00115 CORBA::Any a; 00116 a <<= this->thread_pool_.value(); 00117 this->add(this->thread_pool_.name(), a); 00118 } 00119 if (this->thread_pool_lane_.is_valid()) 00120 { 00121 CORBA::Any a; 00122 a <<= this->thread_pool_lane_.value(); 00123 this->add(this->thread_pool_lane_.name(), a); 00124 } 00125 if (this->blocking_policy_.is_valid()) 00126 { 00127 CORBA::Any a; 00128 a <<= this->blocking_policy_.value(); 00129 this->add(this->blocking_policy_.name(), a); 00130 } 00131 } |
|
Return 0 on success, 1 if unsupported properties were detected and -1 on error.
Definition at line 134 of file QoSProperties.cpp. References ACE_CString, connection_reliability_, event_reliability_, maximum_batch_size_, pacing_interval_, CosNotification::PropertyErrorSeq, CosNotification::PropertySeq, TAO_Notify_StructProperty_T< TYPE >::set(), TAO_Notify_Property_Boolean::set(), TAO_Notify_Property_T< TYPE >::set(), stop_time_supported_, CORBA::string_dup(), thread_pool_, thread_pool_lane_, and unsupported(). Referenced by TAO_Notify_Object::load_attrs(), and TAO_Notify_Object::set_qos().
00135 { 00136 int err_index = -1; 00137 00138 ACE_CString name; 00139 for (CORBA::ULong i = 0; i < prop_seq.length (); ++i) 00140 { 00141 name = prop_seq[i].name.in(); 00142 00143 if (this->unsupported (name)) 00144 { 00145 err_index = err_seq.length (); 00146 err_seq.length (err_seq.length () + 1); 00147 00148 err_seq[err_index].code = CosNotification::UNSUPPORTED_PROPERTY; 00149 err_seq[err_index].name = CORBA::string_dup (prop_seq[i].name); 00150 } 00151 else if (this->property_map_.rebind (prop_seq[i].name.in (), prop_seq[i].value) == -1) 00152 return -1; 00153 // Note call to rebind. This allows to call <init> to set updates. 00154 } 00155 00156 if (prop_seq.length () > 0) 00157 { 00158 this->event_reliability_.set (*this); 00159 this->connection_reliability_.set (*this); 00160 this->priority_.set (*this); 00161 this->timeout_.set (*this); 00162 this->stop_time_supported_.set (*this); 00163 this->maximum_batch_size_.set (*this); 00164 this->pacing_interval_.set (*this); 00165 this->max_events_per_consumer_.set (*this); 00166 this->discard_policy_.set (*this); 00167 this->order_policy_.set (*this); 00168 00169 this->thread_pool_.set (*this); 00170 this->thread_pool_lane_.set (*this); 00171 this->blocking_policy_.set (*this); 00172 } 00173 00174 return err_index == -1 ? 0 : 1; 00175 } |
|
Definition at line 144 of file QoSProperties.inl.
00145 { 00146 return this->max_events_per_consumer_; 00147 } |
|
Definition at line 56 of file QoSProperties.inl.
00057 { 00058 return this->max_events_per_consumer_; 00059 } |
|
Definition at line 132 of file QoSProperties.inl. References maximum_batch_size_.
00133 { 00134 return this->maximum_batch_size_; 00135 } |
|
Definition at line 43 of file QoSProperties.inl. References maximum_batch_size_. Referenced by TAO_Notify_Consumer::qos_changed().
00044 { 00045 return this->maximum_batch_size_; 00046 } |
|
Definition at line 158 of file QoSProperties.inl.
00159 { 00160 return this->order_policy_; 00161 } |
|
Definition at line 70 of file QoSProperties.inl.
00071 { 00072 return this->order_policy_; 00073 } |
|
Definition at line 138 of file QoSProperties.inl. References pacing_interval_.
00139 { 00140 return this->pacing_interval_; 00141 } |
|
Definition at line 49 of file QoSProperties.inl. References pacing_interval_.
00050 { 00051 return this->pacing_interval_; 00052 } |
|
Definition at line 112 of file QoSProperties.inl.
00113 { 00114 return this->priority_; 00115 } |
|
Definition at line 23 of file QoSProperties.inl.
00024 { 00025 return this->priority_; 00026 } |
|
Definition at line 126 of file QoSProperties.inl. References stop_time_supported_.
00127 { 00128 return this->stop_time_supported_; 00129 } |
|
Definition at line 37 of file QoSProperties.inl. References stop_time_supported_.
00038 { 00039 return this->stop_time_supported_; 00040 } |
|
= Accessors
Definition at line 76 of file QoSProperties.inl. References thread_pool_. Referenced by TAO_Notify_Object::set_qos().
00077 { 00078 return this->thread_pool_; 00079 } |
|
Definition at line 82 of file QoSProperties.inl. References thread_pool_lane_. Referenced by TAO_Notify_Object::set_qos().
00083 { 00084 return this->thread_pool_lane_; 00085 } |
|
Definition at line 119 of file QoSProperties.inl.
00120 { 00121 return this->timeout_; 00122 } |
|
Definition at line 30 of file QoSProperties.inl.
00031 { 00032 return this->timeout_; 00033 } |
|
Populate with properties that can be transfered.Returns -1 on error.
Definition at line 206 of file QoSProperties.cpp. References copy(), and TAO_Notify_PropertySeq::property_map_. Referenced by TAO_Notify_Object::initialize().
00207 { 00208 if (this->copy (qos_properties) == -1) 00209 return -1; 00210 00211 // unbind the properties that we don't want to transfer. 00212 qos_properties.property_map_.unbind (NotifyExt::ThreadPool); 00213 qos_properties.property_map_.unbind (NotifyExt::ThreadPoolLanes); 00214 00215 return 0; 00216 } |
|
Return 1 if is unsupported.
Definition at line 39 of file QoSProperties.cpp. References unsupported_, and UNSUPPORTED_PROPERTY_COUNT. Referenced by init().
00040 { 00041 for (int i = 0; i < UNSUPPORTED_PROPERTY_COUNT; ++i) 00042 { 00043 if (this->unsupported_[i] == name) 00044 return 1; 00045 } 00046 00047 return 0; 00048 } |
|
Definition at line 109 of file QoSProperties.h. Referenced by copy(). |
|
Definition at line 96 of file QoSProperties.h. Referenced by connection_reliability(), copy(), and init(). |
|
Definition at line 103 of file QoSProperties.h. Referenced by copy(). |
|
= Supported standard properties
Definition at line 95 of file QoSProperties.h. Referenced by copy(), event_reliability(), and init(). |
|
Definition at line 102 of file QoSProperties.h. Referenced by copy(). |
|
Definition at line 100 of file QoSProperties.h. Referenced by copy(), init(), and maximum_batch_size(). |
|
Definition at line 104 of file QoSProperties.h. Referenced by copy(). |
|
Definition at line 101 of file QoSProperties.h. Referenced by copy(), init(), and pacing_interval(). |
|
Definition at line 97 of file QoSProperties.h. Referenced by copy(). |
|
Definition at line 99 of file QoSProperties.h. Referenced by copy(), init(), and stop_time_supported(). |
|
TAO Extensions.
Definition at line 107 of file QoSProperties.h. Referenced by init(), and thread_pool(). |
|
Definition at line 108 of file QoSProperties.h. Referenced by init(), and thread_pool_lane(). |
|
Definition at line 98 of file QoSProperties.h. Referenced by copy(). |
|
= Unsupported Properties.
Definition at line 92 of file QoSProperties.h. Referenced by TAO_Notify_QoSProperties(), and unsupported(). |