|
| def | __init__ (self, ConfigType configType, str mainkey, str filename="", str jsonString="", str dbalias="", int dbkey=0, bool useCrest=False, str crestServer="") |
| |
| None | load (self) |
| |
| def | __str__ (self) |
| |
| def | __iter__ (self) |
| |
| def | __getitem__ (self, item) |
| |
| def | __len__ (self) |
| |
| def | config (self) |
| |
| def | prettyPrint (self) |
| |
| def | name (self) |
| |
| def | filetype (self) |
| |
| def | printSummary (self) |
| |
| def | writeFile (self, str|None filename=None) |
| |
base class to hold the configuration (dict)
and provides basic functions to access and print
Definition at line 419 of file TriggerConfigAccessBase.py.
◆ __init__()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.__init__ |
( |
|
self, |
|
|
ConfigType |
configType, |
|
|
str |
mainkey, |
|
|
str |
filename = "", |
|
|
str |
jsonString = "", |
|
|
str |
dbalias = "", |
|
|
int |
dbkey = 0, |
|
|
bool |
useCrest = False, |
|
|
str |
crestServer = "" |
|
) |
| |
Definition at line 424 of file TriggerConfigAccessBase.py.
424 def __init__(self, configType: ConfigType, mainkey: str, filename: str =
"", jsonString: str =
"",
425 dbalias: str =
"", dbkey: int = 0, useCrest: bool =
False, crestServer: str =
""):
426 self.loader: ConfigLoader = TriggerConfigAccess._getLoader(configType = configType, filename = filename, jsonString = jsonString, dbalias = dbalias, dbkey = dbkey,
427 useCrest=useCrest, crestServer=crestServer)
428 self._mainkey = mainkey
◆ __getitem__()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.__getitem__ |
( |
|
self, |
|
|
|
item |
|
) |
| |
◆ __iter__()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.__iter__ |
( |
|
self | ) |
|
◆ __len__()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.__len__ |
( |
|
self | ) |
|
◆ __str__()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.__str__ |
( |
|
self | ) |
|
◆ _getLoader()
| ConfigLoader python.TriggerConfigAccessBase.TriggerConfigAccess._getLoader |
( |
* |
configType, |
|
|
str |
filename = "", |
|
|
str |
jsonString = "", |
|
|
str |
dbalias = "", |
|
|
int |
dbkey = 0, |
|
|
bool |
useCrest = False, |
|
|
str |
crestServer = "" |
|
) |
| |
|
staticprivate |
Definition at line 455 of file TriggerConfigAccessBase.py.
455 def _getLoader(*, configType, filename: str =
"", jsonString: str =
"", dbalias: str =
"", dbkey: int = 0,
456 useCrest: bool =
False, crestServer: str =
"") -> ConfigLoader:
459 return ConfigFileLoader(configType, filename )
460 elif dbalias
and dbkey>0:
461 if (connParams := TriggerConfigAccess._isCrestConnection(dbalias, useCrest, crestServer)):
462 return ConfigCrestLoader(configType=configType, dbname=connParams[
"dbname"], dbkey=dbkey, crestServer=connParams[
"crest_server"])
464 return ConfigDBLoader(configType, dbalias, dbkey)
466 return ConfigDirectLoader(configType, jsonString )
468 raise RuntimeError(
"Neither input file, nor JSON nor db alias and key provided")
◆ _isCrestConnection()
| dict[str, str] python.TriggerConfigAccessBase.TriggerConfigAccess._isCrestConnection |
( |
str |
dbalias, |
|
|
bool |
useCrest, |
|
|
str |
crestServer |
|
) |
| |
|
staticprivate |
Determine whether the connection is a CREST connection
Definition at line 432 of file TriggerConfigAccessBase.py.
432 def _isCrestConnection(dbalias: str, useCrest: bool, crestServer: str) -> dict[str, str]:
433 """ Determine whether the connection is a CREST connection
435 connParams: dict[str, str] = {}
436 if dbalias.startswith(
"http://")
or dbalias.startswith(
"https://"):
438 if (match := re.match(
r'^(http[s]?://[^/]+/api-v\d+\.\d+)/(.+)$', dbalias)):
439 connParams[
"crest_server"] = match.group(1)
440 connParams[
"dbname"] = match.group(2)
442 raise RuntimeError(f
"Invalid CREST connection string: {dbalias}")
443 elif dbalias
in TriggerCrestUtil.allCrestConnections():
444 connParams[
"crest_server"] = crestServer
445 connParams[
"dbname"] = dbalias
447 connParams[
"crest_server"] = crestServer
448 if (dbname := TriggerCrestUtil.getCrestConnection(dbalias))
is not None:
449 connParams[
"dbname"] = dbname
451 raise RuntimeError(f
"Cannot resolve CREST connection '{dbalias}'")
◆ config()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.config |
( |
|
self | ) |
|
◆ filetype()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.filetype |
( |
|
self | ) |
|
◆ load()
| None python.TriggerConfigAccessBase.TriggerConfigAccess.load |
( |
|
self | ) |
|
◆ name()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.name |
( |
|
self | ) |
|
◆ prettyPrint()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.prettyPrint |
( |
|
self | ) |
|
◆ printSummary()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.printSummary |
( |
|
self | ) |
|
print summary info, should be overwritten by derived classes
Definition at line 499 of file TriggerConfigAccessBase.py.
499 def printSummary(self):
500 """ print summary info, should be overwritten by derived classes """
501 log.info(
"Configuration name: {0}".
format(self.name()))
502 log.info(
"Configuration size: {0}".
format(len(self)))
◆ writeFile()
| def python.TriggerConfigAccessBase.TriggerConfigAccess.writeFile |
( |
|
self, |
|
|
str | None |
filename = None |
|
) |
| |
Definition at line 504 of file TriggerConfigAccessBase.py.
504 def writeFile(self, filename: str |
None =
None):
506 filename = self.loader.getWriteFilename()
507 with open(filename,
'w')
as fh:
508 json.dump(self.config(), fh, indent = 4, separators=(
',',
': '))
509 log.info(
"Wrote file %s", filename)
◆ _config
| python.TriggerConfigAccessBase.TriggerConfigAccess._config |
|
private |
◆ _mainkey
| python.TriggerConfigAccessBase.TriggerConfigAccess._mainkey |
|
private |
The documentation for this class was generated from the following file: