Supplier.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 /**
00004  *  @file Supplier.h
00005  *
00006  *  $Id: Supplier.h 81422 2008-04-24 12:33:29Z johnnyw $
00007  *
00008  *  @author Pradeep Gore <pradeep@oomworks.com>
00009  */
00010 
00011 #ifndef TAO_Notify_SUPPLIER_H
00012 #define TAO_Notify_SUPPLIER_H
00013 #include /**/ "ace/pre.h"
00014 
00015 #include "orbsvcs/Notify/notify_serv_export.h"
00016 
00017 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00018 # pragma once
00019 #endif /* ACE_LACKS_PRAGMA_ONCE */
00020 
00021 #include "orbsvcs/Notify/Peer.h"
00022 
00023 #include "orbsvcs/CosNotifyCommC.h"
00024 
00025 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00026 
00027 class TAO_Notify_ProxyConsumer;
00028 
00029 /**
00030  * @class TAO_Notify_Supplier
00031  *
00032  * @brief Base Wrappers for Suppliers that connect to the EventChannel.
00033  *
00034  */
00035 class TAO_Notify_Serv_Export TAO_Notify_Supplier : public TAO_Notify_Peer
00036 {
00037 public:
00038   /// Constructor
00039   TAO_Notify_Supplier (TAO_Notify_ProxyConsumer* proxy);
00040 
00041   /// Destructor
00042   virtual ~TAO_Notify_Supplier ();
00043 
00044   /// Access Specific Proxy.
00045   TAO_Notify_ProxyConsumer* proxy_consumer (void);
00046 
00047   /// Access Base Proxy.
00048   virtual TAO_Notify_Proxy* proxy (void);
00049 
00050 protected:
00051   /// Dispatch updates implementation.
00052   virtual void dispatch_updates_i (const CosNotification::EventTypeSeq& added,
00053                                    const CosNotification::EventTypeSeq& removed);
00054 
00055   /// The proxy that we associate with.
00056   TAO_Notify_ProxyConsumer* proxy_;
00057 
00058   /// Interface that accepts subscription_changes
00059   CosNotifyComm::NotifySubscribe_var subscribe_;
00060 };
00061 
00062 TAO_END_VERSIONED_NAMESPACE_DECL
00063 
00064 #if defined (__ACE_INLINE__)
00065 #include "orbsvcs/Notify/Supplier.inl"
00066 #endif /* __ACE_INLINE__ */
00067 
00068 #include /**/ "ace/post.h"
00069 #endif /* TAO_Notify_SUPPLIER_H */

Generated on Tue Feb 2 17:45:29 2010 for TAO_CosNotification by  doxygen 1.4.7