# -*- coding: utf-8 -*- from enum import Enum from Model.Except import NotImplementedMethodeError class STATUS(Enum): UNKNOWN = -1 OK = 0 WARNING = 1 ERROR = 2 class AbstractModelChecker(object): def __init__(self): self._name = "" self._description = "" self._status = STATUS.UNKNOWN self._summary = "Unknown" @property def name(self): return self._name @property def description(self): return self._description @property def summary(self): return self._summary # Checker status def is_unknown(self): return self._status == STATUS.UNKNOWN def is_ok(self): return self._status == STATUS.OK def is_warning(self): return self._status == STATUS.WARNING def is_error(self): return self._status == STATUS.ERROR # Abstract function def run(self, study): """Run checker function Args: study: The study to check Returns: Return true if study is valid for this checker, false otherelse """ raise NotImplementedMethodeError(self, self.run)