Save_Persist_Worker_T.cpp

Go to the documentation of this file.
00001 //=============================================================================
00002 /**
00003 *  @file    Save_Persist_Worker_T.cpp
00004 *
00005 *  Save_Persist_Worker_T.cpp,v 1.4 2005/11/14 22:03:49 ossama Exp
00006 *
00007 *  @author Jonathan Pollack <pollack_j@ociweb.com>
00008 */
00009 //=============================================================================
00010 
00011 #ifndef SAVE_PERSIST_WORKER_CPP
00012 #define SAVE_PERSIST_WORKER_CPP
00013 
00014 #include "orbsvcs/ESF/ESF_Worker.h"
00015 
00016 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00017 #pragma once
00018 #endif /* ACE_LACKS_PRAGMA_ONCE */
00019 
00020 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00021 
00022 namespace TAO_Notify
00023 {
00024   template<class TOPOOBJ>
00025   Save_Persist_Worker<TOPOOBJ>::Save_Persist_Worker(Topology_Saver& saver,
00026                                                     bool want_all_children)
00027     : saver_ (saver)
00028     , want_all_children_ (want_all_children)
00029   {
00030   }
00031 
00032   template<class TOPOOBJ>
00033   void
00034   Save_Persist_Worker<TOPOOBJ>::work (TOPOOBJ* o ACE_ENV_ARG_DECL)
00035   {
00036     ACE_ASSERT(o != 0);
00037     if (this->want_all_children_ || o->is_changed ())
00038     {
00039       o->save_persistent (saver_ ACE_ENV_ARG_PARAMETER);
00040       ACE_CHECK;
00041     }
00042   }
00043 } // namespace TAO_Notify
00044 
00045 TAO_END_VERSIONED_NAMESPACE_DECL
00046 
00047 #endif /* SAVE_PERSIST_WORKER_CPP */

Generated on Thu Nov 9 13:24:16 2006 for TAO_CosNotification by doxygen 1.3.6