Classes | Defines | Typedefs | Enumerations | Functions | Variables

Parser for config files; validation

Classes for configuration file parsing, content validation and conversion. More...

Classes

class  ap_Argument
class  cfg_Base
class  cfg_DirCollocationInfo
class  cfg_CollocationInfo
class  cfg_DriveType
class  cfg_DriveVendor
class  cfg_DriveSettings
class  cfg_DirHL7Info
class  cfg_HL7Info
class  cfg_Library
class  cfg_LibraryFile
class  cfg_PMClient
 This class is member of cfg_pmCfg. More...
class  cfg_PMTree
 This class is member of cfg_pmCfg. More...
class  cfg_PMFileExpiration
 This class is member of cfg_pmCfg. More...
class  cfg_PMCfg
 cfg_PMCfg is derived from val_Base to handle configuration of the IVD Partition Manager. More...
class  cfg_RMHost
 This class is member of cfg_RMDrive. More...
class  cfg_RMDrive
 cfg_RMDrive is derived from val_Base to handle configuration of the IVD Resource Manager Configuration for Drive. More...
class  cfg_RMLibrary
 cfg_RMLibrary is derived from val_Base to handle configuration of the IVD Resource Manager Configuration for Drive. More...
class  cfg_RMPool
class  cfg_Server
 cfg_Server is derived from cfg_Base to handle configuration of the IVD Server. More...
class  cfg_CliBase
 This class is a base for parsed and validated data specified in cli. More...
class  cfg_CliRecover
class  cfg_CliCheck
class  cfg_CliJob
class  cfg_CliLibrary
class  cfg_CliDrive
class  cfg_CliPool
class  cfg_CliMedium
class  cfg_CliSystem
class  cfg_CliPartition
class  cfg_CliBak
class  cfg_Cli_fsc
class  cfg_Cli_hsm
class  cfg_CliDD
class  cfg_CliCreateFile
class  cfg_CliFile
class  cfg_ivddbg
class  pf_Component
 Base class for components of a parsed file. More...
class  pf_Elem
class  pf_List
class  pf_ValueBase
class  pf_Value
class  pf_ValueList
class  pf_Group
class  pf_Section
class  pf_SectionList
class  pf_File
class  val_Limit
class  val_Element< ET >
class  val_BasicValue
class  val_RangeValue
class  val_ValueList
class  val_LiteralValue
class  val_Value
 Base class for all of the conversion (or rule) classes that convert any string to a basic type. More...
class  val_RuleVec
 Container for conversion rules. More...
class  val_String
class  val_StrictString
 StrictString does check leading and trailing spaces plus new lines inside string. More...
class  val_Path
class  val_Bool
class  val_Integer
class  val_Duration
class  val_Time
class  val_Size
class  val_Percentage
class  val_ObjectName
class  val_Hostname
class  val_CliCommand
class  val_LibType
class  val_PoolType
class  val_MediaFamilyType
class  val_SysVolLocationType
class  val_FSType
class  val_DriveCapab
class  val_DbgLevel
class  val_DbgFlags
class  val_Range< CNV, DT >
class  val_List< CNV, DT >
 This template is used to make rules for conversion to vectors of values from some list-type input (eg cfg_Val_t of type CFGVAL_LIST). More...
class  val_SlotList
class  val_FileNamePattern
class  val_FileNamePatternList

Defines

