00001
00002
00003
00004
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006
00007 ACE_INLINE void
00008 TAO_EC_ProxyPushSupplier::suspend_connection_i (void)
00009 {
00010 this->suspended_ = 1;
00011 }
00012
00013 ACE_INLINE void
00014 TAO_EC_ProxyPushSupplier::suspend_connection_locked (void)
00015 {
00016 ACE_GUARD_THROW_EX (
00017 ACE_Lock, ace_mon, *this->lock_,
00018 CORBA::INTERNAL ());
00019
00020
00021 this->suspend_connection_i ();
00022 }
00023
00024 ACE_INLINE void
00025 TAO_EC_ProxyPushSupplier::resume_connection_i (void)
00026 {
00027 this->suspended_ = 0;
00028 }
00029
00030 ACE_INLINE void
00031 TAO_EC_ProxyPushSupplier::resume_connection_locked (void)
00032 {
00033 ACE_GUARD_THROW_EX (
00034 ACE_Lock, ace_mon, *this->lock_,
00035 CORBA::INTERNAL ());
00036
00037
00038 this->resume_connection_i ();
00039 }
00040
00041 ACE_INLINE CORBA::Boolean
00042 TAO_EC_ProxyPushSupplier::is_connected_i (void) const
00043 {
00044 return !CORBA::is_nil (this->consumer_.in ());
00045 }
00046
00047 ACE_INLINE CORBA::Boolean
00048 TAO_EC_ProxyPushSupplier::is_connected (void) const
00049 {
00050 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00051
00052 return this->is_connected_i ();
00053 }
00054
00055 ACE_INLINE CORBA::Boolean
00056 TAO_EC_ProxyPushSupplier::is_suspended (void) const
00057 {
00058 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00059
00060 return this->suspended_;
00061 }
00062
00063 ACE_INLINE RtecEventComm::PushConsumer_ptr
00064 TAO_EC_ProxyPushSupplier::consumer (void) const
00065 {
00066 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00067 return RtecEventComm::PushConsumer::_duplicate (this->consumer_.in ());
00068 }
00069
00070 ACE_INLINE void
00071 TAO_EC_ProxyPushSupplier::consumer_i (RtecEventComm::PushConsumer_ptr consumer)
00072 {
00073 this->consumer_ = consumer;
00074 }
00075
00076 ACE_INLINE void
00077 TAO_EC_ProxyPushSupplier::consumer (RtecEventComm::PushConsumer_ptr consumer)
00078 {
00079 ACE_GUARD (ACE_Lock, ace_mon, *this->lock_);
00080
00081 this->consumer_i (consumer);
00082 }
00083
00084 ACE_INLINE const RtecEventChannelAdmin::ConsumerQOS&
00085 TAO_EC_ProxyPushSupplier::subscriptions (void) const
00086 {
00087
00088 ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, this->qos_);
00089
00090 return this->qos_;
00091 }
00092
00093 TAO_END_VERSIONED_NAMESPACE_DECL