Package linspector :: Package lib :: Package services :: Module service
[hide private]
[frames] | no frames]

Source Code for Module linspector.lib.services.service

  1   
  2  KEY_PARSER    = "parser" 
  3  KEY_COMMENT   = "comment" 
  4  KEY_THRESHOLD = "threshold" 
  5  KEY_FAILS     = "fails" 
  6  KEY_PERIODS   = "periods" 
  7  KEY_ARGS      = "args" 
  8   
  9   
10 -class Service:
11 - def __init__(self, **kwargs):
12 13 self._args = {} 14 if KEY_ARGS in kwargs: 15 self.add_arguments(kwargs[KEY_ARGS]) 16 elif self.needs_arguments(): 17 raise Exception("Error: needs arguments but none provided!") 18 19 self._host = None 20 21 self._parser = [] 22 if KEY_PARSER in kwargs: 23 self.add_parser(kwargs[KEY_PARSER]) 24 25 self._comment = None 26 if KEY_COMMENT in kwargs: 27 self._comment = kwargs[KEY_COMMENT] 28 29 self._threshold = 0 30 if KEY_THRESHOLD in kwargs: 31 self._threshold = kwargs[KEY_THRESHOLD] 32 33 self._fails = {} 34 if KEY_FAILS in kwargs: 35 self.put_fails(kwargs[KEY_FAILS]) 36 37 self._periods = [] 38 if KEY_PERIODS in kwargs: 39 self.addPeriods(kwargs[KEY_PERIODS]) 40 41 self.errorcode = 0 42 self.errormessage = "No Error!"
43
44 - def add_arguments(self, args):
45 for key, val in args.items(): 46 self._args[key] = val
47
48 - def add_argument(self, key, value):
49 self._args[key] = value
50
51 - def get_arguments(self):
52 return self._args
53
54 - def add_period(self, period):
55 if period is not None: 56 if isinstance(period, list): 57 self._periods.extend(period) 58 else: 59 self._periods.append(period)
60
61 - def get_periods(self):
62 return self._periods
63
64 - def get_fails(self):
65 return self._fails
66
67 - def has_fail(self, fail):
68 return fail in self.get_fails()
69
70 - def put_fail(self, key, value):
71 self._fails[key] = value
72
73 - def put_fails(self, fails):
74 for key, value in fails.items(): 75 self.put_fail(key, value)
76
77 - def get_threshold(self):
78 return self._threshold
79
80 - def get_comment(self):
81 return self._comment
82
83 - def set_host(self, host):
84 self._host = host
85
86 - def get_host(self):
87 return self._host
88
89 - def get_parser(self):
90 return self._parser
91
92 - def add_parser(self, parser):
93 if parser is not None: 94 if isinstance(parser, list): 95 self._parser.extend(parser) 96 else: 97 self._parser.append(parser)
98
99 - def needs_arguments(self):
100 return False
101
102 - def _execute(self):
103 self.pre_execute() 104 executionResult = self.execute() 105 parseResult = self.parse_result(executionResult) 106 self.handle_result(parseResult)
107
108 - def execute(self):
109 pass
110
111 - def pre_execute(self):
112 pass
113
114 - def parse_result(self, executionResult):
115 result = [] 116 for parser in self.get_parser(): 117 result.append(self._parser._parse(executionResult))
118
119 - def handle_result(self, parseResult):
120 pass
121