#define cfg_INFINITE   (LONG_MAX)
#define cfg_MINUTE   (60)
#define cfg_HOUR   (60*cfg_MINUTE)
#define cfg_DAY   (24*cfg_HOUR)
#define cfg_YEAR   (365*cfg_DAY)
#define cfg_KILOBYTE   (1024)
#define cfg_MEGABYTE   (1024*cfg_KILOBYTE)
#define cfg_GIGABYTE   (1024LL*cfg_MEGABYTE)
#define cfg_TERABYTE   (1024LL*cfg_GIGABYTE)
#define cfg_UNLIMITED   "UNLIMITED"
#define cfg_BASE_HEADER_FILETYPE   "FileType"
#define cfg_BASE_HEADER_FILEVERSION   "Version"
#define cfg_BASE_HEADER_FILEDATE   "Date"
#define cfg_BASE_HEADER_FILEUSER   "User"
#define cfg_MIN_FILE_TYPE   (1)
#define cfg_MAX_FILE_TYPE   (255)
#define cfg_MIN_FILE_VERSION   (1)
#define cfg_MAX_FILE_VERSION   cfg_INFINITE
#define cfg_MIN_FILE_DATE   (0)
#define cfg_MAX_FILE_DATE   cfg_INFINITE
#define cfg_MIN_FILE_USER   (0)
#define cfg_MAX_FILE_USER   (255)
#define cfg_MAX_FILENAME   ivd_MAX_FILENAME
#define cfg_MAX_PATHNAME   ivd_MAX_PATHNAME
#define cfg_MIN_PATHNAME   (1)
#define cfg_MIN_HOSTNAME   (1)
#define cfg_MAX_HOSTNAME   rmdb_MAX_HOSTNAME
#define cfg_FILE_VAR_HOST   "Host"
#define cfg_FILE_VAR_CLIENT   "Client"
#define cfg_MIN_OPTION_NAME   (1)
#define cfg_MAX_OPTION_NAME   (50)
#define cfg_MIN_MEDIAFAMILY_NAME   cfg_MIN_OPTION_NAME
#define cfg_MAX_MEDIAFAMILY_NAME   cfg_MAX_OPTION_NAME
#define cfg_MIN_CTRLDEVICE   (1)
#define cfg_MAX_CTRLDEVICE   rmdb_MAX_CTRLDEVICE
#define cfg_MIN_BLOCK_SIZE_KB   ivd_MIN_BLOCK_SIZE_KB
#define cfg_MAX_BLOCK_SIZE_KB   (1536)
#define cfg_MIN_BLOCK_SIZE   (cfg_MIN_BLOCK_SIZE_KB*cfg_KILOBYTE)
#define cfg_MAX_BLOCK_SIZE   (cfg_MAX_BLOCK_SIZE_KB*cfg_KILOBYTE)
#define cfg_DEF_BLOCK_SIZE   "32KB"
#define cfg_MIN_CAPABILITIES_NAME   cfg_MIN_OPTION_NAME
#define cfg_MAX_CAPABILITIES_NAME   cfg_MAX_OPTION_NAME
#define CFG_LINK_LATEST   "latest"
#define cfg_MIN_LIBRARY_NAME   (1)
#define cfg_MAX_LIBRARY_NAME   rmdb_MAX_LIBRARYNAME
#define cfg_MIN_LIBRARY_TYPE   cfg_MIN_OPTION_NAME
#define cfg_MAX_LIBRARY_TYPE   cfg_MAX_OPTION_NAME
#define cfg_MIN_SLOTS_NAME   (1)
#define cfg_MAX_SLOTS_NAME   rmdb_MAX_SLOTADDR
#define cfg_MIN_MAILSLOTS_NAME   (1)
#define cfg_MAX_MAILSLOTS_NAME   rmdb_MAX_SLOTADDR
#define cfg_MAX_SLOT_NUM   (50000)
#define cfg_MIN_DRIVE_NAME   (1)
#define cfg_MAX_DRIVE_NAME   rmdb_MAX_DRIVENAME
#define cfg_MIN_DRIVEIDX   (1)
#define cfg_MAX_DRIVEIDX   rmdb_MAX_DRIVEIDX
#define cfg_MIN_POOL_NAME   (1)
#define cfg_MAX_POOL_NAME   rmdb_MAX_MEDIAPOOLNAME
#define cfg_MIN_POOL_TYPE   (0)
#define cfg_MAX_POOL_TYPE   (INT_MAX)
#define cfg_DEF_POOL_TYPE   "regular"
#define cfg_MIN_MEDIA_AGE   (30*cfg_DAY)
#define cfg_MAX_MEDIA_AGE   cfg_INFINITE
#define cfg_DEF_MEDIA_AGE   "60M"
#define cfg_MIN_READ_WRITE   (10)
#define cfg_MAX_READ_WRITE   cfg_INFINITE
#define cfg_DEF_READ_WRITE   "30000"
#define cfg_MIN_NUM_OF_VOL   (1)
#define cfg_MAX_NUM_OF_VOL   (32)
#define cfg_DEF_NUM_OF_VOL   "1"
#define cfg_MIN_LOC_OF_SYS_VOL   (1)
#define cfg_MAX_LOC_OF_SYS_VOL   (6)
#define cfg_DEF_LOC_OF_SYS_VOL   "None"
#define cfg_MIN_SYSTEM_VOL_SIZE   (0)
#define cfg_MAX_SYSTEM_VOL_SIZE   (10*cfg_GIGABYTE)
#define cfg_DEF_SYSTEM_VOL_SIZE   "512MB"
#define cfg_MIN_VOL_SIZE   (100*cfg_MEGABYTE)
#define cfg_MAX_VOL_SIZE   (2000*cfg_GIGABYTE)
#define cfg_DEF_VOL_SIZE   "100GB"
#define cfg_MIN_PARTITION_NAME   (1)
#define cfg_MAX_PARTITION_NAME   rmdb_MAX_PARTITIONNAME
#define cfg_MIN_MINFILEAGE   (1)
#define cfg_MAX_MINFILEAGE   (2*cfg_DAY)
#define cfg_DEF_MINFILEAGE   "10m"
#define cfg_MIN_FILE_HEAD_SIZE   (256)
#define cfg_MAX_FILE_HEAD_SIZE   (100*cfg_KILOBYTE)
#define cfg_DEF_FILE_HEAD_SIZE   cfg_MIN_FILE_HEAD_SIZE
#define cfg_MIN_MAXMIGJOBSIZE   cfg_MIN_FILE_HEAD_SIZE
#define cfg_MAX_MAXMIGJOBSIZE   (500*cfg_GIGABYTE)
#define cfg_DEF_MAXMIGJOBSIZE   "50MB"
#define cfg_MIN_MINWAITTIME   (1)
#define cfg_MAX_MINWAITTIME   (31*cfg_DAY)
#define cfg_DEF_MINWAITTIME   "10m"
#define cfg_MIN_MINNUMMIGFILES   (1)
#define cfg_MAX_MINNUMMIGFILES   (100000)
#define cfg_DEF_MINNUMMIGFILES   "1"
#define cfg_MIN_MINMIGSIZE   cfg_MIN_FILE_HEAD_SIZE
#define cfg_MAX_MINMIGSIZE   (2*cfg_TERABYTE)
#define cfg_DEF_MINMIGSIZE   "100MB"
#define cfg_MIN_MAXWAITTIME   (1)
#define cfg_MAX_MAXWAITTIME   (365*cfg_DAY)
#define cfg_DEF_MAXWAITTIME   "30m"
#define cfg_MIN_MAXNUMMIGFILES   (1)
#define cfg_MAX_MAXNUMMIGFILES   (500000)
#define cfg_DEF_MAXNUMMIGFILES   "1000"
#define cfg_MIN_MAXMIGSIZE   (cfg_MEGABYTE)
#define cfg_MAX_MAXMIGSIZE   (10*cfg_TERABYTE)
#define cfg_DEF_MAXMIGSIZE   "500MB"
#define cfg_MIN_FORCEDMIGWATERMARK   (1)
#define cfg_MAX_FORCEDMIGWATERMARK   (50)
#define cfg_DEF_FORCEDMIGWATERMARK   (5)
#define cfg_MIN_HIGHWATERMARK   (10)
#define cfg_MAX_HIGHWATERMARK   (95)
#define cfg_DEF_HIGHWATERMARK   "85%"
#define cfg_MIN_LOWWATERMARK   (0)
#define cfg_MAX_LOWWATERMARK   (90)
#define cfg_DEF_LOWWATERMARK   "35%"
#define cfg_MIN_CRITICALWATERMARK   (80)
#define cfg_MAX_CRITICALWATERMARK   (100)
#define cfg_DEF_CRITICALWATERMARK   "95%"
#define cfg_MIN_RELEASE_INTERVAL   (1)
#define cfg_MAX_RELEASE_INTERVAL   (cfg_DAY)
#define cfg_DEF_RELEASE_INTERVAL   "30s"
#define cfg_MAX_START_RELEASE_EARLY   (1)
#define cfg_DEF_START_RELEASE_EARLY   "0"
#define cfg_MIN_START_RELEASE_NUMF   (500)
#define cfg_MAX_START_RELEASE_NUMF   (10000)
#define cfg_DEF_START_RELEASE_NUMF   "1000"
#define cfg_MIN_START_RELEASE_TIME   (1)
#define cfg_MAX_START_RELEASE_TIME   (cfg_MINUTE)
#define cfg_DEF_START_RELEASE_TIME   "5"
#define cfg_MIN_MIGRETENTIONTIME   (1)
#define cfg_MAX_MIGRETENTIONTIME   (INT_MAX)
#define cfg_DEF_MIGRETENTIONTIME   "2h"
#define cfg_MIN_RECALLRETENTIONTIME   (1)
#define cfg_MAX_RECALLRETENTIONTIME   (INT_MAX)
#define cfg_DEF_RECALLRETENTIONTIME   "24h"
#define cfg_MIN_MINFILESIZE   (0)
#define cfg_MAX_MINFILESIZE   cfg_MEGABYTE
#define cfg_DEF_MINFILESIZE   "2kb"
#define cfg_MIN_RECALL_TIMEOUT   (1)
#define cfg_MAX_RECALL_TIMEOUT   (8*cfg_HOUR)
#define cfg_DEF_RECALL_TIMEOUT   "15m"
#define cfg_MIN_MAXNUMDRIVES_P   (0)
#define cfg_MAX_MAXNUMDRIVES_P   (64)
#define cfg_DEF_MAXNUMDRIVES_P   "64"
#define cfg_MIN_MAXNUMDRIVESRECALL_P   (0)
#define cfg_MAX_MAXNUMDRIVESRECALL_P   (64)
#define cfg_DEF_MAXNUMDRIVESRECALL_P   "64"
#define cfg_MIN_MAXNUMDRIVESMIG_P   (0)
#define cfg_MAX_MAXNUMDRIVESMIG_P   (64)
#define cfg_DEF_MAXNUMDRIVESMIG_P   "64"
#define cfg_MIN_MAXNUMDRIVESREORG_P   (0)
#define cfg_MAX_MAXNUMDRIVESREORG_P   (64)
#define cfg_DEF_MAXNUMDRIVESREORG_P   "64"
#define cfg_MIN_MAXNUMDRIVESRECOVERY_P   (0)
#define cfg_MAX_MAXNUMDRIVESRECOVERY_P   (64)
#define cfg_DEF_MAXNUMDRIVESRECOVERY_P   "20"
#define cfg_MIN_MAXNUMDRIVESMAINT_P   (0)
#define cfg_MAX_MAXNUMDRIVESMAINT_P   (64)
#define cfg_DEF_MAXNUMDRIVESMAINT_P   "20"
#define cfg_MIN_RESNUMDRIVES   (0)
#define cfg_MAX_RESNUMDRIVES   (64)
#define cfg_DEF_RESNUMDRIVES   "0"
#define cfg_MIN_RESNUMDRIVESRECALL   (0)
#define cfg_MAX_RESNUMDRIVESRECALL   (64)
#define cfg_DEF_RESNUMDRIVESRECALL   "0"
#define cfg_MIN_RESNUMDRIVESMIG   (0)
#define cfg_MAX_RESNUMDRIVESMIG   (64)
#define cfg_DEF_RESNUMDRIVESMIG   "0"
#define cfg_MIN_RESNUMDRIVESREORG   (0)
#define cfg_MAX_RESNUMDRIVESREORG   (64)
#define cfg_DEF_RESNUMDRIVESREORG   "0"
#define cfg_MIN_PARTPRIORITY   (0)
#define cfg_MAX_PARTPRIORITY   (100)
#define cfg_DEF_PARTPRIORITY   "50"
#define cfg_MIN_PARTRECALLPRIORITY   (0)
#define cfg_MAX_PARTRECALLPRIORITY   (100)
#define cfg_DEF_PARTRECALLPRIORITY   "80"
#define cfg_MIN_PARTMIGPRIORITY   (0)
#define cfg_MAX_PARTMIGPRIORITY   (100)
#define cfg_DEF_PARTMIGPRIORITY   "20"
#define cfg_MIN_PARTREORGPRIORITY   (0)
#define cfg_MAX_PARTREORGPRIORITY   (100)
#define cfg_DEF_PARTREORGPRIORITY   "10"
#define cfg_MIN_PARTRECOVERYPRIORITY   (0)
#define cfg_MAX_PARTRECOVERYPRIORITY   (100)
#define cfg_DEF_PARTRECOVERYPRIORITY   "100"
#define cfg_MIN_PARTMAINTPRIORITY   (0)
#define cfg_MAX_PARTMAINTPRIORITY   (100)
#define cfg_DEF_PARTMAINTPRIORITY   "80"
#define cfg_MIN_FSCMODE   (1)
#define cfg_MAX_FSCMODE   (1)
#define cfg_DEF_FSCMODE   "1"
#define cfg_MIN_FSTYPE_P   (1)
#define cfg_MAX_FSTYPE_P   (50)
#define cfg_DEF_FSTYPE_P   "REGULAR"
#define cfg_MIN_WORMTIMEOUT   (0)
#define cfg_MAX_WORMTIMEOUT   (7200)
#define cfg_DEF_WORMTIMEOUT   "450s"
#define cfg_MIN_RECALLONOPEN   (0)
#define cfg_MAX_RECALLONOPEN   (1)
#define cfg_DEF_RECALLONOPEN   "0"
#define cfg_MIN_FILESYSTEM_ID   (1)
#define cfg_MAX_FILESYSTEM_ID   (255)
#define cfg_MIN_ADPATH   (0)
#define cfg_MAX_ADPATH   ivd_MAX_PATHNAME
#define cfg_DEF_ADPATH   ""
#define cfg_MIN_DISABLEAUTOMATICMIGRATIONS   (0)
#define cfg_MAX_DISABLEAUTOMATICMIGRATIONS   (1)
#define cfg_DEF_DISABLEAUTOMATICMIGRATIONS   "0"
#define cfg_MIN_SENDHL7MESSAGES   (0)
#define cfg_MAX_SENDHL7MESSAGES   (1)
#define cfg_DEF_SENDHL7MESSAGES   "0"
#define cfg_MIN_MIGRATEWITHCOLLOCATION   (0)
#define cfg_MAX_MIGRATEWITHCOLLOCATION   (1)
#define cfg_DEF_MIGRATEWITHCOLLOCATION   "0"
#define cfg_MIN_EXPIRATIONAGE   cfg_DAY
#define cfg_MAX_EXPIRATIONAGE   cfg_INFINITE
#define cfg_DEF_EXPIRATIONAGE   cfg_UNLIMITED
#define cfg_MIN_CONFHISTORY   (1)
#define cfg_MAX_CONFHISTORY   (999)
#define cfg_DEF_CONFHISTORY   (10)
#define cfg_MIN_MAXNUMDRIVESRECALL   (0)
#define cfg_MAX_MAXNUMDRIVESRECALL   (64)
#define cfg_DEF_MAXNUMDRIVESRECALL   "20"
#define cfg_MIN_MAXNUMDRIVESRECOVERY   (0)
#define cfg_MAX_MAXNUMDRIVESRECOVERY   (64)
#define cfg_DEF_MAXNUMDRIVESRECOVERY   "20"
#define cfg_MIN_MAXNUMDRIVESMAINT   (0)
#define cfg_MAX_MAXNUMDRIVESMAINT   (64)
#define cfg_DEF_MAXNUMDRIVESMAINT   "20"
#define cfg_MIN_MAXNUMDRIVESMIGRATION   (0)
#define cfg_MAX_MAXNUMDRIVESMIGRATION   (64)
#define cfg_DEF_MAXNUMDRIVESMIGRATION   "20"
#define cfg_MIN_MAXNUMDRIVESADMIN   (0)
#define cfg_MAX_MAXNUMDRIVESADMIN   (64)
#define cfg_DEF_MAXNUMDRIVESADMIN   "20"
#define cfg_MIN_RESOURCEALLOCATIONTRESHOLD   (0)
#define cfg_MAX_RESOURCEALLOCATIONTRESHOLD   (100)
#define cfg_DEF_RESOURCEALLOCATIONTRESHOLD   "50%"
#define cfg_MIN_RESOURCEALLOCATIONTHRESHOLD   (0)
#define cfg_MAX_RESOURCEALLOCATIONTHRESHOLD   (100)
#define cfg_DEF_RESOURCEALLOCATIONTHRESHOLD   "50%"
#define cfg_MIN_TIMESTEP   (0)
#define cfg_MAX_TIMESTEP   (10000)
#define cfg_DEF_TIMESTEP   "2"
#define cfg_MIN_PHASEFACTOR   (0)
#define cfg_MAX_PHASEFACTOR   (100000)
#define cfg_DEF_PHASEFACTOR   "500"
#define cfg_MIN_SYSTEMMAXMEMORYBUFFERSIZE   (0)
#define cfg_MAX_SYSTEMMAXMEMORYBUFFERSIZE   cfg_GIGABYTE
#define cfg_DEF_SYSTEMMAXMEMORYBUFFERSIZE   (10*cfg_MEGABYTE)
#define cfg_MIN_SYSTEMADMINPRIORITY   (0)
#define cfg_MAX_SYSTEMADMINPRIORITY   (10000)
#define cfg_DEF_SYSTEMADMINPRIORITY   "1000"
#define cfg_MIN_SYSTEMBACKUPPRIORITY   0
#define cfg_MAX_SYSTEMBACKUPPRIORITY   10000
#define cfg_DEF_SYSTEMBACKUPPRIORITY   "1000"
#define cfg_MIN_RMDBUSERNAME   (1)
#define cfg_MAX_RMDBUSERNAME   (50)
#define cfg_MIN_RMDBPASSWORD   (1)
#define cfg_MAX_RMDBPASSWORD   (50)
#define cfg_MIN_CLI_ARGLEN   (1)
#define cfg_MAX_CLI_ARGLEN   (255)
#define cfg_MD5SUM_LEN   (32)
#define cfg_TIME_STAMP_LEN   (15)
#define cfg_MIN_BACKUP_NUM   (1)
#define cfg_MAX_BACKUP_NUM   (1000)
#define cfg_MIN_MIGID   (0)
#define cfg_MAX_MIGID   (ULLONG_MAX)
#define cfg_MIN_VOLUME_NUM   (1)
#define cfg_MAX_VOLUME_NUM   (255)
#define cfg_MIN_MEDIUM_KEY   (1)
#define cfg_MAX_MEDIUM_KEY   (65536)
#define cfg_MIN_JOB_PRIORITY_MOD   (1)
#define cfg_MAX_JOB_PRIORITY_MOD   (INT_MAX)
#define cfg_MIN_CFG_REVISION_NO   (0)
#define cfg_MAX_CFG_REVISION_NO   cfg_MAX_CONFHISTORY
#define cfg_MIN_FILEID   (1)
#define cfg_MAX_FILEID   (UINT_MAX)
#define cfg_MIN_JOBID   (20000000000000LL)
#define cfg_MAX_JOBID   (21000000000000LL)
#define cfg_MIN_COLID   1
#define cfg_MAX_COLID   cfg_INFINITE
#define cfg_MIN_PORT   1
#define cfg_MAX_PORT   (65536)
#define cfg_HL7_MESSAGE_SEND_INTERVAL   (60 * cfg_MINUTE)

