def _validate_port_pair_groups(self, context, pg_ids): with context.session.begin(subtransactions=True): query = self._model_query(context, PortChain) for port_chain_db in query.all(): pc_pg_ids = [ assoc['portpairgroup_id'] for assoc in port_chain_db.chain_group_associations ] if pc_pg_ids == pg_ids: raise ext_sfc.InvalidPortPairGroups( port_pair_groups=pg_ids, port_chain=port_chain_db.id)
def _validate_port_pair_groups(self, context, pg_ids, pc_id=None): with db_api.context_manager.reader.using(context): for pg_id in pg_ids: self._get_port_pair_group(context, pg_id) query = self._model_query(context, PortChain) for port_chain_db in query.all(): if port_chain_db['id'] == pc_id: continue pc_pg_ids = [ assoc['portpairgroup_id'] for assoc in port_chain_db.chain_group_associations ] if pc_pg_ids and pg_ids and pc_pg_ids == pg_ids: raise ext_sfc.InvalidPortPairGroups( port_pair_groups=pg_ids, port_chain=port_chain_db.id)
def _validate_port_pair_groups(self, context, pg_ids, pc_id=None): with db_api.CONTEXT_READER.using(context): prev_pg_tap_enabled = False for pg_id in pg_ids: pg = self._get_port_pair_group(context, pg_id) curr_pg_tap_enabled = pg['tap_enabled'] if prev_pg_tap_enabled and curr_pg_tap_enabled: raise ext_tap.ConsecutiveTapPPGNotSupported() prev_pg_tap_enabled = curr_pg_tap_enabled query = model_query.query_with_hooks(context, PortChain) for port_chain_db in query.all(): if port_chain_db['id'] == pc_id: continue pc_pg_ids = [ assoc['portpairgroup_id'] for assoc in port_chain_db.chain_group_associations ] if pc_pg_ids and pg_ids and pc_pg_ids == pg_ids: raise ext_sfc.InvalidPortPairGroups( port_pair_groups=pg_ids, port_chain=port_chain_db.id)