Beispiel #1
0
class RevisorKickstart:
    def __init__(self, cfg=None):
        self.cfg = cfg

    def create_parser(self):
        self.handler = makeVersion()
        self.parser = KickstartParser(self.handler)

    def read_file(self, url):
        if not hasattr(self, "parser"):
            self.create_parser()
        self.parser.readKickstart(url)

    def _reset(self):
        self.parser._reset()

    def __str__(self):
        return "%s" % self.handler.__str__()

    def _get(self, item=None, val=None):
        if not item == None:
            if hasattr(self.handler, item):
                if not val is None:
                    if hasattr(getattr(self.handler, item), val):
                        return getattr(getattr(self.handler, item), val)
                    elif isinstance(getattr(self.handler, item), dict):
                        return getattr(self.handler, item)[val]
                    else:
                        return None
                else:
                    return getattr(self.handler, item)
            elif hasattr(self.handler, val):
                return getattr(self.handler, val)
        else:
            return self.handler