def validate_and_sync_switch_rules(self): switch_id = self.payload['switch_id'] diff = flow_utils.validate_switch_rules(switch_id, self.payload['flows']) logger.debug('Switch rules validation result: %s', diff) sync_actions = flow_utils.build_commands_to_sync_rules(switch_id, diff["missing_rules"]) commands = sync_actions["commands"] if commands: logger.info('Install commands for switch %s are to be sent: %s', switch_id, commands) message_utils.send_force_install_commands(switch_id, commands, self.correlation_id) return True
def sync_switch_rules(self): switch_id = self.payload['switch_id'] rules_to_sync = self.payload['rules'] logger.debug('Switch rules synchronization for rules: %s', rules_to_sync) sync_actions = flow_utils.build_commands_to_sync_rules(switch_id, rules_to_sync) commands = sync_actions["commands"] if commands: logger.info('Install commands for switch %s are to be sent: %s', switch_id, commands) message_utils.send_force_install_commands(switch_id, commands, self.correlation_id) message_utils.send_sync_rules_response(sync_actions["installed_rules"], self.correlation_id) return True
def sync_switch_rules(self): switch_id = self.payload['switch_id'] rules_to_sync = self.payload['rules'] logger.debug('Switch rules synchronization for rules: %s', rules_to_sync) commands, installed_rules = flow_utils.build_commands_to_sync_rules( switch_id, rules_to_sync) if commands: indent = ' ' * 4 logger.info('Install commands for switch %s are to be sent:\n%s%s', switch_id, indent, (',\n' + indent).join(str(x) for x in commands)) message_utils.send_force_install_commands(switch_id, commands, self.correlation_id) message_utils.send_sync_rules_response( installed_rules, self.correlation_id) return True