00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef TAO_Notify_PROXYPUSHCONSUMER_H
00013 #define TAO_Notify_PROXYPUSHCONSUMER_H
00014
00015 #include "ace/pre.h"
00016
00017 #include "orbsvcs/Notify/notify_serv_export.h"
00018
00019 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00020 # pragma once
00021 #endif
00022
00023 #include "orbsvcs/CosNotifyChannelAdminS.h"
00024 #include "orbsvcs/Notify/ProxyConsumer_T.h"
00025
00026 #if defined(_MSC_VER)
00027 #pragma warning(push)
00028 #pragma warning(disable:4250)
00029 #endif
00030
00031 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00032
00033
00034
00035
00036
00037
00038
00039 class TAO_Notify_Serv_Export TAO_Notify_ProxyPushConsumer
00040 : public virtual TAO_Notify_ProxyConsumer_T <
00041 POA_CosNotifyChannelAdmin::ProxyPushConsumer
00042 >
00043 {
00044 typedef TAO_Notify_ProxyConsumer_T <POA_CosNotifyChannelAdmin::ProxyPushConsumer> SuperClass;
00045 friend class TAO_Notify_Builder;
00046 public:
00047
00048 TAO_Notify_ProxyPushConsumer (void);
00049
00050
00051 virtual ~TAO_Notify_ProxyPushConsumer ();
00052
00053
00054
00055 virtual const char * get_proxy_type_name (void) const;
00056
00057 virtual void load_attrs (const TAO_Notify::NVPList& attrs);
00058
00059 protected:
00060
00061
00062 virtual CosNotifyChannelAdmin::ProxyType MyType (void);
00063
00064 virtual void push (const CORBA::Any & data);
00065
00066 virtual void connect_any_push_supplier (CosEventComm::PushSupplier_ptr push_supplier);
00067
00068 virtual void disconnect_push_consumer (void);
00069
00070 private:
00071
00072 virtual void release (void);
00073 };
00074
00075 TAO_END_VERSIONED_NAMESPACE_DECL
00076
00077 #if defined(_MSC_VER)
00078 #pragma warning(pop)
00079 #endif
00080
00081 #include "ace/post.h"
00082 #endif