#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(). |
1.3.6