public List<FilteringObjective> updateFilter(FilteringObjective filteringObjective) { List<FilteringObjective> updates = new ArrayList<>(); switch (filteringObjective.op()) { case ADD: this.filterMap.put(filteringObjective.id(), filteringObjective); updates.add(filteringObjective); break; case REMOVE: this.filterMap.remove(filteringObjective.id()); updates.add(filteringObjective); break; default: break; } return updates; }
@Override public void filter(FilteringObjective filteringObjective) { if (filteringObjective.type() == FilteringObjective.Type.PERMIT) { log.debug("processing PERMIT filter objective"); processFilter(filteringObjective, filteringObjective.op() == Objective.Operation.ADD, filteringObjective.appId()); } else { log.debug("filter objective other than PERMIT not supported"); fail(filteringObjective, ObjectiveError.UNSUPPORTED); } }
@Override public void filter(FilteringObjective filteringObjective) { if (filteringObjective.type() == FilteringObjective.Type.PERMIT) { processFilter(filteringObjective, filteringObjective.op() == Objective.Operation.ADD, filteringObjective.appId()); } else { // Note that packets that don't match the PERMIT filter are // automatically denied. The DENY filter is used to deny packets // that are otherwise permitted by the PERMIT filter. // Use ACL table flow rules here for DENY filtering objectives log.debug("filter objective other than PERMIT currently not supported"); fail(filteringObjective, ObjectiveError.UNSUPPORTED); } }
@Override public void filter(FilteringObjective filteringObjective) { if (filteringObjective.type() == FilteringObjective.Type.PERMIT) { processFilter(filteringObjective, filteringObjective.op() == Objective.Operation.ADD, filteringObjective.appId()); } else { fail(filteringObjective, ObjectiveError.UNSUPPORTED); } }
@Override public void filter(FilteringObjective filteringObjective) { if (filteringObjective.type() == FilteringObjective.Type.PERMIT) { processFilter(filteringObjective, filteringObjective.op() == Objective.Operation.ADD, filteringObjective.appId()); } else { fail(filteringObjective, ObjectiveError.UNSUPPORTED); } }
@Override public void filter(FilteringObjective filteringObjective) { if (filteringObjective.type() == FilteringObjective.Type.PERMIT) { processFilter(filteringObjective, filteringObjective.op() == Objective.Operation.ADD, filteringObjective.appId()); } else { fail(filteringObjective, ObjectiveError.UNSUPPORTED); } }