Object.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Object.inl,v 1.9 2005/11/14 22:03:49 ossama Exp
00004 
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 ACE_INLINE CORBA::Long
00008 TAO_Notify_Object::id (void) const
00009 {
00010   return id_;
00011 }
00012 
00013 ACE_INLINE void
00014 TAO_Notify_Object::execute_task (TAO_Notify_Method_Request& method_request ACE_ENV_ARG_DECL)
00015 {
00016   TAO_Notify_Worker_Task::Ptr task( this->worker_task_ );
00017   if ( task.isSet() )
00018   {
00019     task->execute( method_request ACE_ENV_ARG_PARAMETER );
00020   }
00021 }
00022 
00023 ACE_INLINE void
00024 TAO_Notify_Object::inherit_poas (TAO_Notify_Object& parent)
00025 {
00026   this->set_proxy_poa( parent.proxy_poa() );
00027   this->set_object_poa( parent.object_poa() );
00028   this->set_poa( parent.poa() );
00029 
00030   // Do not take ownership of parent's poas
00031   own_proxy_poa_ = false;
00032   own_object_poa_ = false;
00033 }
00034 
00035 ACE_INLINE void
00036 TAO_Notify_Object::adopt_poa (TAO_Notify_POA_Helper* single)
00037 {
00038   ACE_ASSERT( single != 0 );
00039   this->set_proxy_poa( single );
00040   this->set_object_poa( single );
00041   this->set_poa( single );
00042 
00043   // Maintain ownership of the poa
00044 }
00045 
00046 ACE_INLINE void
00047 TAO_Notify_Object::set_primary_as_proxy_poa()
00048 {
00049   this->set_poa( this->proxy_poa() );
00050 }
00051 
00052 ACE_INLINE TAO_Notify_POA_Helper*
00053 TAO_Notify_Object::poa (void)
00054 {
00055   return this->poa_;
00056 }
00057 
00058 ACE_INLINE TAO_Notify_POA_Helper*
00059 TAO_Notify_Object::object_poa (void)
00060 {
00061   return this->object_poa_;
00062 }
00063 
00064 ACE_INLINE TAO_Notify_POA_Helper*
00065 TAO_Notify_Object::proxy_poa (void)
00066 {
00067   return this->proxy_poa_;
00068 }
00069 
00070 ACE_INLINE int
00071 TAO_Notify_Object::has_shutdown (void)
00072 {
00073   return this->shutdown_;
00074 }
00075 
00076 ACE_INLINE void
00077 TAO_Notify_Object::set_admin_properties( TAO_Notify_AdminProperties* admin_properties )
00078 {
00079   ACE_ASSERT( admin_properties != 0 );
00080   this->admin_properties_.reset( admin_properties );
00081 }
00082 
00083 ACE_INLINE TAO_Notify_Event_Manager&
00084 TAO_Notify_Object::event_manager (void)
00085 {
00086   ACE_ASSERT( this->event_manager_.get() != 0 );
00087   return *this->event_manager_;
00088 }
00089 
00090 ACE_INLINE TAO_Notify_AdminProperties&
00091 TAO_Notify_Object::admin_properties (void)
00092 {
00093   ACE_ASSERT( this->admin_properties_.get() != 0 );
00094   return *this->admin_properties_;
00095 }
00096 
00097 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 13:24:12 2006 for TAO_CosNotification by doxygen 1.3.6