def resolve_and_validate(self): '''Resolve and validate the evaluatable''' self.src_name = self.ruleset.name try: # OK to set Rule to None, since not using any of the support the requires resolve_and_validate_rule_values(self, self.ruleset, None, GEHD_HANDLER_ALERT, rule_part=GRUL_PART_ACTION) except XMLParsingError as e: self.ruleset.parse_error(self.trace_id[0], '\'on_error\' element {0}'.format(e.msg)) self.trace_id = (self.trace_id[0], self.trace_id[1] + '-' + self.type.get_value()) # Process init class if self.init_class.is_set() == False: self.init_class_callable = self.ruleset['gear_control'][GCTL_DEFAULT_CREATE_ALERT_INIT_CLASS] else: try: module_name, class_name = self.init_class.get_value().rsplit('.', 1) module = __import__(module_name, globals(), locals(), [class_name]) except ImportError, ie: get_logger().error(ie) self.ruleset.parse_error(self.trace_id[0], 'gear create alert unable to load specified init class: {0}'.format(self.init_class)) raise ie self.init_class_callable = getattr(module, class_name) tmp_instance = self.init_class_callable() if isinstance(tmp_instance, ExtInitAlert) == False:
def resolve_and_validate(self, rule): '''Resolve and validate the evaluatable''' try: resolve_and_validate_rule_values(self, self.ruleset, rule, GACT_VALUES[self.ev_type], rule_part=GRUL_PART_ACTION) except XMLParsingError as e: self.ruleset.parse_error(self.trace_id[0], '\'{0}\' element {1}'.format(self.ev_type, e.msg)) return