# Path: monasca_notification/common/utils.py
# LOG = log.getLogger(__name__)
# CONF = cfg.CONF
# NOTIFICATION_DIMENSIONS = {'service': 'monitoring',
#                            'component': 'monasca-notification'}
# def get_db_repo():
# def construct_notification_object(db_repo, notification_json):
# def grab_stored_notification_method(db_repo, notification_id):
# def get_statsd_client(dimensions=None):
#     def _set_connection(self, connection, host, port):
#     def __init__(self, host='localhost', port=8125, max_buffer_size=50):
#     def connect(self, host, port):
#     def _send_to_server(self, packet):
# def get_keystone_session():
# def get_auth_token():
# class OfflineClient(monascastatsd.Client):
# class OfflineConnection(monascastatsd.Connection):
# 
# Path: monasca_notification/plugins/abstract_notifier.py
# class AbstractNotifier(object, metaclass=abc.ABCMeta):
#     def __init__(self):
#     def statsd_name(self):
#     def config(self, config):
#     def send_notification(self, notification):


import requests
import simplejson as json
from debtcollector import removals
from oslo_config import cfg
from monasca_notification.common import utils
from monasca_notification.plugins import abstract_notifier
# 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.




CONF = cfg.CONF


class WebhookNotifier(abstract_notifier.AbstractNotifier):

    type = 'webhook'

    def __init__(self, log):
        super(WebhookNotifier, self).__init__()
        self._log = log

    @removals.remove(
        message='Configuration of notifier is available through oslo.cfg',
        version='1.9.0',
        removal_version='3.0.0'
    )
    def config(self, config_dict):
        pass

    @property
    def statsd_name(self):

# Path: monasca_notification/common/utils.py
# LOG = log.getLogger(__name__)
# CONF = cfg.CONF
# NOTIFICATION_DIMENSIONS = {'service': 'monitoring',
#                            'component': 'monasca-notification'}
# def get_db_repo():
# def construct_notification_object(db_repo, notification_json):
# def grab_stored_notification_method(db_repo, notification_id):
# def get_statsd_client(dimensions=None):
#     def _set_connection(self, connection, host, port):
#     def __init__(self, host='localhost', port=8125, max_buffer_size=50):
#     def connect(self, host, port):
#     def _send_to_server(self, packet):
# def get_keystone_session():
# def get_auth_token():
# class OfflineClient(monascastatsd.Client):
# class OfflineConnection(monascastatsd.Connection):
# 
# Path: monasca_notification/plugins/abstract_notifier.py
# class AbstractNotifier(object, metaclass=abc.ABCMeta):
#     def __init__(self):
#     def statsd_name(self):
#     def config(self, config):
#     def send_notification(self, notification):


# Path: monasca_notification/plugins/webhook_notifier.py
import requests
import simplejson as json
from debtcollector import removals
from oslo_config import cfg
from monasca_notification.common import utils
from monasca_notification.plugins import abstract_notifier

# 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.




CONF = cfg.CONF


class WebhookNotifier(abstract_notifier.AbstractNotifier):

    type = 'webhook'

    def __init__(self, log):
        super(WebhookNotifier, self).__init__()
        self._log = log

    @removals.remove(
        message='Configuration of notifier is available through oslo.cfg',
        version='1.9.0',
        removal_version='3.0.0'
    )
    def config(self, config_dict):
        pass

    @property
    def statsd_name(self):

        return 'sent_webhook_count'