def on_post(self, req, res): helpers.validate_authorization(req, self._default_authorized_roles) alarm_definition = helpers.read_json_msg_body(req) self._validate_alarm_definition(alarm_definition) tenant_id = helpers.get_tenant_id(req) name = get_query_alarm_definition_name(alarm_definition) expression = get_query_alarm_definition_expression(alarm_definition) description = get_query_alarm_definition_description(alarm_definition) severity = get_query_alarm_definition_severity(alarm_definition) match_by = get_query_alarm_definition_match_by(alarm_definition) alarm_actions = get_query_alarm_definition_alarm_actions( alarm_definition) undetermined_actions = get_query_alarm_definition_undetermined_actions( alarm_definition) ok_actions = get_query_ok_actions(alarm_definition) result = self._alarm_definition_create(tenant_id, name, expression, description, severity, match_by, alarm_actions, undetermined_actions, ok_actions) helpers.add_links_to_resource(result, req.uri) res.body = helpers.dumpit_utf8(result) res.status = falcon.HTTP_201
def on_put(self, req, res, alarm_definition_id): helpers.validate_authorization(req, self._default_authorized_roles) alarm_definition = helpers.read_json_msg_body(req) self._validate_alarm_definition(alarm_definition) tenant_id = helpers.get_tenant_id(req) # Mandatory positional args name = get_query_alarm_definition_name(alarm_definition) expression = get_query_alarm_definition_expression(alarm_definition) actions_enabled = ( get_query_alarm_definition_actions_enabled(alarm_definition, required=True)) # Validator makes actions_enabled optional. So, check it here. if not actions_enabled: raise falcon.HTTPBadRequest('Bad request', 'Missing ' 'actions_enabled') # Optional args description = get_query_alarm_definition_description(alarm_definition, return_none=True) alarm_actions = get_query_alarm_definition_alarm_actions( alarm_definition, return_none=True) ok_actions = get_query_ok_actions(alarm_definition, return_none=True) undetermined_actions = get_query_alarm_definition_undetermined_actions( alarm_definition, return_none=True) match_by = get_query_alarm_definition_match_by(alarm_definition, return_none=True) severity = get_query_alarm_definition_severity(alarm_definition, return_none=True) result = self._alarm_definition_update_or_patch(tenant_id, alarm_definition_id, name, expression, actions_enabled, description, alarm_actions, ok_actions, undetermined_actions, match_by, severity, patch=False) helpers.add_links_to_resource(result, req.uri) res.body = helpers.dumpit_utf8(result) res.status = falcon.HTTP_200
def on_patch(self, req, res, alarm_definition_id): helpers.validate_authorization(req, self._default_authorized_roles) alarm_definition = helpers.read_json_msg_body(req) tenant_id = helpers.get_tenant_id(req) # Optional args name = get_query_alarm_definition_name(alarm_definition, return_none=True) expression = get_query_alarm_definition_expression(alarm_definition, return_none=True) actions_enabled = ( get_query_alarm_definition_actions_enabled(alarm_definition, return_none=True)) description = get_query_alarm_definition_description(alarm_definition, return_none=True) alarm_actions = get_query_alarm_definition_alarm_actions( alarm_definition, return_none=True) ok_actions = get_query_ok_actions(alarm_definition, return_none=True) undetermined_actions = get_query_alarm_definition_undetermined_actions( alarm_definition, return_none=True) match_by = get_query_alarm_definition_match_by(alarm_definition, return_none=True) severity = get_query_alarm_definition_severity(alarm_definition, return_none=True) result = self._alarm_definition_update_or_patch(tenant_id, alarm_definition_id, name, expression, actions_enabled, description, alarm_actions, ok_actions, undetermined_actions, match_by, severity, patch=True) helpers.add_links_to_resource(result, req.uri) res.body = helpers.dumpit_utf8(result) res.status = falcon.HTTP_200
def on_put(self, req, res, alarm_definition_id): helpers.validate_authorization(req, self._default_authorized_roles) alarm_definition = helpers.read_json_msg_body(req) self._validate_alarm_definition(alarm_definition, require_all=True) name = get_query_alarm_definition_name(alarm_definition) expression = get_query_alarm_definition_expression(alarm_definition) actions_enabled = ( get_query_alarm_definition_actions_enabled(alarm_definition)) description = get_query_alarm_definition_description(alarm_definition) alarm_actions = get_query_alarm_definition_alarm_actions( alarm_definition) ok_actions = get_query_ok_actions(alarm_definition) undetermined_actions = get_query_alarm_definition_undetermined_actions( alarm_definition) match_by = get_query_alarm_definition_match_by(alarm_definition) severity = get_query_alarm_definition_severity(alarm_definition) result = self._alarm_definition_update_or_patch(req.project_id, alarm_definition_id, name, expression, actions_enabled, description, alarm_actions, ok_actions, undetermined_actions, match_by, severity, patch=False) helpers.add_links_to_resource(result, req.uri) res.body = helpers.dumpit_utf8(result) res.status = falcon.HTTP_200
def on_put(self, req, res, alarm_definition_id): helpers.validate_authorization(req, self._default_authorized_roles) alarm_definition = helpers.read_json_msg_body(req) self._validate_alarm_definition(alarm_definition, require_all=True) name = get_query_alarm_definition_name(alarm_definition) expression = get_query_alarm_definition_expression(alarm_definition) actions_enabled = ( get_query_alarm_definition_actions_enabled(alarm_definition)) description = get_query_alarm_definition_description(alarm_definition) alarm_actions = get_query_alarm_definition_alarm_actions(alarm_definition) ok_actions = get_query_ok_actions(alarm_definition) undetermined_actions = get_query_alarm_definition_undetermined_actions( alarm_definition) match_by = get_query_alarm_definition_match_by(alarm_definition) severity = get_query_alarm_definition_severity(alarm_definition) result = self._alarm_definition_update_or_patch(req.project_id, alarm_definition_id, name, expression, actions_enabled, description, alarm_actions, ok_actions, undetermined_actions, match_by, severity, patch=False) helpers.add_links_to_resource(result, req.uri) res.body = helpers.dumpit_utf8(result) res.status = falcon.HTTP_200