5 * @author Pradeep Gore <pradeep@oomworks.com>
8 #ifndef TAO_Notify_Tests_CONSUMER_T_H
9 #define TAO_Notify_Tests_CONSUMER_T_H
10 #include /**/ "ace/pre.h"
12 #if !defined (ACE_LACKS_PRAGMA_ONCE)
14 #endif /* ACE_LACKS_PRAGMA_ONCE */
18 class TAO_Notify_Tests_ConsumerAdmin_Traits
21 typedef CosNotifyChannelAdmin::ConsumerAdmin INTERFACE
;
22 typedef CosNotifyChannelAdmin::ConsumerAdmin_ptr PTR
;
23 typedef CosNotifyChannelAdmin::ConsumerAdmin_var VAR
;
26 class TAO_Notify_Tests_ConsumerAdmin_Ext_Traits
29 typedef NotifyExt::ConsumerAdmin INTERFACE
;
30 typedef NotifyExt::ConsumerAdmin_ptr PTR
;
31 typedef NotifyExt::ConsumerAdmin_var VAR
;
35 * @class TAO_Notify_Tests_Consumer_T
37 * @brief Base template to implement Consumers.
39 template <class Consumer_Traits
>
40 class TAO_Notify_Tests_Consumer_T
: public TAO_Notify_Tests_Peer_T
<Consumer_Traits
>
42 typedef typename
Consumer_Traits::Admin_Traits Admin_Traits
;
43 typedef typename
Consumer_Traits::Admin_Ext_Traits Admin_Ext_Traits
;
44 typedef typename
Consumer_Traits::Proxy_Traits Proxy_Traits
;
46 typedef typename
Proxy_Traits::INTERFACE Proxy_Traits_INTERFACE
;
47 typedef typename
Proxy_Traits::PTR Proxy_Traits_PTR
;
48 typedef typename
Admin_Traits::PTR Admin_Traits_PTR
;
49 typedef typename
Admin_Ext_Traits::PTR Admin_Ext_Traits_PTR
;
53 TAO_Notify_Tests_Consumer_T ();
56 ~TAO_Notify_Tests_Consumer_T ();
58 /// For backward compatibility. use <get_proxy> instead.
59 Proxy_Traits_PTR
get_proxy_supplier ();
61 /// Send subscription_change
62 virtual void subscription_change (CosNotification::EventTypeSeq
&added
, CosNotification::EventTypeSeq
& removed
);
66 virtual Proxy_Traits_PTR
obtain_proxy (Admin_Traits_PTR admin_ptr
);
68 /// Obtain Proxy with QoS.
69 virtual Proxy_Traits_PTR
obtain_proxy (Admin_Ext_Traits_PTR admin_ptr
70 , CosNotification::QoSProperties
& qos
);
72 // = NotifyPublish method
73 virtual void offer_change (const CosNotification::EventTypeSeq
& added
,
74 const CosNotification::EventTypeSeq
& removed
);
77 #include "Consumer_T.cpp"
79 #include /**/ "ace/post.h"
80 #endif /* TAO_Notify_Tests_CONSUMER_T_H */