cfg_CliCreateFile Class Reference
[Parser for config files; validation]

#include <cli_arg.h>

Inheritance diagram for cfg_CliCreateFile:

Inheritance graph
[legend]
Collaboration diagram for cfg_CliCreateFile:

Collaboration graph
[legend]

List of all members.


Detailed Description

Definition at line 352 of file cli_arg.h.


Public Member Functions

 cfg_CliCreateFile (UInt32_t a_argc, char *a_argv[])
virtual ~cfg_CliCreateFile ()
virtual void HelpDump ()
 it it called at cc_HELP command each cli must implement its own method base HelpDump display common help

Public Attributes

string fileName
vector< val_Element< string > > accessMode
vector< val_Element< string > > shareMode
vector< val_Element< string > > createDisp
vector< val_Element< string > > flagsAndAttr
bool isRead
bool isMMapRead
bool isWrite
bool isMMapWrite
bool isLock
bool isSetEof
bool isFlush
UInt32_t readBlkSize
UInt32_t readCount
UInt32_t readMMapBlkSize
UInt32_t readMMapCount
UInt32_t readMMapTimeout
UInt32_t writeBlkSize
UInt32_t writeCount
UInt32_t writeMMapBlkSize
UInt32_t writeMMapCount
UInt32_t writeMMapTimeout
UInt64_t lockOffset
UInt64_t lockLength
UInt32_t lockTimeout
UInt64_t eofOffset
UInt32_t flushCount
string dummy

Private Attributes

 log_CLASSID_m

Constructor & Destructor Documentation

cfg_CliCreateFile::cfg_CliCreateFile ( UInt32_t  a_argc,
char *  a_argv[] 
)

Definition at line 2074 of file cfg_cliarg.cpp.

References accessMode, val_RuleVec::Add(), ap_paEofOffset, ap_paFileName, ap_paFlushCount, ap_paLockLength, ap_paLockOffset, ap_paMReadBlockSize, ap_paMReadCount, ap_paMWriteBlockSize, ap_paMWriteCount, ap_paReadBlockSize, ap_paReadCount, ap_paWriteBlockSize, ap_paWriteCount, ap_poListOfAccessMode, ap_poListOfCreateDisp, ap_poListOfFlagsAndAttr, ap_poListOfShareMode, ap_poLockTimeout, ap_poMReadTimeout, ap_poMWriteTimeout, cfg_MAX_BLOCK_SIZE_KB, cfg_MAX_CLI_ARGLEN, cfg_MAX_PATHNAME, cfg_MIN_BLOCK_SIZE_KB, cfg_MIN_CLI_ARGLEN, createDisp, dbg_DETAIL, dummy, eofOffset, fileName, flagsAndAttr, flushCount, cfg_CliBase::GetRules(), isFlush, isLock, isMMapRead, isMMapWrite, isRead, isSetEof, isWrite, lockLength, lockOffset, lockTimeout, log_DBG_m, log_FUNC_m, ap_Argument::m_long, ap_Argument::Parse(), readBlkSize, readCount, readMMapBlkSize, readMMapCount, readMMapTimeout, cfg_CliBase::Refresh(), shareMode, writeBlkSize, writeCount, writeMMapBlkSize, writeMMapCount, and writeMMapTimeout.

