RT_StructuredProxyPushSupplier.cpp

Go to the documentation of this file.
00001 // RT_StructuredProxyPushSupplier.cpp,v 1.16 2006/03/15 21:29:09 jtc Exp
00002 
00003 #include "orbsvcs/Notify/Structured/RT_StructuredProxyPushSupplier.h"
00004 #include "tao/debug.h"
00005 
00006 #include "tao/debug.h"
00007 #include "orbsvcs/Notify/Method_Request_Dispatch.h"
00008 
00009 ACE_RCSID (Notify, TAO_Notify_RT_StructuredProxyPushSupplier, "RT_StructuredProxyPushSupplier.cpp,v 1.16 2006/03/15 21:29:09 jtc Exp")
00010 
00011 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00012 
00013 TAO_Notify_RT_StructuredProxyPushSupplier::TAO_Notify_RT_StructuredProxyPushSupplier (void)
00014 {
00015 }
00016 
00017 TAO_Notify_RT_StructuredProxyPushSupplier::~TAO_Notify_RT_StructuredProxyPushSupplier ()
00018 {
00019 }
00020 
00021 CORBA::Object_ptr
00022 TAO_Notify_RT_StructuredProxyPushSupplier::activate (PortableServer::Servant servant ACE_ENV_ARG_DECL)
00023 {
00024   CORBA::Object_var object = TAO_Notify_Proxy::activate (servant ACE_ENV_ARG_PARAMETER);
00025   ACE_CHECK_RETURN (CORBA::Object::_nil ());
00026 
00027   // Obtain our ref.
00028   CORBA::Object_var obj = this->ref (ACE_ENV_SINGLE_ARG_PARAMETER);
00029   ACE_CHECK_RETURN (CORBA::Object::_nil ());
00030 
00031   this->event_forwarder_ = Event_Forwarder::StructuredProxyPushSupplier::_narrow (obj.in () ACE_ENV_ARG_PARAMETER);
00032 
00033   return object._retn ();
00034 }
00035 
00036 CORBA::Object_ptr
00037 TAO_Notify_RT_StructuredProxyPushSupplier::activate (PortableServer::Servant ,
00038                                                      CORBA::Long ACE_ENV_ARG_DECL_NOT_USED)
00039 {
00040    return CORBA::Object::_nil ();
00041 }
00042 
00043 void
00044 TAO_Notify_RT_StructuredProxyPushSupplier::deliver (TAO_Notify_Method_Request_Dispatch_No_Copy & request ACE_ENV_ARG_DECL)
00045 {
00046   ACE_TRY
00047     {
00048       request.event()->push (this->event_forwarder_.in () ACE_ENV_ARG_PARAMETER);
00049       ACE_TRY_CHECK;
00050     }
00051   ACE_CATCHANY
00052     {
00053       if (TAO_debug_level > 2)
00054         {
00055           ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, "(%P|%t) TAO_Notify_RT_StructuredProxyPushSupplier::push failed\n");
00056         }
00057 
00058     }
00059   ACE_ENDTRY;
00060 }
00061 
00062 void
00063 TAO_Notify_RT_StructuredProxyPushSupplier::push_no_filtering (const TAO_Notify_Event* event ACE_ENV_ARG_DECL)
00064 {
00065   ACE_TRY
00066     {
00067       event->push_no_filtering (this->event_forwarder_.in () ACE_ENV_ARG_PARAMETER);
00068       ACE_TRY_CHECK;
00069     }
00070   ACE_CATCHANY
00071     {
00072       if (TAO_debug_level > 2)
00073         {
00074           ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, "(%P|%t) TAO_Notify_RT_StructuredProxyPushSupplier::push failed\n");
00075         }
00076 
00077     }
00078   ACE_ENDTRY;
00079 }
00080 
00081 TAO_END_VERSIONED_NAMESPACE_DECL

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