Go to the documentation of this file.00001
00002
00003 #include "orbsvcs/Notify/Proxy_T.h"
00004
00005 #ifndef TAO_Notify_PROXY_T_CPP
00006 #define TAO_Notify_PROXY_T_CPP
00007
00008 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00009
00010 template <class SERVANT_TYPE>
00011 TAO_Notify_Proxy_T<SERVANT_TYPE>::TAO_Notify_Proxy_T (void)
00012 {
00013
00014 this->_incr_refcnt();
00015 }
00016
00017 template <class SERVANT_TYPE>
00018 TAO_Notify_Proxy_T<SERVANT_TYPE>::~TAO_Notify_Proxy_T ()
00019 {
00020 }
00021
00022 template <class SERVANT_TYPE> PortableServer::Servant
00023 TAO_Notify_Proxy_T<SERVANT_TYPE>::servant (void)
00024 {
00025 return this;
00026 }
00027
00028 template <class SERVANT_TYPE> void
00029 TAO_Notify_Proxy_T<SERVANT_TYPE>::_add_ref (void)
00030 {
00031 this->_incr_refcnt ();
00032 }
00033
00034 template <class SERVANT_TYPE> void
00035 TAO_Notify_Proxy_T<SERVANT_TYPE>::_remove_ref (void)
00036 {
00037 this->_decr_refcnt ();
00038 }
00039
00040 template <class SERVANT_TYPE> void
00041 TAO_Notify_Proxy_T<SERVANT_TYPE>::validate_event_qos (const CosNotification::QoSProperties & , CosNotification::NamedPropertyRangeSeq_out )
00042 {
00043 throw CORBA::NO_IMPLEMENT ();
00044 }
00045
00046 template <class SERVANT_TYPE> CosNotification::QoSProperties*
00047 TAO_Notify_Proxy_T<SERVANT_TYPE>::get_qos (void)
00048 {
00049 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00050 CORBA::INTERNAL ());
00051
00052 return this->TAO_Notify_Object::get_qos ();
00053 }
00054
00055 template <class SERVANT_TYPE> void
00056 TAO_Notify_Proxy_T<SERVANT_TYPE>::set_qos (const CosNotification::QoSProperties & qos)
00057 {
00058 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00059 CORBA::INTERNAL ());
00060
00061 this->TAO_Notify_Object::set_qos (qos);
00062 }
00063
00064 template <class SERVANT_TYPE> void
00065 TAO_Notify_Proxy_T<SERVANT_TYPE>::validate_qos (
00066 const CosNotification::QoSProperties & ,
00067 CosNotification::NamedPropertyRangeSeq_out
00068 )
00069 {
00070 throw CORBA::NO_IMPLEMENT ();
00071 }
00072
00073 template <class SERVANT_TYPE> CosNotifyFilter::FilterID
00074 TAO_Notify_Proxy_T<SERVANT_TYPE>::add_filter (CosNotifyFilter::Filter_ptr new_filter)
00075 {
00076 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00077 CORBA::INTERNAL ());
00078
00079 CosNotifyFilter::FilterID fid =
00080 this->filter_admin_.add_filter (new_filter);
00081 this->self_change ();
00082 return fid;
00083 }
00084
00085 template <class SERVANT_TYPE> void
00086 TAO_Notify_Proxy_T<SERVANT_TYPE>::remove_filter (
00087 CosNotifyFilter::FilterID filter
00088 )
00089 {
00090 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00091 CORBA::INTERNAL ());
00092
00093 this->filter_admin_.remove_filter (filter);
00094 }
00095
00096 template <class SERVANT_TYPE> CosNotifyFilter::Filter_ptr
00097 TAO_Notify_Proxy_T<SERVANT_TYPE>::get_filter (CosNotifyFilter::FilterID filter)
00098 {
00099 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00100 CORBA::INTERNAL ());
00101
00102 return this->filter_admin_.get_filter (filter);
00103 }
00104
00105 template <class SERVANT_TYPE> CosNotifyFilter::FilterIDSeq*
00106 TAO_Notify_Proxy_T<SERVANT_TYPE>::get_all_filters (void)
00107 {
00108 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00109 CORBA::INTERNAL ());
00110
00111 return this->filter_admin_.get_all_filters ();
00112 }
00113
00114 template <class SERVANT_TYPE> void
00115 TAO_Notify_Proxy_T<SERVANT_TYPE>::remove_all_filters (void)
00116 {
00117 ACE_GUARD_THROW_EX (TAO_SYNCH_MUTEX, ace_mon, this->lock_,
00118 CORBA::INTERNAL ());
00119
00120 this->filter_admin_.remove_all_filters ();
00121 }
00122
00123 TAO_END_VERSIONED_NAMESPACE_DECL
00124
00125 #endif