02075     : cfg_CliBase(),
02076     isRead(false),
02077     isMMapRead(false),
02078     isWrite(false),
02079     isMMapWrite(false),
02080     isLock(false),
02081     isSetEof(false),
02082     isFlush(false),
02083     readBlkSize(32), readCount(1),
02084     readMMapBlkSize(32), readMMapCount(1), readMMapTimeout(0),
02085     writeBlkSize(32), writeCount(1),
02086     writeMMapBlkSize(32), writeMMapCount(1), writeMMapTimeout(0),
02087     lockOffset(0), lockLength(0), lockTimeout(0),
02088     eofOffset(0),
02089     flushCount(0){
02090 
02091     log_FUNC_m(cfg_CliCreateFile);
02092 
02093     pf_ValueList parsed;
02094     ivdCreateFile.Parse(a_argc, a_argv, parsed);
02095 
02096     GetRules().Add(
02097         new val_Path(
02098             ap_paFileName.m_long, val_Limit(0, cfg_MAX_PATHNAME)),
02099         this->fileName
02100     );
02101 
02102     GetRules().Add(
02103         new val_StrictString(
02104             ap_poAccessMode.m_long, val_Limit(0, cfg_MAX_PATHNAME)),
02105         this->dummy
02106     );
02107 
02108     GetRules().Add(
02109         new val_StrictStringList(
02110             ap_poListOfAccessMode.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02111         this->accessMode
02112     );
02113 
02114     GetRules().Add(
02115         new val_StrictString(
02116             ap_poShareMode.m_long, val_Limit(0, cfg_MAX_PATHNAME)),
02117         this->dummy
02118     );
02119 
02120     GetRules().Add(
02121         new val_StrictStringList(
02122             ap_poListOfShareMode.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02123         this->shareMode
02124     );
02125 
02126     GetRules().Add(
02127         new val_StrictString(
02128             ap_poCreateDisp.m_long, val_Limit(0, cfg_MAX_PATHNAME)),
02129         this->dummy
02130     );
02131 
02132     GetRules().Add(
02133         new val_StrictStringList(
02134             ap_poListOfCreateDisp.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02135         this->createDisp
02136     );
02137 
02138     GetRules().Add(
02139         new val_StrictString(
02140             ap_poFlagsAndAttr.m_long, val_Limit(0, cfg_MAX_PATHNAME)),
02141         this->dummy
02142     );
02143 
02144     GetRules().Add(
02145         new val_StrictStringList(
02146             ap_poListOfFlagsAndAttr.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02147         this->flagsAndAttr
02148     );
02149 
02150     GetRules().Add(
02151         new val_Bool(
02152             ap_poWrite.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02153         this->isWrite
02154     );
02155 
02156     GetRules().Add(
02157         new val_Integer(
02158             ap_paWriteBlockSize.m_long,
02159             val_Limit(cfg_MIN_BLOCK_SIZE_KB, cfg_MAX_BLOCK_SIZE_KB), 0),
02160         this->writeBlkSize
02161     );
02162 
02163     GetRules().Add(
02164         new val_Integer(
02165             ap_paWriteCount.m_long, val_Limit(0, ULONG_MAX), 0),
02166         this->writeCount
02167     );
02168 
02169     GetRules().Add(
02170         new val_Bool(
02171             ap_poMWrite.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02172         this->isMMapWrite
02173     );
02174 
02175     GetRules().Add(
02176         new val_Integer(
02177             ap_paMWriteBlockSize.m_long,
02178             val_Limit(cfg_MIN_BLOCK_SIZE_KB, cfg_MAX_BLOCK_SIZE_KB), 0),
02179         this->writeMMapBlkSize
02180     );
02181 
02182     GetRules().Add(
02183         new val_Integer(
02184             ap_paMWriteCount.m_long, val_Limit(0, ULONG_MAX), 0),
02185         this->writeMMapCount
02186     );
02187 
02188     GetRules().Add(
02189         new val_Integer(
02190             ap_poMWriteTimeout.m_long, val_Limit(0, ULONG_MAX), 0),
02191         this->writeMMapTimeout
02192     );
02193 
02194     GetRules().Add(
02195         new val_Bool(
02196             ap_poRead.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02197         this->isRead
02198     );
02199 
02200     GetRules().Add(
02201         new val_Integer(
02202             ap_paReadBlockSize.m_long,
02203             val_Limit(cfg_MIN_BLOCK_SIZE_KB, cfg_MAX_BLOCK_SIZE_KB), 0),
02204         this->readBlkSize
02205     );
02206 
02207     GetRules().Add(
02208         new val_Integer(
02209             ap_paReadCount.m_long, val_Limit(0, ULONG_MAX), 0),
02210         this->readCount
02211     );
02212 
02213     GetRules().Add(
02214         new val_Bool(
02215             ap_poMRead.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02216         this->isMMapRead
02217     );
02218 
02219     GetRules().Add(
02220         new val_Integer(
02221             ap_paMReadBlockSize.m_long,
02222             val_Limit(cfg_MIN_BLOCK_SIZE_KB, cfg_MAX_BLOCK_SIZE_KB), 0),
02223         this->readMMapBlkSize
02224     );
02225 
02226     GetRules().Add(
02227         new val_Integer(
02228             ap_paMReadCount.m_long, val_Limit(0, ULONG_MAX), 0),
02229         this->readMMapCount
02230     );
02231 
02232     GetRules().Add(
02233         new val_Integer(
02234             ap_poMReadTimeout.m_long, val_Limit(0, ULONG_MAX), 0),
02235         this->readMMapTimeout
02236     );
02237 
02238     GetRules().Add(
02239         new val_Bool(
02240             ap_poLock.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02241         this->isLock
02242     );
02243 
02244     GetRules().Add(
02245         new val_Integer(
02246             ap_paLockOffset.m_long, val_Limit(0, ULONG_MAX), 0),
02247         this->lockOffset
02248     );
02249 
02250     GetRules().Add(
02251         new val_Integer(
02252             ap_paLockLength.m_long, val_Limit(0, ULONG_MAX), 0),
02253         this->lockLength
02254     );
02255 
02256     GetRules().Add(
02257         new val_Integer(
02258             ap_poLockTimeout.m_long, val_Limit(0, ULONG_MAX), 0),
02259         this->lockTimeout
02260     );
02261 
02262     GetRules().Add(
02263         new val_Bool(
02264             ap_poSetEof.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02265         this->isSetEof
02266     );
02267 
02268     GetRules().Add(
02269         new val_Integer(
02270             ap_paEofOffset.m_long, val_Limit(0, ULONG_MAX), 0),
02271         this->eofOffset
02272     );
02273 
02274     GetRules().Add(
02275         new val_Bool(
02276             ap_poFlush.m_long, val_Limit(cfg_MIN_CLI_ARGLEN, cfg_MAX_CLI_ARGLEN)),
02277         this->isFlush
02278     );
02279 
02280     GetRules().Add(
02281         new val_Integer(
02282             ap_paFlushCount.m_long,
02283             val_Limit(cfg_MIN_BLOCK_SIZE_KB, cfg_MAX_BLOCK_SIZE_KB), 0),
02284         this->flushCount
02285     );
02286 
02287     log_DBG_m(dbg_DETAIL,
02288         "Parsed options: " << endl <<  parsed );
02289 
02290     // Validate and convert options
02291     Refresh(parsed);
02292 }

Here is the call graph for this function:

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

Definition at line 355 of file cli_arg.h.

00355 {};


Member Function Documentation

void cfg_CliCreateFile::HelpDump (  )  [virtual]

it it called at cc_HELP command each cli must implement its own method base HelpDump display common help

Reimplemented from cfg_CliBase.

Definition at line 2294 of file cfg_cliarg.cpp.

02294                                  {
02295     cout << ivdCreateFile << endl;
02296 }


Member Data Documentation

Definition at line 359 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 360 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 361 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 362 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 363 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 364 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 365 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 366 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 367 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 368 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 369 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 370 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 371 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 372 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 373 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 374 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 375 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 376 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 377 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 378 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 379 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 380 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 381 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 382 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 383 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 384 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 385 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Definition at line 386 of file cli_arg.h.

Referenced by cfg_CliCreateFile().

Reimplemented from cfg_CliBase.

Definition at line 389 of file cli_arg.h.


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

Generated on Mon Feb 27 19:03:22 2012 for OPENARCHIVE by  doxygen 1.5.6