Public Member Functions | Private Attributes

TAO_Notify::XML_Topology_Factory Class Reference

Create XML topology savers and loaders. More...

#include <XML_Topology_Factory.h>

Inheritance diagram for TAO_Notify::XML_Topology_Factory:
Inheritance graph
[legend]
Collaboration diagram for TAO_Notify::XML_Topology_Factory:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 XML_Topology_Factory ()
 The constructor.
virtual ~XML_Topology_Factory ()
virtual Topology_Savercreate_saver ()
virtual Topology_Loadercreate_loader ()
virtual int init (int argc, ACE_TCHAR *argv[])
virtual int fini ()

Private Attributes

ACE_TString save_base_path_
ACE_TString load_base_path_
size_t backup_count_
bool timestamp_

Detailed Description

Create XML topology savers and loaders.

Loaded by a svc.conf line like: dynamic Topology_Factory Service_Object* TAO_CosNotificationd:_make_XML_Topology_Factory() "[arguments]" where arguments are: -base_path Base path (directory and filename) for both saving and loading. .xml will be appended to the base path Default is ./Notification_Service_Topology -save_base_path Base path for saving. -load_base_path Base path for loading. -file_count How many backup copies to keep. Default is 1 -no_timestamp Disable timestamping (makes files diffable) Note: you can set both saving and storing to the same file using -base_path Or you can set them independently using -save_base_path and -load_base_path

Definition at line 52 of file XML_Topology_Factory.h.


Constructor & Destructor Documentation

TAO_Notify::XML_Topology_Factory::XML_Topology_Factory (  ) 

The constructor.

Definition at line 7 of file XML_Topology_Factory.cpp.

{

TAO_Notify::XML_Topology_Factory::~XML_Topology_Factory (  )  [virtual]

Definition at line 16 of file XML_Topology_Factory.cpp.

    : save_base_path_ (ACE_TEXT("./Notification_Service_Topology"))


Member Function Documentation

Topology_Loader * TAO_Notify::XML_Topology_Factory::create_loader (  )  [virtual]

Create a Loader

Returns:
a pointer to a Topology_Loader which must be deleted by the caller.

Implements TAO_Notify::Topology_Factory.

Definition at line 38 of file XML_Topology_Factory.cpp.

    {
      delete saver;
      saver = 0;
    }
    return static_cast<Topology_Saver *> (saver);
  }

  // virtual
  Topology_Loader*
  XML_Topology_Factory::create_loader()

Topology_Saver * TAO_Notify::XML_Topology_Factory::create_saver (  )  [virtual]

Create a Saver.

Returns:
a pointer to a Topology_Saver which must be deleted by the caller.

Implements TAO_Notify::Topology_Factory.

Definition at line 22 of file XML_Topology_Factory.cpp.

  {
  }

  // virtual
  XML_Topology_Factory::~XML_Topology_Factory ()
  {
  }

  // virtual
  Topology_Saver*
  XML_Topology_Factory::create_saver ()
  {

int TAO_Notify::XML_Topology_Factory::fini ( void   )  [virtual]

Reimplemented from ACE_Shared_Object.

Definition at line 140 of file XML_Topology_Factory.cpp.

                                                                      : %s\n"),
          argv[narg]
          ));
        result = -1;
      }

int TAO_Notify::XML_Topology_Factory::init ( int  argc,
ACE_TCHAR argv[] 
) [virtual]

Reimplemented from ACE_Shared_Object.

Definition at line 53 of file XML_Topology_Factory.cpp.

    {
      delete loader;
      loader = 0;
    }
    return static_cast<Topology_Loader *> (loader);
  }

  // virtual
  int
  XML_Topology_Factory::init (int argc, ACE_TCHAR *argv[])
  {
    int result = 0;
    bool verbose = false;
    for (int narg = 0; narg < argc; ++narg)
    {
      ACE_TCHAR * av = argv[narg];
      if (ACE_OS::strcasecmp (av, ACE_TEXT("-v")) == 0)
      {
        verbose = true;
        ACE_DEBUG ((LM_DEBUG,
          ACE_TEXT ("(%P|%t) Standard_Event_Persistence: -verbose\n")
          ));
      }
      else if (ACE_OS::strcasecmp (av, ACE_TEXT("-base_path")) == 0 && narg + 1 < argc)
      {
        this->save_base_path_ = argv[narg + 1];
        this->load_base_path_ = argv[narg + 1];
        if (TAO_debug_level > 0 || verbose)
        {
          ACE_DEBUG ((LM_DEBUG,
            ACE_TEXT ("(%P|%t) XML_TopologyFactory: Setting -base_path: %s\n"),
            this->save_base_path_.c_str ()
          ));
        }
        narg += 1;
      }
      else if (ACE_OS::strcasecmp (av, ACE_TEXT("-save_base_path")) == 0 && narg + 1 < argc)
      {
        this->save_base_path_ = argv[narg + 1];
        if (TAO_debug_level > 0 || verbose)
        {
          ACE_DEBUG ((LM_DEBUG,
            ACE_TEXT ("(%P|%t) XML_TopologyFactory: Setting -save_base_path: %s\n"),
            this->save_base_path_.c_str ()
          ));
        }
        narg += 1;
      }
      else if (ACE_OS::strcasecmp (av, ACE_TEXT("-load_base_path")) == 0 && narg + 1 < argc)
      {
        this->load_base_path_ = argv[narg + 1];
        if (TAO_debug_level > 0 || verbose)
        {
          ACE_DEBUG ((LM_DEBUG,
            ACE_TEXT ("(%P|%t) XML_TopologyFactory: Setting -load_base_path: %s\n"),
            this->load_base_path_.c_str ()
          ));
        }
        narg += 1;
      }
      else if (ACE_OS::strcasecmp (av, ACE_TEXT("-backup_count")) == 0 && narg + 1 < argc)
      {
        this->backup_count_ = ACE_OS::atoi(argv[narg + 1]);
        if (TAO_debug_level > 0 || verbose)
        {
          ACE_DEBUG ((LM_DEBUG,
            ACE_TEXT ("(%P|%t) XML_TopologyFactory: Setting -file_count: %d\n"),
            this->backup_count_
          ));
        }
        narg += 1;
      }
      else if (ACE_OS::strcasecmp (av, ACE_TEXT("-no_timestamp")) == 0)
      {
        this->timestamp_ = false;
        if (TAO_debug_level > 0 || verbose)
        {
          ACE_DEBUG ((LM_DEBUG,
            ACE_TEXT ("(%P|%t) XML_TopologyFactory: Setting -no_timestamp\n")
          ));
        }
      }


Member Data Documentation

Definition at line 74 of file XML_Topology_Factory.h.

Definition at line 73 of file XML_Topology_Factory.h.

Definition at line 72 of file XML_Topology_Factory.h.

Definition at line 75 of file XML_Topology_Factory.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines