Coverage for watcher/decision_engine/model/notification/base.py: 100%
9 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# Copyright (c) 2016 b<>com
3#
4# Authors: Vincent FRANCOISE <Vincent.FRANCOISE@b-com.com>
5#
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15# implied.
16# See the License for the specific language governing permissions and
17# limitations under the License.
19import abc
22class NotificationEndpoint(object, metaclass=abc.ABCMeta):
24 def __init__(self, collector):
25 super(NotificationEndpoint, self).__init__()
26 self.collector = collector
27 self._notifier = None
29 @property
30 @abc.abstractmethod
31 def filter_rule(self):
32 """Notification Filter"""
33 raise NotImplementedError()
35 @property
36 def cluster_data_model(self):
37 return self.collector.cluster_data_model