cfg_PMClient Class Reference
[Parser for config files; validation]

#include <cfg_pm.h>

Inheritance diagram for cfg_PMClient:

Inheritance graph
[legend]
Collaboration diagram for cfg_PMClient:

Collaboration graph
[legend]

List of all members.


Detailed Description

This class is member of cfg_pmCfg.

Definition at line 24 of file cfg_pm.h.


Public Member Functions

 cfg_PMClient ()
virtual ~cfg_PMClient ()
 cfg_PMClient (const string &a_name, const pf_Group &a_group)

Public Attributes

string name
string fileSystemId
ivd_FSType_e operationMode
UInt32_t WORMTimeout
UInt32_t disableAutMig
string replTargHost
string replTargPart

Private Attributes

 log_CLASSID_m

Constructor & Destructor Documentation

cfg_PMClient::cfg_PMClient (  )  [inline]

Definition at line 26 of file cfg_pm.h.

00026 {};

virtual cfg_PMClient::~cfg_PMClient (  )  [inline, virtual]

Definition at line 27 of file cfg_pm.h.

00027 {};

cfg_PMClient::cfg_PMClient ( const string &  a_name,
const pf_Group a_group 
)

Definition at line 614 of file cfg_pm.cpp.

References val_RuleVec::Add(), val_String::Bind(), cfg_DEF_DISABLEAUTOMATICMIGRATIONS, cfg_DEF_FSTYPE_P, cfg_DEF_WORMTIMEOUT, cfg_MAX_DISABLEAUTOMATICMIGRATIONS, cfg_MAX_FILESYSTEM_ID, cfg_MAX_FSTYPE_P, cfg_MAX_HOSTNAME, cfg_MAX_PARTITION_NAME, cfg_MAX_WORMTIMEOUT, cfg_MIN_DISABLEAUTOMATICMIGRATIONS, cfg_MIN_FILESYSTEM_ID, cfg_MIN_FSTYPE_P, cfg_MIN_HOSTNAME, cfg_MIN_PARTITION_NAME, cfg_MIN_WORMTIMEOUT, cfg_Base::CheckMandatory(), val_Value::Conv(), cfg_Base::Convert(), disableAutMig, fileSystemId, name, operationMode, replTargHost, replTargPart, and WORMTimeout.

00614                                                                         {
00615 
00616     static const string c_fileSystemId  ("FileSystemID");
00617     static const string c_operationMode ("Type");
00618     static const string c_WORMTimeout   ("WORMTimeout");
00619     static const string c_disableAutomaticMigrations ("DisableAutomaticMigrations");
00620     static const string c_replicationTargetHost ("ReplicationTargetHost");
00621     static const string c_replicationTargetPartition ("ReplicationTargetPartition");
00622 
00623     val_Hostname converter(a_name,
00624                            val_Limit(cfg_MIN_HOSTNAME, cfg_MAX_HOSTNAME));
00625     converter.Bind(this->name);
00626     converter.Conv(a_name);
00627 
00628     val_RuleVec  rules;
00629 
00630     rules.Add(
00631         new val_StrictString( c_fileSystemId,
00632                         val_Limit(cfg_MIN_FILESYSTEM_ID, cfg_MAX_FILESYSTEM_ID)),
00633         this->fileSystemId
00634     );
00635 
00636     rules.Add(
00637         new val_FSType( c_operationMode,
00638                         val_Limit(cfg_MIN_FSTYPE_P, cfg_MAX_FSTYPE_P),
00639                         0,
00640                         1,
00641                         cfg_DEF_FSTYPE_P),
00642         this->operationMode
00643     );
00644 
00645     rules.Add(
00646         new val_Duration(c_WORMTimeout,
00647                         val_Limit(cfg_MIN_WORMTIMEOUT, cfg_MAX_WORMTIMEOUT),
00648                         0,
00649                         1,
00650                         cfg_DEF_WORMTIMEOUT),
00651         this->WORMTimeout
00652     );
00653 
00654     rules.Add(
00655         new val_Integer(c_disableAutomaticMigrations,
00656                         val_Limit(cfg_MIN_DISABLEAUTOMATICMIGRATIONS, cfg_MAX_DISABLEAUTOMATICMIGRATIONS),
00657                         0,
00658                         1,
00659                         cfg_DEF_DISABLEAUTOMATICMIGRATIONS ),
00660         this->disableAutMig
00661     );
00662 
00663     rules.Add(
00664         new val_StrictString(c_replicationTargetHost,
00665                              val_Limit(cfg_MIN_HOSTNAME, cfg_MAX_HOSTNAME),
00666                              0,
00667                              cfg_MAX_HOSTNAME),
00668         this->replTargHost
00669     );
00670 
00671     rules.Add(
00672         new val_StrictString(c_replicationTargetPartition,
00673                              val_Limit(cfg_MIN_PARTITION_NAME, cfg_MAX_PARTITION_NAME),
00674                              0,
00675                              cfg_MAX_PARTITION_NAME),
00676         this->replTargPart
00677     );
00678 
00679     Convert(a_group, rules);
00680     CheckMandatory(rules);
00681 }

Here is the call graph for this function:


Member Data Documentation

Definition at line 31 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 37 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 39 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 40 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 46 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 47 of file cfg_pm.h.

Referenced by cfg_PMClient().

Definition at line 48 of file cfg_pm.h.

Referenced by cfg_PMClient().

Reimplemented from cfg_Base.

Definition at line 51 of file cfg_pm.h.


The documentation for this class was generated from the following files:

Generated on Mon Feb 27 19:04:01 2012 for OPENARCHIVE by  doxygen 1.5.6