Coverage for watcher/common/service_manager.py: 100%
2 statements
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-17 12:22 +0000
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-17 12:22 +0000
1# -*- encoding: utf-8 -*-
2#
3# Copyright © 2016 Servionica
4##
5# Licensed under the Apache License, Version 2.0 (the "License"); you may
6# not use this file except in compliance with the License. You may obtain
7# a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14# License for the specific language governing permissions and limitations
15# under the License.
17import abc
20class ServiceManager(object, metaclass=abc.ABCMeta):
22 @property
23 @abc.abstractmethod
24 def service_name(self):
25 raise NotImplementedError()
27 @property
28 @abc.abstractmethod
29 def api_version(self):
30 raise NotImplementedError()
32 @property
33 @abc.abstractmethod
34 def publisher_id(self):
35 raise NotImplementedError()
37 @property
38 @abc.abstractmethod
39 def conductor_topic(self):
40 raise NotImplementedError()
42 @property
43 @abc.abstractmethod
44 def notification_topics(self):
45 raise NotImplementedError()
47 @property
48 @abc.abstractmethod
49 def conductor_endpoints(self):
50 raise NotImplementedError()
52 @property
53 @abc.abstractmethod
54 def notification_endpoints(self):
55 raise NotImplementedError()