64 lines
2.8 KiB
Python
64 lines
2.8 KiB
Python
# Copyright 2014-2015 - Savoir-Faire Linux inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
from surveilclient.common import surveil_manager
|
|
from surveilclient.v2_0.config import businessimpactmodulations
|
|
from surveilclient.v2_0.config import checkmodulations
|
|
from surveilclient.v2_0.config import commands
|
|
from surveilclient.v2_0.config import contactgroups
|
|
from surveilclient.v2_0.config import contacts
|
|
from surveilclient.v2_0.config import hostgroups
|
|
from surveilclient.v2_0.config import hosts
|
|
from surveilclient.v2_0.config import macromodulations
|
|
from surveilclient.v2_0.config import notificationways
|
|
from surveilclient.v2_0.config import realms
|
|
from surveilclient.v2_0.config import servicegroups
|
|
from surveilclient.v2_0.config import services
|
|
from surveilclient.v2_0.config import timeperiods
|
|
|
|
|
|
class ConfigManager(surveil_manager.SurveilManager):
|
|
base_url = '/config'
|
|
|
|
def __init__(self, http_client):
|
|
super(ConfigManager, self).__init__(http_client)
|
|
self.businessimpactmodulations = (businessimpactmodulations.
|
|
BusinessImpactModulationsManager(
|
|
self.http_client))
|
|
self.checkmodulations = checkmodulations.CheckModulationsManager(
|
|
self.http_client)
|
|
self.commands = commands.CommandsManager(self.http_client)
|
|
self.contacts = contacts.ContactsManager(self.http_client)
|
|
self.contactgroups = contactgroups.ContactGroupsManager(
|
|
self.http_client)
|
|
self.hosts = hosts.HostsManager(self.http_client)
|
|
self.hostgroups = hostgroups.HostGroupsManager(self.http_client)
|
|
self.macromodulations = macromodulations.MacroModulationsManager(
|
|
self.http_client)
|
|
self.notificationways = notificationways.NotificationWaysManager(
|
|
self.http_client)
|
|
self.realms = realms.RealmsManager(self.http_client)
|
|
self.services = services.ServicesManager(self.http_client)
|
|
self.servicegroups = servicegroups.ServiceGroupsManager(
|
|
self.http_client)
|
|
self.timeperiods = timeperiods.TimePeriodsManager(self.http_client)
|
|
|
|
def reload_config(self):
|
|
resp, body = self.http_client.json_request(
|
|
self.base_url + '/reload_config',
|
|
'POST',
|
|
data='' # Must send empty body
|
|
)
|
|
return body
|