diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.cpp')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.cpp b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.cpp new file mode 100644 index 00000000000..8f47fd1c894 --- /dev/null +++ b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.cpp @@ -0,0 +1,37 @@ +// $Id$ + +#include "orbsvcs/FtRtecEventChannelAdminC.h" +#include "orbsvcs/FtRtEvent/EventChannel/ProxySupplierStateWorker.h" +#include "orbsvcs/Event/EC_Event_Channel_Base.h" +#include "orbsvcs/Event/EC_ProxyConsumer.h" + +ACE_RCSID (EventChannel, + ProxySupplierStateWorker, + "$Id$") + +TAO_BEGIN_VERSIONED_NAMESPACE_DECL + +ProxySupplierStateWorker::ProxySupplierStateWorker ( + FtRtecEventChannelAdmin::ProxySupplierStates& states) + : supplierStates_(states) +{ +} + +ProxySupplierStateWorker::~ProxySupplierStateWorker() +{ +} + +void ProxySupplierStateWorker::set_size(size_t size) +{ + supplierStates_.length(size); + index_ = 0; +} + +void ProxySupplierStateWorker::work(TAO_EC_ProxyPushSupplier* object) +{ + TAO_FTEC_ProxyPushSupplier* proxy = + static_cast<TAO_FTEC_ProxyPushSupplier*> (object); + proxy->get_state(supplierStates_[index_++]); +} + +TAO_END_VERSIONED_NAMESPACE_DECL |