clearer names for actions, and infer actions better
[monitor.git] / nagios / nagiosobjects.py
1
2 class NagiosObject(object):
3         trans = {'d2_coords': '2d_coords'}
4
5         def __init__(self, id, **kwargs):
6                 self.id = id
7                 self.kwords = kwargs.keys()
8                 for key in self.kwords:
9                         self.__setattr__(key, kwargs[key])
10
11         def toString(self):
12                 ret = ""
13                 ret += "define %s {\n" % self.id
14                 for key in self.kwords:
15                         if key in self.trans:
16                                 ret += "    %s   %s\n" % (self.trans[key], self.__getattribute__(key))
17                         else:
18                                 ret += "    %s   %s\n" % (key, self.__getattribute__(key))
19                 ret += "}\n"
20                 return ret
21
22 class Command(NagiosObject):
23         def __init__(self, **kwargs):   
24                 NagiosObject.__init__(self, "command", **kwargs)
25
26 class Host(NagiosObject):
27         def __init__(self, **kwargs):   
28                 NagiosObject.__init__(self, "host", **kwargs)
29
30 class HostGroup(NagiosObject):
31         def __init__(self, **kwargs):   
32                 NagiosObject.__init__(self, "hostgroup", **kwargs)
33
34 class HostEscalation(NagiosObject):
35         def __init__(self, **kwargs):   
36                 NagiosObject.__init__(self, "hostescalation", **kwargs)
37
38 class Contact(NagiosObject):
39         def __init__(self, **kwargs):   
40                 NagiosObject.__init__(self, "contact", **kwargs)
41
42 class ContactGroup(NagiosObject):
43         def __init__(self, **kwargs):   
44                 NagiosObject.__init__(self, "contactgroup", **kwargs)
45
46 class Service(NagiosObject):
47         def __init__(self, **kwargs):   
48                 NagiosObject.__init__(self, "service", **kwargs)
49
50 class ServiceDependency(NagiosObject):
51         def __init__(self, **kwargs):   
52                 NagiosObject.__init__(self, "servicedependency", **kwargs)
53
54 class ServiceEscalation(NagiosObject):
55         def __init__(self, **kwargs):   
56                 NagiosObject.__init__(self, "serviceescalation", **kwargs)
57
58 class ServiceGroup(NagiosObject):
59         def __init__(self, **kwargs):   
60                 NagiosObject.__init__(self, "servicegroup", **kwargs)