Typedefs

typedef vector< ap_Argument * > ap_Argument_p_v_t
typedef ap_Argument_p_v_t::iterator ap_Argument_p_v_i
typedef vector< val_Element
< string > >::iterator 
val_ElementString_i
typedef vector< val_Element
< UInt32_t > >::iterator 
val_ElementUInt32_i
typedef struct yy_buffer_stateYY_BUFFER_STATE
typedef val_Range
< val_StrictString, string > 
val_StrictStringRange
typedef val_Range< val_Integer,
Int8_t
val_Int8Range
typedef val_Range< val_Integer,
Int16_t
val_Int16Range
typedef val_Range< val_Integer,
Int32_t
val_Int32Range
typedef val_Range< val_Integer,
Int64_t
val_Int64Range
typedef val_Range< val_Integer,
UInt8_t
val_UInt8Range
typedef val_Range< val_Integer,
UInt16_t
val_UInt16Range
typedef val_Range< val_Integer,
UInt32_t
val_UInt32Range
typedef val_Range< val_Integer,
UInt64_t
val_UInt64Range
typedef val_Range
< val_DriveCapab,
ivd_DriveCapab_e
val_DriveCapabRange
typedef val_List
< val_StrictString, string > 
val_StrictStringList
typedef val_List< val_Integer,
Int8_t
val_Int8List
typedef val_List< val_Integer,
Int16_t
val_Int16List
typedef val_List< val_Integer,
Int32_t
val_Int32List
typedef val_List< val_Integer,
Int64_t
val_Int64List
typedef val_List< val_Integer,
UInt8_t
val_UInt8List
typedef val_List< val_Integer,
UInt16_t
val_UInt16List
typedef val_List< val_Integer,
UInt32_t
val_UInt32List
typedef val_List< val_Integer,
UInt64_t
val_UInt64List
typedef val_List
< val_DriveCapab,
ivd_DriveCapab_e
val_DriveCapabList
typedef val_List< val_Path,
string > 
val_PathList
typedef val_Range< val_Path,
string > 
val_PathRange
typedef val_StrictString val_WildCard
typedef val_StrictString val_IP
typedef val_StrictString val_TimeOfDay
typedef val_StrictString val_EMail
typedef val_Time val_Date

Enumerations

enum  ap_ArgType_e {
  at_CLI, at_COMMAND,
  at_OPTION, at_PARAMETER,
  at_MULTIPAR, at_GROUP
}
enum  ap_Presence_e {
  pr_OPTIONAL, pr_MANDATORY,
  pr_ELEMENTSPEC
}
enum  pf_ValType_e {
  PF_SIMPLE, PF_RANGE,
  PF_LIST, PF_GROUP,
  PF_INCLFILE, PF_COMMENT,
  PF_UNDEFINED
}
enum  ElemType_e {
  el_Unknown, el_Simple,
  el_Range
}

Functions

template<class T >
int cfg_FindGroupByName (vector< T > a_grpVector, string a_name)
static const string c_collocationDir ("collocation")
static const string c_collocationFile ("collocation.info")
void cfg_DirCollocationInfo::Init (const string &a_grpyName, const pf_Group &a_group)
virtual cfg_DirCollocationInfo::~cfg_DirCollocationInfo ()
virtual cfg_CollocationInfo::~cfg_CollocationInfo ()
void cfg_CollocationInfo::Refresh (const pf_File &a_parsedFile)
virtual void cfg_CollocationInfo::ConvertGroup (const string &a_grpName, const pf_Group &a_group)
static void cfg_CollocationInfo::WriteCollocationInfo (const cfg_DirCollocationInfo &a_dirInfo, const string a_partName, bool a_force)
static void cfg_CollocationInfo::ReadCollocationInfo (cmn_File &a_file, cfg_CollocationInfo &a_colInfo)
static void cfg_CollocationInfo::GenerateCollocationInfoFile (cmn_File &a_file)
static void cfg_CollocationInfo::WriteGroupToFile (cmn_File &a_file, const cfg_DirCollocationInfo &a_dirInfo)
static const string c_hl7Dir ("hl7")
static const string c_hl7File ("hl7.info")
void cfg_DirHL7Info::Init (const string &a_grpyName, const pf_Group &a_group)
virtual cfg_DirHL7Info::~cfg_DirHL7Info ()
virtual cfg_HL7Info::~cfg_HL7Info ()
void cfg_HL7Info::Refresh (const pf_File &a_parsedFile)
virtual void cfg_HL7Info::ConvertGroup (const string &a_grpName, const pf_Group &a_group)
static void cfg_HL7Info::WriteHL7Info (const cfg_DirHL7Info &a_dirInfo, const string a_partName, bool a_force)
static void cfg_HL7Info::ReadHL7Info (cmn_File &a_file, cfg_HL7Info &a_hl7Info)
static void cfg_HL7Info::GenerateHL7InfoFile (cmn_File &a_file)
static void cfg_HL7Info::WriteGroupToFile (cmn_File &a_file, const cfg_DirHL7Info &a_dirInfo)
ostream & operator<< (ostream &a_os, const pf_Value &a_val)
ostream & operator<< (ostream &a_os, const pf_Section &a_sec)
ostream & operator<< (ostream &a_os, const pf_SectionList &a_list)
IVD_PARSER_DECL_d ostream & operator<< (ostream &a_os, const pf_ValueList &a_list)
IVD_PARSER_DECL_d ostream & operator<< (ostream &a_os, const pf_File &a_file)
void cmn_GC (pf_Component *a_garbage, vector< pf_Component * > &a_gcVec)
 Simple garbage collector.

Variables

const char *const ap_valCmdName
const char *const ap_valArg0Name
bool ap_showHidden
string cfg_DirCollocationInfo::m_name
string cfg_DirCollocationInfo::m_directoryPath
UInt64_t cfg_DirCollocationInfo::m_colId
 cfg_DirCollocationInfo::log_CLASSID_m
vector< cfg_DirCollocationInfocfg_CollocationInfo::m_dirColInfo_v
 cfg_CollocationInfo::log_CLASSID_m
string cfg_DirHL7Info::m_name
string cfg_DirHL7Info::m_directoryPath
string cfg_DirHL7Info::m_hostname
UInt32_t cfg_DirHL7Info::m_port
 cfg_DirHL7Info::log_CLASSID_m
vector< cfg_DirHL7Infocfg_HL7Info::m_dirHL7Info_v
 cfg_HL7Info::log_CLASSID_m
IVD_PARSER_DECL_d const ap_Argument ivdRecover
IVD_PARSER_DECL_d const ap_Argument ivdJob
IVD_PARSER_DECL_d const ap_Argument ivdPool
IVD_PARSER_DECL_d const ap_Argument ivdCheck
IVD_PARSER_DECL_d const ap_Argument ivdMedium
IVD_PARSER_DECL_d const ap_Argument ivdPartition
IVD_PARSER_DECL_d const ap_Argument ivd_fsc
IVD_PARSER_DECL_d const ap_Argument ivdfile
IVD_PARSER_DECL_d const ap_Argument ivdDD
IVD_PARSER_DECL_d const ap_Argument ivdArch
IVD_PARSER_DECL_d const ap_Argument ivd_hsm
const char *const pf_FileTypeVarName_s

Detailed Description

Classes for configuration file parsing, content validation and conversion.

Transformation of configuration file to destination variables

Transformation consists of several groups of classes:

Transformation consists of several major stages:

  1. Parsing of configuration file to an intermediate structure pf_File.
  2. pf_File (or one of its subparts) is an input to a constructor (or some other function that fills the members) of a class, derived from cfg_Base (e.g. cfg_Partition).
  3. Constructor of cfg_Base's successor defines a collection of rules (derivations from val_Value) in an instance of val_RuleVec. It calls cfg_Base::Convert() which does the actual tranformaton, based on specified rules.
  4. If cfg_Base::Convert() encounters a subgroup (pf_Group) inside pf_File's structure to convert, it calls virtual function ConvertGroup(), which has to be implemented by the derived class. Default implementation supposes an error.
  5. ConvertGroup() decides which of its subparts (members) must be parsed from the specified arguments and calls a constructor of the member with the group as a parameter.
IVD-parsing.gif

For more information see also ivd-doc\Design\LLD_Architecture\IVD_Architecture_LLD_Parser.vsd

How to use the parser for your own configuration file?

  1. Define the parameters that you need in a configuration file.
  2. Define its names and the structure (sections, nesting, ...).
  3. Define the memory structure for the parsed variables.
  4. Define the lower/upper limit for each of the variables and its format.
  5. Decide on one class for the main structure and (optional) multiple to contain member (sub)structures.
  6. Create classes, derived from cfg_Content to hold target values.
  7. Implement constructor my_Main(const pf_File &a_parsedFile). The constructor should first call cfg_Base::ConvertFileHeader() and then fill an instance of val_RuleVec with rules. Rules are instances of derivations of val_Value, created with new.

    NOTE: val_RuleVec calls delete on each of the elements of the vector when it goes out of scope.

    cfg_Base::Convert() function is then called for common section and all of the other sections. Example of a constructor:

    my_Main::my_Main(const pf_File &a_parsedFile) {
        static const string c_partID = "IVDPartition";
    
        static const string c_migChangeTrig = "fileChangeTrigger";
        static const string c_migMinFileAge = "minFileAge";
        static const string c_migMaxJobSize = "maxMigJobSize";
        
        ConvertFileHeader(a_parsedFile);
        val_RuleVec rules;
    
        rules.Add(new val_String(c_partID, cfg_Limit(1, 1024)), this->ivdPartition);
        rules.Add(new val_String(c_migChangeTrig, cfg_Limit(1, 255)), this->fileChangeTrigger);
        rules.Add(new val_Duration(c_migMinFileAge, cfg_Limit(1, 10000)), this->minFileAge);
        rules.Add(new val_Size(c_migMaxJobSize, cfg_Limit(1, LONG_MAX)), this->maxMigJobSize);
    
        //Validate and convert common section
        Convert(a_parsedFile.m_common, rules);
    
        //Validate and convert other sections
        for (unsigned int i = 0; i < a_parsedFile.m_sections.size(); i++) {
            // if section name is needed here it is: i->first 
            Convert(a_parsedFile.m_sections.At(i) , rules);
        };
    }
    
  8. cfg_Base::Convert() will call virtual function cfg_Base::ConvertGroup() for each group that it encounters. If your configuration file will have groups, then you will have to implement your own ConvertGroup(). An example:

    void my_Main::ConvertGroup(const string &a_grpName, const pf_Group &a_group) {
        log_FUNC_A_m(ConvertGroup, "a_grpName " << a_grpName);
    
        static const string c_tree = "Tree";
        static const string c_client = "Client";
    
        if ( strcasecmp(a_group.grpType.c_str(), c_tree.c_str()) == 0 ) {
            pm_Tree tree(a_grpName, a_group);
            this->trees.push_back(tree);
        }
        else if ( strcasecmp(a_group.grpType.c_str(), c_client.c_str()) == 0 ) {
            pm_Client client(a_grpName, a_group);
            this->clients.push_back(client);
        }
        else {
            log_WRN_m("Unknown group type: " << a_grpName);
        }
    }
    

    Note that my_Tree and my_Client are also derived from cfg_Base, so the constructors take pf_Group parameters to instantiate from. my_Tree and my_Client can also have subgroups of their own. They would simply define their own ConvertGroup() functions.

  9. As seen above, member structures (classes) must be able to instantiate themselves from pf_Group parameter. Example:

    pm_Client::pm_Client(const string &a_name, const pf_Group &a_group) {
        static const string c_filesystem = "FileSystem";
    
        this->name = a_name;
    
        val_RuleVec  rules;
        rules.Add(new val_String(c_filesystem, cfg_Limit(1, 1024)), this->fileSystem);
    
        Convert(a_group, rules);
    }
    
    

