00001
00002
00003
00004
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006
00007 ACE_INLINE CORBA::Boolean
00008 TAO_CEC_ProxyPushSupplier::is_connected_i (void) const
00009 {
00010 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00011 if (this->is_typed_ec ())
00012 {
00013 return !CORBA::is_nil (this->typed_consumer_.in ());
00014 }
00015 else
00016 {
00017 return !CORBA::is_nil (this->consumer_.in ());
00018 }
00019 #else
00020 return !CORBA::is_nil (this->consumer_.in ());
00021 #endif
00022 }
00023
00024 ACE_INLINE CORBA::Boolean
00025 TAO_CEC_ProxyPushSupplier::is_connected (void) const
00026 {
00027 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00028
00029 return this->is_connected_i ();
00030 }
00031
00032 ACE_INLINE CosEventComm::PushConsumer_ptr
00033 TAO_CEC_ProxyPushSupplier::consumer (void) const
00034 {
00035 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00036
00037 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00038 if (this->is_typed_ec ())
00039 {
00040 return this->typed_consumer_.in ();
00041 }
00042 else
00043 {
00044 return this->consumer_.in ();
00045 }
00046 #else
00047 return this->consumer_.in ();
00048 #endif
00049 }
00050
00051 ACE_INLINE void
00052 TAO_CEC_ProxyPushSupplier::consumer_i (CosEventComm::PushConsumer_ptr consumer)
00053 {
00054 this->consumer_ = consumer;
00055 }
00056
00057 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00058 ACE_INLINE void
00059 TAO_CEC_ProxyPushSupplier::consumer_i (CosTypedEventComm::TypedPushConsumer_ptr typed_consumer)
00060 {
00061 this->typed_consumer_ = typed_consumer;
00062 }
00063 #endif
00064
00065 ACE_INLINE void
00066 TAO_CEC_ProxyPushSupplier::consumer (CosEventComm::PushConsumer_ptr consumer)
00067 {
00068 ACE_GUARD (ACE_Lock, ace_mon, *this->lock_);
00069
00070 this->consumer_i (consumer);
00071 }
00072
00073 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00074 ACE_INLINE void
00075 TAO_CEC_ProxyPushSupplier::consumer (CosTypedEventComm::TypedPushConsumer_ptr typed_consumer)
00076 {
00077 ACE_GUARD (ACE_Lock, ace_mon, *this->lock_);
00078
00079 this->consumer_i (typed_consumer);
00080 }
00081 #endif
00082
00083 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00084 ACE_INLINE CORBA::Boolean
00085 TAO_CEC_ProxyPushSupplier::is_typed_ec (void) const
00086 {
00087 if (this->typed_event_channel_ != 0)
00088 {
00089 return true;
00090 }
00091 else
00092 {
00093 return false;
00094 }
00095 }
00096 #endif
00097
00098 TAO_END_VERSIONED_NAMESPACE_DECL