23 lines
643 B
Python
23 lines
643 B
Python
from pathlib import Path
|
|
from lxml import etree
|
|
from functools import cached_property
|
|
from arguments import ArgumentsParser
|
|
|
|
|
|
class Config:
|
|
def __init__(self, basepath: Path) -> None:
|
|
self.basepath = basepath
|
|
self.config = ArgumentsParser().parser.config
|
|
|
|
@cached_property
|
|
def root(self) -> etree.ElementTree:
|
|
return etree.parse(self.basepath / self.config)
|
|
|
|
@cached_property
|
|
def app_root(self) -> etree.Element:
|
|
return self.root.xpath('/cpuGovernorAutoAdjust').pop()
|
|
|
|
@cached_property
|
|
def loglevel(self) -> str:
|
|
return self.app_root.xpath('logLevel').pop().text
|