There are several already defined rule classes that you can use for conversion. For additional information on creating new rules, please see val_Value.

See also:
val_Value

Define Documentation

#define cfg_BASE_HEADER_FILEDATE   "Date"

Definition at line 69 of file cfg_defines.h.

Referenced by mif_CfgRep::ReplaceDate().

#define cfg_BASE_HEADER_FILETYPE   "FileType"

Definition at line 67 of file cfg_defines.h.

#define cfg_BASE_HEADER_FILEUSER   "User"

Definition at line 70 of file cfg_defines.h.

Referenced by mif_CfgRep::ReplaceUser().

#define cfg_BASE_HEADER_FILEVERSION   "Version"

Definition at line 68 of file cfg_defines.h.

Referenced by mif_CfgRep::ReplaceVersion().

#define cfg_DAY   (24*cfg_HOUR)

Definition at line 55 of file cfg_defines.h.

#define cfg_DEF_ADPATH   ""

Definition at line 403 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_BLOCK_SIZE   "32KB"

Definition at line 112 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_CONFHISTORY   (10)

Definition at line 431 of file cfg_defines.h.

#define cfg_DEF_CRITICALWATERMARK   "95%"

Definition at line 280 of file cfg_defines.h.

Referenced by cfg_Server::Refresh(), and cfg_PMCfg::Refresh().

#define cfg_DEF_DISABLEAUTOMATICMIGRATIONS   "0"

Definition at line 407 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_DEF_EXPIRATIONAGE   cfg_UNLIMITED

Definition at line 420 of file cfg_defines.h.

Referenced by cfg_PMFileExpiration::cfg_PMFileExpiration().

#define cfg_DEF_FILE_HEAD_SIZE   cfg_MIN_FILE_HEAD_SIZE

Definition at line 234 of file cfg_defines.h.

#define cfg_DEF_FORCEDMIGWATERMARK   (5)

Definition at line 268 of file cfg_defines.h.

#define cfg_DEF_FSCMODE   "1"

Definition at line 382 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_FSTYPE_P   "REGULAR"

Definition at line 388 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_DEF_HIGHWATERMARK   "85%"

Definition at line 272 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_LOC_OF_SYS_VOL   "None"

Definition at line 209 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_LOWWATERMARK   "35%"

Definition at line 276 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXMIGJOBSIZE   "50MB"

Definition at line 238 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXMIGSIZE   "500MB"

Definition at line 262 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVES_P   "64"

Definition at line 318 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVESADMIN   "20"

Definition at line 451 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_MAXNUMDRIVESMAINT   "20"

Definition at line 443 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_MAXNUMDRIVESMAINT_P   "20"

Definition at line 338 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVESMIG_P   "64"

Definition at line 326 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVESMIGRATION   "20"

Definition at line 447 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_MAXNUMDRIVESRECALL   "20"

Definition at line 435 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_MAXNUMDRIVESRECALL_P   "64"

Definition at line 322 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVESRECOVERY   "20"

Definition at line 439 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_MAXNUMDRIVESRECOVERY_P   "20"

Definition at line 334 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMDRIVESREORG_P   "64"

Definition at line 330 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXNUMMIGFILES   "1000"

Definition at line 258 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MAXWAITTIME   "30m"

Definition at line 254 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MEDIA_AGE   "60M"

Definition at line 197 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_MIGRATEWITHCOLLOCATION   "0"

Definition at line 415 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_DEF_MIGRETENTIONTIME   "2h"

Definition at line 299 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MINFILEAGE   "10m"

Definition at line 230 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MINFILESIZE   "2kb"

Definition at line 307 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MINMIGSIZE   "100MB"

Definition at line 250 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MINNUMMIGFILES   "1"

Definition at line 246 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_MINWAITTIME   "10m"

Definition at line 242 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_NUM_OF_VOL   "1"

Definition at line 205 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_PARTMAINTPRIORITY   "80"

Definition at line 378 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_PARTMIGPRIORITY   "20"

Definition at line 366 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_PARTPRIORITY   "50"

Definition at line 358 of file cfg_defines.h.

#define cfg_DEF_PARTRECALLPRIORITY   "80"

Definition at line 362 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_PARTRECOVERYPRIORITY   "100"

Definition at line 374 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_PARTREORGPRIORITY   "10"

Definition at line 370 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_PHASEFACTOR   "500"

Definition at line 467 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_POOL_TYPE   "regular"

Definition at line 193 of file cfg_defines.h.

#define cfg_DEF_READ_WRITE   "30000"

Definition at line 201 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_RECALL_TIMEOUT   "15m"

Definition at line 313 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_RECALLONOPEN   "0"

Definition at line 396 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_DEF_RECALLRETENTIONTIME   "24h"

Definition at line 303 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_RELEASE_INTERVAL   "30s"

Definition at line 284 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_DEF_RESNUMDRIVES   "0"

Definition at line 342 of file cfg_defines.h.

#define cfg_DEF_RESNUMDRIVESMIG   "0"

Definition at line 350 of file cfg_defines.h.

#define cfg_DEF_RESNUMDRIVESRECALL   "0"

Definition at line 346 of file cfg_defines.h.

#define cfg_DEF_RESNUMDRIVESREORG   "0"

Definition at line 354 of file cfg_defines.h.

#define cfg_DEF_RESOURCEALLOCATIONTHRESHOLD   "50%"

Definition at line 459 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_RESOURCEALLOCATIONTRESHOLD   "50%"

Definition at line 455 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_SENDHL7MESSAGES   "0"

Definition at line 411 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_DEF_START_RELEASE_EARLY   "0"

Definition at line 287 of file cfg_defines.h.

#define cfg_DEF_START_RELEASE_NUMF   "1000"

Definition at line 291 of file cfg_defines.h.

#define cfg_DEF_START_RELEASE_TIME   "5"

Definition at line 295 of file cfg_defines.h.

#define cfg_DEF_SYSTEM_VOL_SIZE   "512MB"

Definition at line 213 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_SYSTEMADMINPRIORITY   "1000"

Definition at line 475 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_SYSTEMBACKUPPRIORITY   "1000"

Definition at line 479 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_SYSTEMMAXMEMORYBUFFERSIZE   (10*cfg_MEGABYTE)

Definition at line 471 of file cfg_defines.h.

#define cfg_DEF_TIMESTEP   "2"

Definition at line 463 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_DEF_VOL_SIZE   "100GB"

Definition at line 217 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_DEF_WORMTIMEOUT   "450s"

Definition at line 392 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_FILE_VAR_CLIENT   "Client"

Definition at line 96 of file cfg_defines.h.

Referenced by mif_CfgRep::ReplaceClients().

#define cfg_FILE_VAR_HOST   "Host"

Definition at line 95 of file cfg_defines.h.

Referenced by mif_CfgRep::ReplaceHosts().

#define cfg_GIGABYTE   (1024LL*cfg_MEGABYTE)

Definition at line 59 of file cfg_defines.h.

#define cfg_HL7_MESSAGE_SEND_INTERVAL   (60 * cfg_MINUTE)

Definition at line 529 of file cfg_defines.h.

#define cfg_HOUR   (60*cfg_MINUTE)

Definition at line 54 of file cfg_defines.h.

Referenced by rm_Queue::Allocate().

#define cfg_INFINITE   (LONG_MAX)

Definition at line 52 of file cfg_defines.h.

Referenced by fsc_FileExpiration::DbgDump().

#define cfg_KILOBYTE   (1024)
#define CFG_LINK_LATEST   "latest"
#define cfg_MAX_ADPATH   ivd_MAX_PATHNAME

Definition at line 402 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_BACKUP_NUM   (1000)

Definition at line 498 of file cfg_defines.h.

Referenced by cfg_CliDD::cfg_CliDD().

#define cfg_MAX_BLOCK_SIZE   (cfg_MAX_BLOCK_SIZE_KB*cfg_KILOBYTE)

Definition at line 111 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_BLOCK_SIZE_KB   (1536)

Definition at line 108 of file cfg_defines.h.

Referenced by cfg_CliCreateFile::cfg_CliCreateFile(), and cfg_CliDD::cfg_CliDD().

#define cfg_MAX_CAPABILITIES_NAME   cfg_MAX_OPTION_NAME

Definition at line 115 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh(), and cfg_RMDrive::Refresh().

#define cfg_MAX_CFG_REVISION_NO   cfg_MAX_CONFHISTORY

Definition at line 514 of file cfg_defines.h.

Referenced by cfg_CliBase::cfg_CliBase().

#define cfg_MAX_CLI_ARGLEN   (255)
#define cfg_MAX_COLID   cfg_INFINITE

Definition at line 523 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile(), and cfg_DirCollocationInfo::Init().

#define cfg_MAX_CONFHISTORY   (999)

Definition at line 430 of file cfg_defines.h.

#define cfg_MAX_CRITICALWATERMARK   (100)

Definition at line 279 of file cfg_defines.h.

Referenced by cfg_Server::Refresh(), and cfg_PMCfg::Refresh().

#define cfg_MAX_CTRLDEVICE   rmdb_MAX_CTRLDEVICE

Definition at line 105 of file cfg_defines.h.

Referenced by cfg_RMHost::cfg_RMHost(), and cfg_RMLibrary::Refresh().

#define cfg_MAX_DISABLEAUTOMATICMIGRATIONS   (1)

Definition at line 406 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_DRIVE_NAME   rmdb_MAX_DRIVENAME

Definition at line 162 of file cfg_defines.h.

Referenced by cfg_RMDrive::Refresh().

#define cfg_MAX_DRIVEIDX   rmdb_MAX_DRIVEIDX

Definition at line 165 of file cfg_defines.h.

Referenced by cfg_RMDrive::Refresh().

#define cfg_MAX_EXPIRATIONAGE   cfg_INFINITE

Definition at line 419 of file cfg_defines.h.

Referenced by cfg_PMFileExpiration::cfg_PMFileExpiration().

#define cfg_MAX_FILE_DATE   cfg_INFINITE

Definition at line 79 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MAX_FILE_HEAD_SIZE   (100*cfg_KILOBYTE)

Definition at line 233 of file cfg_defines.h.

#define cfg_MAX_FILE_TYPE   (255)

Definition at line 73 of file cfg_defines.h.

#define cfg_MAX_FILE_USER   (255)

Definition at line 82 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MAX_FILE_VERSION   cfg_INFINITE

Definition at line 76 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MAX_FILEID   (UINT_MAX)

Definition at line 517 of file cfg_defines.h.

Referenced by cfg_Cli_fsc::cfg_Cli_fsc(), and cfg_CliFile::cfg_CliFile().

#define cfg_MAX_FILENAME   ivd_MAX_FILENAME

Definition at line 88 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_FILESYSTEM_ID   (255)

Definition at line 399 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_FORCEDMIGWATERMARK   (50)

Definition at line 267 of file cfg_defines.h.

#define cfg_MAX_FSCMODE   (1)

Definition at line 381 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_FSTYPE_P   (50)

Definition at line 387 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_HIGHWATERMARK   (95)

