00001
00002
00003
00004
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006
00007 ACE_INLINE
00008 TAO_EC_Event_Channel_Attributes::
00009 TAO_EC_Event_Channel_Attributes (PortableServer::POA_ptr s_poa,
00010 PortableServer::POA_ptr c_poa)
00011 : consumer_reconnect (TAO_EC_DEFAULT_CONSUMER_RECONNECT),
00012 supplier_reconnect (TAO_EC_DEFAULT_SUPPLIER_RECONNECT),
00013 disconnect_callbacks (TAO_EC_DEFAULT_DISCONNECT_CALLBACKS),
00014 scheduler (CORBA::Object::_nil ()),
00015 supplier_poa (s_poa),
00016 consumer_poa (c_poa)
00017 {
00018 }
00019
00020 ACE_INLINE TAO_EC_Factory*
00021 TAO_EC_Event_Channel_Base::factory (void) const
00022 {
00023 return this->factory_;
00024 }
00025
00026 ACE_INLINE void
00027 TAO_EC_Event_Channel_Base::factory (TAO_EC_Factory* factory,
00028 int own_factory)
00029 {
00030 if (this->own_factory_)
00031 delete this->factory_;
00032
00033 this->factory_ = factory;
00034 this->own_factory_ = own_factory;
00035 }
00036
00037 ACE_INLINE TAO_EC_Dispatching*
00038 TAO_EC_Event_Channel_Base::dispatching (void) const
00039 {
00040 return this->dispatching_;
00041 }
00042
00043 ACE_INLINE TAO_EC_Filter_Builder*
00044 TAO_EC_Event_Channel_Base::filter_builder (void) const
00045 {
00046 return this->filter_builder_;
00047 }
00048
00049 ACE_INLINE TAO_EC_Supplier_Filter_Builder*
00050 TAO_EC_Event_Channel_Base::supplier_filter_builder (void) const
00051 {
00052 return this->supplier_filter_builder_;
00053 }
00054
00055 ACE_INLINE TAO_EC_ConsumerAdmin*
00056 TAO_EC_Event_Channel_Base::consumer_admin (void) const
00057 {
00058 return this->consumer_admin_;
00059 }
00060
00061 ACE_INLINE TAO_EC_SupplierAdmin*
00062 TAO_EC_Event_Channel_Base::supplier_admin (void) const
00063 {
00064 return this->supplier_admin_;
00065 }
00066
00067 ACE_INLINE TAO_EC_Timeout_Generator*
00068 TAO_EC_Event_Channel_Base::timeout_generator (void) const
00069 {
00070 return this->timeout_generator_;
00071 }
00072
00073 ACE_INLINE TAO_EC_Scheduling_Strategy*
00074 TAO_EC_Event_Channel_Base::scheduling_strategy (void) const
00075 {
00076 return this->scheduling_strategy_;
00077 }
00078
00079 ACE_INLINE TAO_EC_ConsumerControl*
00080 TAO_EC_Event_Channel_Base::consumer_control (void) const
00081 {
00082 return this->consumer_control_;
00083 }
00084
00085 ACE_INLINE TAO_EC_SupplierControl*
00086 TAO_EC_Event_Channel_Base::supplier_control (void) const
00087 {
00088 return this->supplier_control_;
00089 }
00090
00091 ACE_INLINE void
00092 TAO_EC_Event_Channel_Base::create_proxy (TAO_EC_ProxyPushSupplier*& x)
00093 {
00094 x = this->factory_->create_proxy_push_supplier (this);
00095 }
00096
00097 ACE_INLINE void
00098 TAO_EC_Event_Channel_Base::destroy_proxy (TAO_EC_ProxyPushSupplier* supplier)
00099 {
00100 this->factory_->destroy_proxy_push_supplier (supplier);
00101 }
00102
00103 ACE_INLINE void
00104 TAO_EC_Event_Channel_Base::create_proxy (TAO_EC_ProxyPushConsumer*& x)
00105 {
00106 x = this->factory_->create_proxy_push_consumer (this);
00107 }
00108
00109 ACE_INLINE void
00110 TAO_EC_Event_Channel_Base::destroy_proxy (TAO_EC_ProxyPushConsumer* consumer)
00111 {
00112 this->factory_->destroy_proxy_push_consumer (consumer);
00113 }
00114
00115 ACE_INLINE void
00116 TAO_EC_Event_Channel_Base::create_proxy_collection (TAO_EC_ProxyPushConsumer_Collection*& x)
00117 {
00118 x = this->factory_->create_proxy_push_consumer_collection (this);
00119 }
00120
00121 ACE_INLINE void
00122 TAO_EC_Event_Channel_Base::destroy_proxy_collection (TAO_EC_ProxyPushConsumer_Collection* x)
00123 {
00124 this->factory_->destroy_proxy_push_consumer_collection (x);
00125 }
00126
00127 ACE_INLINE void
00128 TAO_EC_Event_Channel_Base::create_proxy_collection (TAO_EC_ProxyPushSupplier_Collection*& x)
00129 {
00130 x = this->factory_->create_proxy_push_supplier_collection (this);
00131 }
00132
00133 ACE_INLINE void
00134 TAO_EC_Event_Channel_Base::destroy_proxy_collection (TAO_EC_ProxyPushSupplier_Collection* x)
00135 {
00136 this->factory_->destroy_proxy_push_supplier_collection (x);
00137 }
00138
00139 ACE_INLINE PortableServer::POA_ptr
00140 TAO_EC_Event_Channel_Base::supplier_poa (void)
00141 {
00142 return PortableServer::POA::_duplicate (this->supplier_poa_.in ());
00143 }
00144
00145 ACE_INLINE PortableServer::POA_ptr
00146 TAO_EC_Event_Channel_Base::consumer_poa (void)
00147 {
00148 return PortableServer::POA::_duplicate (this->consumer_poa_.in ());
00149 }
00150
00151 ACE_INLINE ACE_Lock*
00152 TAO_EC_Event_Channel_Base::create_consumer_lock (void)
00153 {
00154 return this->factory_->create_consumer_lock ();
00155 }
00156
00157 ACE_INLINE void
00158 TAO_EC_Event_Channel_Base::destroy_consumer_lock (ACE_Lock* x)
00159 {
00160 this->factory_->destroy_consumer_lock (x);
00161 }
00162
00163 ACE_INLINE ACE_Lock*
00164 TAO_EC_Event_Channel_Base::create_supplier_lock (void)
00165 {
00166 return this->factory_->create_supplier_lock ();
00167 }
00168
00169 ACE_INLINE void
00170 TAO_EC_Event_Channel_Base::destroy_supplier_lock (ACE_Lock* x)
00171 {
00172 this->factory_->destroy_supplier_lock (x);
00173 }
00174
00175 ACE_INLINE int
00176 TAO_EC_Event_Channel_Base::consumer_reconnect (void) const
00177 {
00178 return this->consumer_reconnect_;
00179 }
00180
00181 ACE_INLINE int
00182 TAO_EC_Event_Channel_Base::supplier_reconnect (void) const
00183 {
00184 return this->supplier_reconnect_;
00185 }
00186
00187 ACE_INLINE int
00188 TAO_EC_Event_Channel_Base::disconnect_callbacks (void) const
00189 {
00190 return this->disconnect_callbacks_;
00191 }
00192
00193 ACE_INLINE CORBA::Object_ptr
00194 TAO_EC_Event_Channel_Base::scheduler (void)
00195 {
00196 return CORBA::Object::_duplicate (this->scheduler_.in ());
00197 }
00198
00199 ACE_INLINE int
00200 TAO_EC_Event_Channel_Base::destroyed (void)
00201 {
00202 ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, ace_mon, this->mutex_, 0);
00203 return (this->status_ == EC_S_DESTROYED);
00204 }
00205
00206 TAO_END_VERSIONED_NAMESPACE_DECL