summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Notify/Notify_Update_Dispatch_Command.cpp
blob: 0a94673baa254c49925d6997f325f1b28c332dd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// $Id$

#include "Notify_Update_Dispatch_Command.h"
#include "Notify_Collection.h"
#include "Notify_Listeners.h"
#include "Notify_Event.h"

ACE_RCSID(Notify, Notify_Update_Dispatch_Command, "$Id$")

TAO_Notify_Update_Dispatch_Command::TAO_Notify_Update_Dispatch_Command (TAO_Notify_UpdateListener* update_listener, TAO_Notify_EventType_List& added, TAO_Notify_EventType_List& removed)
  :TAO_Notify_Command (0,0),
   update_listener_ (update_listener),
   added_ (added),
   removed_ (removed)
{
  update_listener_->_incr_refcnt ();
}

TAO_Notify_Update_Dispatch_Command::~TAO_Notify_Update_Dispatch_Command ()
{
  update_listener_->_decr_refcnt ();
}

int
TAO_Notify_Update_Dispatch_Command::execute (CORBA::Environment& ACE_TRY_ENV)
{
  this->update_listener_->dispatch_update (this->added_, this->removed_,
                                           ACE_TRY_ENV);
  ACE_CHECK_RETURN (-1);

  return 0;
}