Definition at line 271 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_HOSTNAME   rmdb_MAX_HOSTNAME
#define cfg_MAX_JOB_PRIORITY_MOD   (INT_MAX)

Definition at line 510 of file cfg_defines.h.

Referenced by cfg_Cli_fsc::cfg_Cli_fsc(), and cfg_CliJob::cfg_CliJob().

#define cfg_MAX_JOBID   (21000000000000LL)

Definition at line 520 of file cfg_defines.h.

Referenced by cfg_CliJob::cfg_CliJob().

#define cfg_MAX_LIBRARY_NAME   rmdb_MAX_LIBRARYNAME

Definition at line 133 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh(), and cfg_RMDrive::Refresh().

#define cfg_MAX_LIBRARY_TYPE   cfg_MAX_OPTION_NAME

Definition at line 136 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MAX_LOC_OF_SYS_VOL   (6)

Definition at line 208 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_LOWWATERMARK   (90)

Definition at line 275 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAILSLOTS_NAME   rmdb_MAX_SLOTADDR

Definition at line 142 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MAX_MAXMIGJOBSIZE   (500*cfg_GIGABYTE)

Definition at line 237 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXMIGSIZE   (10*cfg_TERABYTE)

Definition at line 261 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVES_P   (64)

Definition at line 317 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVESADMIN   (64)

Definition at line 450 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_MAXNUMDRIVESMAINT   (64)

Definition at line 442 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_MAXNUMDRIVESMAINT_P   (64)

Definition at line 337 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVESMIG_P   (64)

Definition at line 325 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVESMIGRATION   (64)

Definition at line 446 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_MAXNUMDRIVESRECALL   (64)

Definition at line 434 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_MAXNUMDRIVESRECALL_P   (64)

Definition at line 321 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVESRECOVERY   (64)

Definition at line 438 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_MAXNUMDRIVESRECOVERY_P   (64)

Definition at line 333 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMDRIVESREORG_P   (64)

Definition at line 329 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXNUMMIGFILES   (500000)

Definition at line 257 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MAXWAITTIME   (365*cfg_DAY)

Definition at line 253 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MEDIA_AGE   cfg_INFINITE

Definition at line 196 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_MEDIAFAMILY_NAME   cfg_MAX_OPTION_NAME
#define cfg_MAX_MEDIUM_KEY   (65536)

Definition at line 507 of file cfg_defines.h.

Referenced by cfg_Cli_fsc::cfg_Cli_fsc().

#define cfg_MAX_MIGID   (ULLONG_MAX)

Definition at line 501 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile().

#define cfg_MAX_MIGRATEWITHCOLLOCATION   (1)

Definition at line 414 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_MIGRETENTIONTIME   (INT_MAX)

Definition at line 298 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MINFILEAGE   (2*cfg_DAY)

Definition at line 229 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MINFILESIZE   cfg_MEGABYTE

Definition at line 306 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MINMIGSIZE   (2*cfg_TERABYTE)

Definition at line 249 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MINNUMMIGFILES   (100000)

Definition at line 245 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_MINWAITTIME   (31*cfg_DAY)

Definition at line 241 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_NUM_OF_VOL   (32)

Definition at line 204 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_OPTION_NAME   (50)

Definition at line 99 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh(), and cfg_RMDrive::Refresh().

#define cfg_MAX_PARTITION_NAME   rmdb_MAX_PARTITIONNAME

Definition at line 224 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient(), and cfg_PMCfg::Refresh().

#define cfg_MAX_PARTMAINTPRIORITY   (100)

Definition at line 377 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PARTMIGPRIORITY   (100)

Definition at line 365 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PARTPRIORITY   (100)

Definition at line 357 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PARTRECALLPRIORITY   (100)

Definition at line 361 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PARTRECOVERYPRIORITY   (100)

Definition at line 373 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PARTREORGPRIORITY   (100)

Definition at line 369 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_PATHNAME   ivd_MAX_PATHNAME
#define cfg_MAX_PHASEFACTOR   (100000)

Definition at line 466 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_POOL_NAME   rmdb_MAX_MEDIAPOOLNAME

Definition at line 189 of file cfg_defines.h.

Referenced by cfg_PMTree::cfg_PMTree(), cfg_RMPool::Refresh(), and cfg_PMCfg::Refresh().

#define cfg_MAX_POOL_TYPE   (INT_MAX)

Definition at line 192 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_PORT   (65536)

Definition at line 526 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile(), and cfg_DirHL7Info::Init().

#define cfg_MAX_READ_WRITE   cfg_INFINITE

Definition at line 200 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_RECALL_TIMEOUT   (8*cfg_HOUR)

Definition at line 312 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_RECALLONOPEN   (1)

Definition at line 395 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_RECALLRETENTIONTIME   (INT_MAX)

Definition at line 302 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_RELEASE_INTERVAL   (cfg_DAY)

Definition at line 283 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MAX_RESNUMDRIVES   (64)

Definition at line 341 of file cfg_defines.h.

#define cfg_MAX_RESNUMDRIVESMIG   (64)

Definition at line 349 of file cfg_defines.h.

#define cfg_MAX_RESNUMDRIVESRECALL   (64)

Definition at line 345 of file cfg_defines.h.

#define cfg_MAX_RESNUMDRIVESREORG   (64)

Definition at line 353 of file cfg_defines.h.

#define cfg_MAX_RESOURCEALLOCATIONTHRESHOLD   (100)

Definition at line 458 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_RESOURCEALLOCATIONTRESHOLD   (100)

Definition at line 454 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_RMDBPASSWORD   (50)

Definition at line 485 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_RMDBUSERNAME   (50)

Definition at line 482 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_SENDHL7MESSAGES   (1)

Definition at line 410 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MAX_SLOT_NUM   (50000)

Definition at line 144 of file cfg_defines.h.

Referenced by val_SlotList::Add(), and val_SlotList::AddRange().

#define cfg_MAX_SLOTS_NAME   rmdb_MAX_SLOTADDR

Definition at line 139 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MAX_START_RELEASE_EARLY   (1)

Definition at line 286 of file cfg_defines.h.

#define cfg_MAX_START_RELEASE_NUMF   (10000)

Definition at line 290 of file cfg_defines.h.

#define cfg_MAX_START_RELEASE_TIME   (cfg_MINUTE)

Definition at line 294 of file cfg_defines.h.

#define cfg_MAX_SYSTEM_VOL_SIZE   (10*cfg_GIGABYTE)

Definition at line 212 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_SYSTEMADMINPRIORITY   (10000)

Definition at line 474 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_SYSTEMBACKUPPRIORITY   10000

Definition at line 478 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_SYSTEMMAXMEMORYBUFFERSIZE   cfg_GIGABYTE

Definition at line 470 of file cfg_defines.h.

#define cfg_MAX_TIMESTEP   (10000)

Definition at line 462 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MAX_VOL_SIZE   (2000*cfg_GIGABYTE)

Definition at line 216 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MAX_VOLUME_NUM   (255)
#define cfg_MAX_WORMTIMEOUT   (7200)

Definition at line 391 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MD5SUM_LEN   (32)

Definition at line 494 of file cfg_defines.h.

Referenced by cfg_CliDD::cfg_CliDD().

#define cfg_MEGABYTE   (1024*cfg_KILOBYTE)
#define cfg_MIN_ADPATH   (0)

Definition at line 401 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_BACKUP_NUM   (1)

Definition at line 497 of file cfg_defines.h.

Referenced by cfg_CliDD::cfg_CliDD().

#define cfg_MIN_BLOCK_SIZE   (cfg_MIN_BLOCK_SIZE_KB*cfg_KILOBYTE)

Definition at line 110 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_BLOCK_SIZE_KB   ivd_MIN_BLOCK_SIZE_KB

Definition at line 107 of file cfg_defines.h.

Referenced by cfg_CliCreateFile::cfg_CliCreateFile(), and cfg_CliDD::cfg_CliDD().

#define cfg_MIN_CAPABILITIES_NAME   cfg_MIN_OPTION_NAME

Definition at line 114 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh(), and cfg_RMDrive::Refresh().

#define cfg_MIN_CFG_REVISION_NO   (0)

Definition at line 513 of file cfg_defines.h.

Referenced by cfg_CliBase::cfg_CliBase().

#define cfg_MIN_CLI_ARGLEN   (1)
#define cfg_MIN_COLID   1

Definition at line 522 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile(), and cfg_DirCollocationInfo::Init().

#define cfg_MIN_CONFHISTORY   (1)

Definition at line 429 of file cfg_defines.h.

#define cfg_MIN_CRITICALWATERMARK   (80)

Definition at line 278 of file cfg_defines.h.

Referenced by cfg_Server::Refresh(), and cfg_PMCfg::Refresh().

#define cfg_MIN_CTRLDEVICE   (1)

Definition at line 104 of file cfg_defines.h.

Referenced by cfg_RMHost::cfg_RMHost(), and cfg_RMLibrary::Refresh().

#define cfg_MIN_DISABLEAUTOMATICMIGRATIONS   (0)

Definition at line 405 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_DRIVE_NAME   (1)

Definition at line 161 of file cfg_defines.h.

Referenced by cfg_RMDrive::Refresh().

#define cfg_MIN_DRIVEIDX   (1)

Definition at line 164 of file cfg_defines.h.

Referenced by cfg_RMDrive::Refresh().

#define cfg_MIN_EXPIRATIONAGE   cfg_DAY

Definition at line 418 of file cfg_defines.h.

Referenced by cfg_PMFileExpiration::cfg_PMFileExpiration().

#define cfg_MIN_FILE_DATE   (0)

Definition at line 78 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MIN_FILE_HEAD_SIZE   (256)

Definition at line 232 of file cfg_defines.h.

#define cfg_MIN_FILE_TYPE   (1)

Definition at line 72 of file cfg_defines.h.

#define cfg_MIN_FILE_USER   (0)

Definition at line 81 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MIN_FILE_VERSION   (1)

Definition at line 75 of file cfg_defines.h.

Referenced by cfg_Base::ConvertFileHeader().

#define cfg_MIN_FILEID   (1)

Definition at line 516 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile().

#define cfg_MIN_FILESYSTEM_ID   (1)

Definition at line 398 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_FORCEDMIGWATERMARK   (1)

Definition at line 266 of file cfg_defines.h.

#define cfg_MIN_FSCMODE   (1)

Definition at line 380 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_FSTYPE_P   (1)

Definition at line 386 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_HIGHWATERMARK   (10)

Definition at line 270 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_HOSTNAME   (1)
#define cfg_MIN_JOB_PRIORITY_MOD   (1)

Definition at line 509 of file cfg_defines.h.

Referenced by cfg_Cli_fsc::cfg_Cli_fsc(), and cfg_CliJob::cfg_CliJob().

#define cfg_MIN_JOBID   (20000000000000LL)

Definition at line 519 of file cfg_defines.h.

Referenced by cfg_CliJob::cfg_CliJob().

#define cfg_MIN_LIBRARY_NAME   (1)

Definition at line 132 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MIN_LIBRARY_TYPE   cfg_MIN_OPTION_NAME

Definition at line 135 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MIN_LOC_OF_SYS_VOL   (1)

Definition at line 207 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_LOWWATERMARK   (0)

Definition at line 274 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAILSLOTS_NAME   (1)

Definition at line 141 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MIN_MAXMIGJOBSIZE   cfg_MIN_FILE_HEAD_SIZE

Definition at line 236 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXMIGSIZE   (cfg_MEGABYTE)

Definition at line 260 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVES_P   (0)

Definition at line 316 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVESADMIN   (0)

Definition at line 449 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_MAXNUMDRIVESMAINT   (0)

Definition at line 441 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_MAXNUMDRIVESMAINT_P   (0)

Definition at line 336 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVESMIG_P   (0)

Definition at line 324 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVESMIGRATION   (0)

Definition at line 445 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_MAXNUMDRIVESRECALL   (0)

Definition at line 433 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_MAXNUMDRIVESRECALL_P   (0)

Definition at line 320 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVESRECOVERY   (0)

Definition at line 437 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_MAXNUMDRIVESRECOVERY_P   (0)

Definition at line 332 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMDRIVESREORG_P   (0)

Definition at line 328 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXNUMMIGFILES   (1)

Definition at line 256 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MAXWAITTIME   (1)

Definition at line 252 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MEDIA_AGE   (30*cfg_DAY)

Definition at line 195 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_MEDIAFAMILY_NAME   cfg_MIN_OPTION_NAME
#define cfg_MIN_MEDIUM_KEY   (1)

Definition at line 506 of file cfg_defines.h.

Referenced by cfg_Cli_fsc::cfg_Cli_fsc().

#define cfg_MIN_MIGID   (0)

Definition at line 500 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile().

#define cfg_MIN_MIGRATEWITHCOLLOCATION   (0)

Definition at line 413 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_MIGRETENTIONTIME   (1)

Definition at line 297 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MINFILEAGE   (1)

Definition at line 228 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MINFILESIZE   (0)

Definition at line 305 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MINMIGSIZE   cfg_MIN_FILE_HEAD_SIZE

Definition at line 248 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MINNUMMIGFILES   (1)

Definition at line 244 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_MINWAITTIME   (1)

Definition at line 240 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_NUM_OF_VOL   (1)

Definition at line 203 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_OPTION_NAME   (1)

Definition at line 98 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh(), and cfg_RMDrive::Refresh().

#define cfg_MIN_PARTITION_NAME   (1)

Definition at line 223 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient(), and cfg_PMCfg::Refresh().

#define cfg_MIN_PARTMAINTPRIORITY   (0)

Definition at line 376 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PARTMIGPRIORITY   (0)

Definition at line 364 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PARTPRIORITY   (0)

Definition at line 356 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PARTRECALLPRIORITY   (0)

Definition at line 360 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PARTRECOVERYPRIORITY   (0)

Definition at line 372 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PARTREORGPRIORITY   (0)

Definition at line 368 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_PATHNAME   (1)
#define cfg_MIN_PHASEFACTOR   (0)

Definition at line 465 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_POOL_NAME   (1)

Definition at line 188 of file cfg_defines.h.

Referenced by cfg_PMTree::cfg_PMTree(), cfg_RMPool::Refresh(), and cfg_PMCfg::Refresh().

#define cfg_MIN_POOL_TYPE   (0)

Definition at line 191 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_PORT   1

Definition at line 525 of file cfg_defines.h.

Referenced by cfg_CliFile::cfg_CliFile(), and cfg_DirHL7Info::Init().

#define cfg_MIN_READ_WRITE   (10)

Definition at line 199 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_RECALL_TIMEOUT   (1)

Definition at line 311 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_RECALLONOPEN   (0)

Definition at line 394 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_RECALLRETENTIONTIME   (1)

Definition at line 301 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_RELEASE_INTERVAL   (1)

Definition at line 282 of file cfg_defines.h.

Referenced by cfg_PMCfg::Refresh().

#define cfg_MIN_RESNUMDRIVES   (0)

Definition at line 340 of file cfg_defines.h.

#define cfg_MIN_RESNUMDRIVESMIG   (0)

Definition at line 348 of file cfg_defines.h.

#define cfg_MIN_RESNUMDRIVESRECALL   (0)

Definition at line 344 of file cfg_defines.h.

#define cfg_MIN_RESNUMDRIVESREORG   (0)

Definition at line 352 of file cfg_defines.h.

#define cfg_MIN_RESOURCEALLOCATIONTHRESHOLD   (0)

Definition at line 457 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_RESOURCEALLOCATIONTRESHOLD   (0)

Definition at line 453 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_RMDBPASSWORD   (1)

Definition at line 484 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_RMDBUSERNAME   (1)

Definition at line 481 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_SENDHL7MESSAGES   (0)

Definition at line 409 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MIN_SLOTS_NAME   (1)

Definition at line 138 of file cfg_defines.h.

Referenced by cfg_RMLibrary::Refresh().

#define cfg_MIN_START_RELEASE_NUMF   (500)

Definition at line 289 of file cfg_defines.h.

#define cfg_MIN_START_RELEASE_TIME   (1)

Definition at line 293 of file cfg_defines.h.

#define cfg_MIN_SYSTEM_VOL_SIZE   (0)

Definition at line 211 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_SYSTEMADMINPRIORITY   (0)

Definition at line 473 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_SYSTEMBACKUPPRIORITY   0

Definition at line 477 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_SYSTEMMAXMEMORYBUFFERSIZE   (0)

Definition at line 469 of file cfg_defines.h.

#define cfg_MIN_TIMESTEP   (0)

Definition at line 461 of file cfg_defines.h.

Referenced by cfg_Server::Refresh().

#define cfg_MIN_VOL_SIZE   (100*cfg_MEGABYTE)

Definition at line 215 of file cfg_defines.h.

Referenced by cfg_RMPool::Refresh().

#define cfg_MIN_VOLUME_NUM   (1)
#define cfg_MIN_WORMTIMEOUT   (0)

Definition at line 390 of file cfg_defines.h.

Referenced by cfg_PMClient::cfg_PMClient().

#define cfg_MINUTE   (60)

Definition at line 53 of file cfg_defines.h.

Referenced by hsm_HL7MessageProxy::hsm_HL7MessageProxy().

#define cfg_TERABYTE   (1024LL*cfg_GIGABYTE)
#define cfg_TIME_STAMP_LEN   (15)

Definition at line 495 of file cfg_defines.h.

Referenced by cfg_CliDD::cfg_CliDD().

#define cfg_UNLIMITED   "UNLIMITED"

Definition at line 61 of file cfg_defines.h.

Referenced by val_Duration::Validate().

#define cfg_YEAR   (365*cfg_DAY)

Definition at line 56 of file cfg_defines.h.


Typedef Documentation

typedef ap_Argument_p_v_t::iterator ap_Argument_p_v_i

Definition at line 72 of file ap.h.

Definition at line 63 of file ap.h.

typedef val_Time val_Date

Definition at line 1134 of file val.h.

Definition at line 1067 of file val.h.

Definition at line 958 of file val.h.

typedef vector< val_Element<string> >::iterator val_ElementString_i

Definition at line 39 of file cli_arg.h.

Definition at line 40 of file cli_arg.h.

Definition at line 1133 of file val.h.

Definition at line 1060 of file val.h.

Definition at line 951 of file val.h.

Definition at line 1061 of file val.h.

Definition at line 952 of file val.h.

Definition at line 1062 of file val.h.

Definition at line 953 of file val.h.

Definition at line 1059 of file val.h.

Definition at line 950 of file val.h.

Definition at line 1131 of file val.h.

typedef val_List<val_Path, string> val_PathList

Definition at line 1124 of file val.h.

typedef val_Range<val_Path, string> val_PathRange

Definition at line 1125 of file val.h.

Definition at line 1058 of file val.h.

Definition at line 949 of file val.h.

Definition at line 1132 of file val.h.

Definition at line 1064 of file val.h.

Definition at line 955 of file val.h.

Definition at line 1065 of file val.h.

Definition at line 956 of file val.h.

Definition at line 1066 of file val.h.

Definition at line 957 of file val.h.

Definition at line 1063 of file val.h.

Definition at line 954 of file val.h.

Definition at line 1130 of file val.h.

Definition at line 239 of file pf.h.


Enumeration Type Documentation

Enumerator:
at_CLI 
at_COMMAND 
at_OPTION 
at_PARAMETER 
at_MULTIPAR 
at_GROUP 

Definition at line 48 of file ap.h.

             {
    at_CLI,
    at_COMMAND,
    at_OPTION,
    at_PARAMETER,
    at_MULTIPAR,
    at_GROUP
} ap_ArgType_e;

Enumerator:
pr_OPTIONAL 
pr_MANDATORY 
pr_ELEMENTSPEC 

Definition at line 57 of file ap.h.

             {
    pr_OPTIONAL,
    pr_MANDATORY,
    pr_ELEMENTSPEC
} ap_Presence_e;

enum ElemType_e
Enumerator:
el_Unknown 
el_Simple 
el_Range 

Definition at line 54 of file val.h.

{el_Unknown, el_Simple, el_Range} ElemType_e ;

Enumerator:
PF_SIMPLE 
PF_RANGE 
PF_LIST 
PF_GROUP 
PF_INCLFILE 
PF_COMMENT 
PF_UNDEFINED 

Definition at line 36 of file pf.h.

             {
    PF_SIMPLE,
    PF_RANGE,
    PF_LIST,
    PF_GROUP,
    PF_INCLFILE,
    PF_COMMENT,

    PF_UNDEFINED

} pf_ValType_e;


Function Documentation

static const string c_collocationDir ( "collocation"   )  [static]
static const string c_collocationFile ( "collocation.info"   )  [static]

Referenced by i_PartitionManager_i::ReadCollocationInfo(), and cfg_CollocationInfo::WriteCollocationInfo().

Here is the caller graph for this function:

static const string c_hl7Dir ( "hl7"   )  [static]

Referenced by i_PartitionManager_i::ReadHl7Info().

Here is the caller graph for this function:

static const string c_hl7File ( "hl7.info"   )  [static]

Referenced by cfg_HL7Info::WriteHL7Info().

Here is the caller graph for this function:

template<class T >
int cfg_FindGroupByName ( vector< T >  a_grpVector,
string  a_name 
)

Definition at line 71 of file cfg.h.

Referenced by cfg_RMDrive::ConvertGroup(), and cfg_PMCfg::ConvertGroup().

                                                                  {
        for ( unsigned int i = 0; i < a_grpVector.size(); i++) {
            if (a_grpVector[i].name == a_name){
                return i;
            }
        }
        return -1;
    }

Here is the caller graph for this function:

void cmn_GC ( pf_Component a_garbage,
vector< pf_Component * > &  a_gcVec 
)

Simple garbage collector.

Parameters:
T A type to save reference to
VT Type of content of garbage collector vector.

Definition at line 86 of file pf.cpp.

Referenced by yyparse().

                                                                       {
    a_gcVec.push_back(a_garbage);
}

Here is the caller graph for this function:

void cfg_CollocationInfo::ConvertGroup ( const string &  a_grpName,
const pf_Group a_group 
) [virtual, inherited]

Reimplemented from cfg_Base.

Definition at line 73 of file cfg_collocationInfo.cpp.

References c_dirCollocationInfo(), evt_WARNING, pf_Group::grpType, ie_PARSER_ERROR, cfg_DirCollocationInfo::Init(), ivd_Error, log_FUNC_m, log_WriteEvent(), and cfg_CollocationInfo::m_dirColInfo_v.

                                                                                       {
    log_FUNC_m(ConvertGroup);
    if (a_group.grpType.compare(c_dirCollocationInfo) == 0) {
        cfg_DirCollocationInfo dirInfo;;
        dirInfo.Init(a_grpName, a_group);
        this->m_dirColInfo_v.push_back(dirInfo);
    }
    else {
        ostringstream msg;
        msg << "Unknown group type for group: " << a_grpName;
        log_WriteEvent(evt_WARNING, msg.str());
        throw ivd_Error(ie_PARSER_ERROR, msg.str());
    }
}

Here is the call graph for this function:

void cfg_HL7Info::ConvertGroup ( const string &  a_grpName,
const pf_Group a_group 
) [virtual, inherited]

Reimplemented from cfg_Base.

Definition at line 74 of file cfg_hl7info.cpp.

References c_dirHL7Info(), evt_WARNING, pf_Group::grpType, ie_PARSER_ERROR, cfg_DirHL7Info::Init(), ivd_Error, log_FUNC_m, log_WriteEvent(), and cfg_HL7Info::m_dirHL7Info_v.

                                                                               {
    log_FUNC_m(ConvertGroup);
    if (a_group.grpType.compare(c_dirHL7Info) == 0) {
        cfg_DirHL7Info dirInfo;;
        dirInfo.Init(a_grpName, a_group);
        this->m_dirHL7Info_v.push_back(dirInfo);
    }
    else {
        ostringstream msg;
        msg << "Unknown group type for group: " << a_grpName;
        log_WriteEvent(evt_WARNING, msg.str());
        throw ivd_Error(ie_PARSER_ERROR, msg.str());
    }
}

Here is the call graph for this function:

void cfg_CollocationInfo::GenerateCollocationInfoFile ( cmn_File a_file  )  [static, private, inherited]

Definition at line 88 of file cfg_collocationInfo.cpp.

References c_collocationInfo(), cmn_Time::c_Time2YMDhms(), cmn_File::CloseF(), fom_CREATE_ALWAYS, fom_READWRITE, g_cmn, log_FUNC_m, cmn_SysInfo::m_hostName, cmn_SysInfo::m_userName, cmn_File::OpenF(), cmn_Global::si, and cmn_File::WriteF().

Referenced by cfg_CollocationInfo::WriteCollocationInfo().

                                                                      {
    log_FUNC_m(GenerateCollocationInfoFile);
    a_file.OpenF(fom_CREATE_ALWAYS|fom_READWRITE);
    cmn_Time now;
    string userAtDomain(g_cmn.si.m_userName + "@" + g_cmn.si.m_hostName);
    string fileContent = "[IVD " + c_collocationInfo + "]\n[Version = 1]\n[Date = \""
                       + string(now.c_Time2YMDhms()) + "\"]\n"
                       + "[User = \"" + userAtDomain + "\"]\n\n";
    a_file.WriteF(fileContent.c_str(), ivd_FileBufSize_t(fileContent.length()));
    a_file.CloseF();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_HL7Info::GenerateHL7InfoFile ( cmn_File a_file  )  [static, private, inherited]

Definition at line 89 of file cfg_hl7info.cpp.

References c_hl7Info(), cmn_Time::c_Time2YMDhms(), cmn_File::CloseF(), fom_CREATE_ALWAYS, fom_READWRITE, g_cmn, log_FUNC_m, cmn_SysInfo::m_hostName, cmn_SysInfo::m_userName, cmn_File::OpenF(), cmn_Global::si, and cmn_File::WriteF().

Referenced by cfg_HL7Info::WriteHL7Info().

                                                      {
    log_FUNC_m(GenerateHL7InfoFile);
    a_file.OpenF(fom_CREATE_ALWAYS|fom_READWRITE);
    cmn_Time now;
    string userAtDomain(g_cmn.si.m_userName + "@" + g_cmn.si.m_hostName);
    string fileContent = "[IVD " + c_hl7Info + "]\n[Version = 1]\n[Date = \""
                       + string(now.c_Time2YMDhms()) + "\"]\n"
                       + "[User = \"" + userAtDomain + "\"]\n\n";
    a_file.WriteF(fileContent.c_str(), ivd_FileBufSize_t(fileContent.length()));
    a_file.CloseF();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_DirCollocationInfo::Init ( const string &  a_grpyName,
const pf_Group a_group 
) [inherited]
void cfg_DirHL7Info::Init ( const string &  a_grpyName,
const pf_Group a_group 
) [inherited]
IVD_PARSER_DECL_d ostream& operator<< ( ostream &  a_os,
const pf_File a_file 
)

Definition at line 660 of file pf.cpp.

References pf_ValueList::At(), pf_Component::comment, g_cmn, pf_File::m_common, pf_File::m_fileHeader, pf_File::m_header, ivd_Product::m_nameShort, pf_File::m_sections, pf_ValueBase::name, PF_COMMENT, cmn_Global::prod, pf_Value::simple, pf_ValueList::size(), pf_Value::type, and pf_Elem::val.

                                                           {
    // Main header line
    a_os
        << "[" << g_cmn.prod.m_nameShort << " "
        << a_file.m_fileHeader.simple.val << "]" << endl;

    for (UInt32_t i = 0; i < a_file.m_header.size(); i++) {

        const pf_Value &hdrLine = a_file.m_header.At(i);

        if (hdrLine.type == PF_COMMENT) {
            a_os << "#" << hdrLine.comment << endl;
        }
        else {
            a_os
                << "[ " << hdrLine.name << " = "
                << "\"" << hdrLine.simple.val << "\"" << " ]";
        }

        if (hdrLine.type != PF_COMMENT && hdrLine.comment.length() > 0) {
            a_os << " #" << hdrLine.comment;
        }
        a_os << endl;
    }

    a_os
        << a_file.m_common << endl << endl
        << a_file.m_sections << endl;

    return a_os;
}

Here is the call graph for this function:

ostream& operator<< ( ostream &  a_os,
const pf_Value a_val 
)

Definition at line 546 of file pf.cpp.

References pf_List::At(), pf_Component::comment, pf_Value::group, pf_Group::grpType, pf_Elem::isRange, pf_Value::list, pf_ValueBase::name, PF_COMMENT, PF_GROUP, PF_INCLFILE, PF_LIST, PF_RANGE, PF_SIMPLE, pf_Value::simple, pf_List::size(), pf_Elem::toVal, pf_Value::type, and pf_Elem::val.

                                                           {
    switch (a_val.type) {
        case PF_SIMPLE :
            a_os
                << a_val.name << " = "
                << "\"" << a_val.simple.val << "\"";
            break;
        case PF_RANGE:
            a_os
                << a_val.name << " = "
                << "\"" << a_val.simple.val << "\"" << " - "
                << "\"" << a_val.simple.toVal << "\"";
            break;
        case PF_LIST:
            {
                a_os << a_val.name << " = " << "(";

                if (a_val.list.size() > 0) {
                    for (unsigned int i = 0; i < a_val.list.size(); i++ ) {

                        const pf_Elem &listElem = a_val.list.At(i);

                        if (listElem.isRange) {
                            a_os
                                << "\"" << listElem.val << "\"" << " - "
                                << "\"" << listElem.toVal << "\"";
                        }
                        else {
                            a_os << "\"" << listElem.val << "\"";
                        };

                        // Comment
                        if (!listElem.comment.empty()) {
                            a_os << " #" << listElem.comment << endl;
                        }
                        else if (i < a_val.list.size()-1) {
                            a_os << ", ";

                            // Split line after 30 elements
                            if ( ((i+1)%30) == 0) {
                                a_os << endl;
                            }
                        }
                    }
                };

                a_os << ")";
                break;
            }
        case PF_GROUP:
            {
                const pf_ValueList *valList = dynamic_cast<const pf_ValueList*>(a_val.group);
                a_os << a_val.group->grpType << " " << "\"" << a_val.name << "\"" << endl;
                a_os
                    << "{" << endl
                    << *valList
                    << "}";
            }
            break;
        case PF_INCLFILE:
            a_os << "[INCLUDE = " << a_val.simple.val << " ]";
            break;
        case PF_COMMENT:
            a_os << "#" << a_val.comment;
            break;
        default:
            break;
    };

    if (a_val.type != PF_COMMENT && a_val.comment.length() > 0) {
        // Comment is appended to current value
        a_os << " #" << a_val.comment;
    }

    a_os << endl;

    return a_os;
}

Here is the call graph for this function:

ostream& operator<< ( ostream &  a_os,
const pf_SectionList a_list 
)

Definition at line 645 of file pf.cpp.

References pf_SectionList::m_vec.

                                                                  {
    for (UInt32_t i = 0; i < a_list.m_vec.size(); i++) {
        a_os << a_list.m_vec[i];
    }
    return a_os;
}

ostream& operator<< ( ostream &  a_os,
const pf_Section a_sec 
)

Definition at line 626 of file pf.cpp.

References pf_Component::comment, and pf_Section::name.

                                                             {

    if (!a_sec.name.empty()) {
        // Common section doesn't have a name
        a_os << "[ " << a_sec.name << " ]";
    };

    if (a_sec.comment.length() > 0) {
        a_os << " #" << a_sec.comment;
    }

    a_os << endl;

    const pf_ValueList *valList = dynamic_cast<const pf_ValueList*>(&a_sec);
    a_os << *valList;

    return a_os;
}

IVD_PARSER_DECL_d ostream& operator<< ( ostream &  a_os,
const pf_ValueList a_list 
)

Definition at line 652 of file pf.cpp.

References pf_ValueList::m_vec.

                                                                {
    for (UInt32_t i = 0; i < a_list.m_vec.size(); i++) {
        a_os << a_list.m_vec[i];
    }
    a_os << endl;
    return a_os;
}

void cfg_CollocationInfo::ReadCollocationInfo ( cmn_File a_file,
cfg_CollocationInfo a_colInfo 
) [static, inherited]

Definition at line 110 of file cfg_collocationInfo.cpp.

References cmn_File::GetFullPathRef(), log_FUNC_m, pf_File::Parse(), and cfg_CollocationInfo::Refresh().

Referenced by cfg_CollocationInfo::WriteCollocationInfo().

                                                                                              {
    log_FUNC_m(ReadCollocationInfo);

    pf_File parsedFile;
    parsedFile.Parse(a_file.GetFullPathRef());

    a_colInfo.Refresh(parsedFile);
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_HL7Info::ReadHL7Info ( cmn_File a_file,
cfg_HL7Info a_hl7Info 
) [static, inherited]

Definition at line 113 of file cfg_hl7info.cpp.

References cmn_File::GetFullPathRef(), log_FUNC_m, pf_File::Parse(), and cfg_HL7Info::Refresh().

Referenced by i_PartitionManager_i::ReadHl7Info(), and cfg_HL7Info::WriteHL7Info().

                                                                      {
    log_FUNC_m(ReadHL7Info);

    pf_File parsedFile;
    parsedFile.Parse(a_file.GetFullPathRef());

    a_hl7Info.Refresh(parsedFile);
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_HL7Info::Refresh ( const pf_File a_parsedFile  )  [inherited]

Definition at line 55 of file cfg_hl7info.cpp.

References c_hl7Info(), cfg_Base::Convert(), cfg_Base::ConvertFileHeader(), dbg_LOW, ivd_BaseException::GetFriendly(), ie_PARSER_ERROR, ivd_Error, log_DBG_m, log_FUNC_m, pf_File::m_common, and cfg_Base::m_fileType.

Referenced by cfg_HL7Info::ReadHL7Info().

                                                     {
    log_FUNC_m(Refresh);

    try {
        ConvertFileHeader(a_parsedFile);
        if (m_fileType != c_hl7Info) {
            log_DBG_m(dbg_LOW, "Got wrong file type: " << m_fileType);
            throw ivd_Error(ie_PARSER_ERROR, "Unknown file type.");
        }

        val_RuleVec rules;
        Convert(a_parsedFile.m_common , rules);
    }
    catch(ivd_Exception& e) {
        log_DBG_m(dbg_LOW, "Error: " << e.GetFriendly());
        throw;
    }
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_CollocationInfo::Refresh ( const pf_File a_parsedFile  )  [inherited]

Definition at line 54 of file cfg_collocationInfo.cpp.

References c_collocationInfo(), cfg_Base::Convert(), cfg_Base::ConvertFileHeader(), dbg_LOW, ivd_BaseException::GetFriendly(), ie_PARSER_ERROR, ivd_Error, log_DBG_m, log_FUNC_m, pf_File::m_common, and cfg_Base::m_fileType.

Referenced by cfg_CollocationInfo::ReadCollocationInfo().

                                                             {
    log_FUNC_m(Refresh);

    try {
        ConvertFileHeader(a_parsedFile);
        if (m_fileType != c_collocationInfo) {
            log_DBG_m(dbg_LOW, "Got wrong file type: " << m_fileType);
            throw ivd_Error(ie_PARSER_ERROR, "Unknown file type.");
        }

        val_RuleVec rules;
        Convert(a_parsedFile.m_common , rules);
    }
    catch(ivd_Exception& e) {
        log_DBG_m(dbg_LOW, "Error: " << e.GetFriendly());
        throw;
    }
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_CollocationInfo::WriteCollocationInfo ( const cfg_DirCollocationInfo a_dirInfo,
const string  a_partName,
bool  a_force 
) [static, inherited]

Definition at line 119 of file cfg_collocationInfo.cpp.

References c_collocationFile(), cmn_File::CloseF(), cmn_CreatePathNoException(), cmn_Global::dirs, cmn_File::Exists(), file, g_cmn, cfg_CollocationInfo::GenerateCollocationInfoFile(), ie_MIF_CFG_ALREADY_CONFIGURED, ivd_Error, log_FUNC_m, cfg_DirCollocationInfo::m_colId, cfg_CollocationInfo::m_dirColInfo_v, cfg_DirCollocationInfo::m_directoryPath, ivd_Directories::part, cfg_CollocationInfo::ReadCollocationInfo(), and cfg_CollocationInfo::WriteGroupToFile().

                                                                                                                             {
    log_FUNC_m(WriteCollocationInfo);

    cmn_Path colInfoFilePath = g_cmn.dirs.part + a_partName + c_collocationDir;
    cmn_File file(colInfoFilePath + c_collocationFile);

    if (!file.Exists()) {
        cmn_CreatePathNoException(colInfoFilePath);
        GenerateCollocationInfoFile(file);
        WriteGroupToFile(file, a_dirInfo);
    }
    else {
        cfg_CollocationInfo colInfo;
        ReadCollocationInfo(file, colInfo);
        for (UInt32_t i(0); i < colInfo.m_dirColInfo_v.size(); i++) {
            if (colInfo.m_dirColInfo_v[i].m_directoryPath.compare(a_dirInfo.m_directoryPath) == 0 ) {
                if (colInfo.m_dirColInfo_v[i].m_colId == a_dirInfo.m_colId) {
                    // information already exists
                    return;
                }
                else {
                    if (a_force) {
                        colInfo.m_dirColInfo_v.erase(colInfo.m_dirColInfo_v.begin() + i);
                    }
                    else {
                        throw ivd_Error(ie_MIF_CFG_ALREADY_CONFIGURED, "Collocation information already configured.");
                    }
                }
            }
        }
        file.CloseF();
        colInfo.m_dirColInfo_v.push_back(a_dirInfo);
        GenerateCollocationInfoFile(file);
        for (UInt32_t i(0); i < colInfo.m_dirColInfo_v.size(); i++) {
            WriteGroupToFile(file, colInfo.m_dirColInfo_v[i]);
        }
    }
}

Here is the call graph for this function:

void cfg_HL7Info::WriteGroupToFile ( cmn_File a_file,
const cfg_DirHL7Info a_dirInfo 
) [static, private, inherited]

Definition at line 101 of file cfg_hl7info.cpp.

References c_dirHL7Info(), c_hostname(), c_path(), c_port(), cmn_File::CloseF(), cmn_Num2Str(), fom_APPEND, log_FUNC_m, cfg_DirHL7Info::m_directoryPath, cfg_DirHL7Info::m_hostname, cfg_DirHL7Info::m_port, cmn_File::OpenF(), and cmn_File::WriteF().

Referenced by cfg_HL7Info::WriteHL7Info().

                                                                                    {
    log_FUNC_m(WriteGroupToFile);
    a_file.OpenF(fom_APPEND);

    string fileContent = c_dirHL7Info + " \"" + a_dirInfo.m_hostname + "\"\n{\n"
                       + c_hostname + " = \"" + a_dirInfo.m_hostname + "\"\n"
                       + c_port + " = \"" + cmn_Num2Str(a_dirInfo.m_port) + "\"\n"
                       + c_path + " = \"" + a_dirInfo.m_directoryPath + "\"\n}\n\n";
    a_file.WriteF(fileContent.c_str(), ivd_FileBufSize_t(fileContent.length()));
    a_file.CloseF();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_CollocationInfo::WriteGroupToFile ( cmn_File a_file,
const cfg_DirCollocationInfo a_dirInfo 
) [static, private, inherited]

Definition at line 100 of file cfg_collocationInfo.cpp.

References c_collocationId(), c_dirCollocationInfo(), c_path(), cmn_File::CloseF(), cmn_Num2Str(), fom_APPEND, log_FUNC_m, cfg_DirCollocationInfo::m_colId, cfg_DirCollocationInfo::m_directoryPath, cmn_File::OpenF(), and cmn_File::WriteF().

Referenced by cfg_CollocationInfo::WriteCollocationInfo().

                                                                                                    {
    log_FUNC_m(WriteGroupToFile);
    a_file.OpenF(fom_APPEND);
    string fileContent = c_dirCollocationInfo + " \"" + cmn_Num2Str(a_dirInfo.m_colId) + "\"\n{\n"
                     + c_collocationId + " = " + cmn_Num2Str(a_dirInfo.m_colId) + "\n"
                     + c_path + " = \"" + a_dirInfo.m_directoryPath + "\"\n}\n\n";
    a_file.WriteF(fileContent.c_str(), ivd_FileBufSize_t(fileContent.length()));
    a_file.CloseF();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void cfg_HL7Info::WriteHL7Info ( const cfg_DirHL7Info a_dirInfo,
const string  a_partName,
bool  a_force 
) [static, inherited]

Definition at line 122 of file cfg_hl7info.cpp.

References c_hl7File(), cmn_File::CloseF(), cmn_CreatePathNoException(), cmn_Global::dirs, cmn_File::Exists(), file, g_cmn, cfg_HL7Info::GenerateHL7InfoFile(), ie_MIF_CFG_ALREADY_CONFIGURED, ivd_Error, log_FUNC_m, cfg_DirHL7Info::m_directoryPath, cfg_HL7Info::m_dirHL7Info_v, cfg_DirHL7Info::m_hostname, cfg_DirHL7Info::m_port, ivd_Directories::part, cfg_HL7Info::ReadHL7Info(), and cfg_HL7Info::WriteGroupToFile().

Referenced by i_PartitionManager_i::WriteHl7Info().

                                                                                                     {
    log_FUNC_m(WriteHL7Info);

    cmn_Path hl7InfoFilePath = g_cmn.dirs.part + a_partName + c_hl7Dir;
    cmn_File file(hl7InfoFilePath + c_hl7File);

    if (!file.Exists()) {
        cmn_CreatePathNoException(hl7InfoFilePath);
        GenerateHL7InfoFile(file);
        WriteGroupToFile(file, a_dirInfo);
    }
    else {
        cfg_HL7Info hl7Info;
        ReadHL7Info(file, hl7Info);
        for (UInt32_t i(0); i < hl7Info.m_dirHL7Info_v.size(); i++) {
            if (hl7Info.m_dirHL7Info_v[i].m_directoryPath.compare(a_dirInfo.m_directoryPath) == 0 ) {
                if (   (hl7Info.m_dirHL7Info_v[i].m_port == a_dirInfo.m_port)
                    && (hl7Info.m_dirHL7Info_v[i].m_hostname.compare(a_dirInfo.m_hostname) == 0)) {
                    // information already exists
                    return;
                }
                else {
                    if (a_force) {
                        hl7Info.m_dirHL7Info_v.erase(hl7Info.m_dirHL7Info_v.begin() + i);
                    }
                    else {
                        throw ivd_Error(ie_MIF_CFG_ALREADY_CONFIGURED, "HL7 information already configured.");
                    }

                }
            }
        }
        file.CloseF();
        hl7Info.m_dirHL7Info_v.push_back(a_dirInfo);
        GenerateHL7InfoFile(file);
        for (UInt32_t i(0); i < hl7Info.m_dirHL7Info_v.size(); i++) {
            WriteGroupToFile(file, hl7Info.m_dirHL7Info_v[i]);
        }
    }
}

Here is the call graph for this function:

Here is the caller graph for this function:

virtual cfg_CollocationInfo::~cfg_CollocationInfo (  )  [inline, virtual, inherited]

Definition at line 60 of file cfg_collocationInfo.h.

{};

virtual cfg_DirCollocationInfo::~cfg_DirCollocationInfo (  )  [inline, virtual, inherited]

Definition at line 45 of file cfg_collocationInfo.h.

{};

virtual cfg_DirHL7Info::~cfg_DirHL7Info (  )  [inline, virtual, inherited]

Definition at line 47 of file cfg_hl7info.h.

{};

virtual cfg_HL7Info::~cfg_HL7Info (  )  [inline, virtual, inherited]

Definition at line 63 of file cfg_hl7info.h.

{};


Variable Documentation

Definition at line 56 of file ap.cpp.

Referenced by operator<<(), and cfg_CliBase::Refresh().

const char* const ap_valArg0Name

Definition at line 54 of file ap.cpp.

Referenced by cfg_CliBase::cfg_CliBase(), and ap_Argument::Parse().

const char* const ap_valCmdName

Definition at line 53 of file ap.cpp.

Referenced by cfg_CliBase::cfg_CliBase(), and ap_Argument::GroupDump().

IVD_PARSER_DECL_d const ap_Argument ivd_fsc

Definition at line 730 of file cfg_cliarg.cpp.

Referenced by main().

IVD_PARSER_DECL_d const ap_Argument ivd_hsm

Definition at line 770 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdArch
IVD_PARSER_DECL_d const ap_Argument ivdCheck

Definition at line 362 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdDD

Definition at line 803 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdfile

Definition at line 1005 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdJob

Definition at line 395 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdMedium

Definition at line 567 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdPartition

Definition at line 649 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdPool

Definition at line 459 of file cfg_cliarg.cpp.

IVD_PARSER_DECL_d const ap_Argument ivdRecover

Definition at line 334 of file cfg_cliarg.cpp.

cfg_HL7Info::log_CLASSID_m [private, inherited]

Reimplemented from cfg_Base.

Definition at line 75 of file cfg_hl7info.h.

cfg_CollocationInfo::log_CLASSID_m [private, inherited]

Reimplemented from cfg_Base.

Definition at line 72 of file cfg_collocationInfo.h.

Reimplemented from cfg_Base.

Definition at line 52 of file cfg_collocationInfo.h.

cfg_DirHL7Info::log_CLASSID_m [private, inherited]

Reimplemented from cfg_Base.

Definition at line 55 of file cfg_hl7info.h.

string cfg_DirHL7Info::m_directoryPath [inherited]
string cfg_DirHL7Info::m_hostname [inherited]
string cfg_DirHL7Info::m_name [inherited]

Definition at line 47 of file cfg_hl7info.h.

Referenced by cfg_DirHL7Info::Init().

string cfg_DirCollocationInfo::m_name [inherited]

Definition at line 45 of file cfg_collocationInfo.h.

Referenced by cfg_DirCollocationInfo::Init().

const char* const pf_FileTypeVarName_s

Referenced by yyparse().