mirror of
https://github.com/opennetworkinglab/onos.git
synced 2026-05-05 12:16:13 +02:00
ONOS-6604 More criterion translators for PiFlowRuleTranslationService
Change-Id: I9399f75fe467971d6d012ddad47a72c58df02d69
This commit is contained in:
parent
48f99fa704
commit
897fd2de22
@ -55,6 +55,8 @@ import org.onosproject.net.flow.criteria.VlanPcpCriterion;
|
||||
import org.onosproject.net.flow.criteria.ArpHaCriterion;
|
||||
import org.onosproject.net.flow.criteria.ArpOpCriterion;
|
||||
import org.onosproject.net.flow.criteria.ArpPaCriterion;
|
||||
import org.onosproject.net.flow.criteria.IPEcnCriterion;
|
||||
import org.onosproject.net.flow.criteria.MetadataCriterion;
|
||||
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.EthCriterionTranslator;
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.EthTypeCriterionTranslator;
|
||||
@ -91,6 +93,8 @@ import org.onosproject.net.pi.impl.CriterionTranslators.VlanPcpCriterionTranslat
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.ArpHaCriterionTranslator;
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.ArpOpCriterionTranslator;
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.ArpPaCriterionTranslator;
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.IPEcnCriterionTranslator;
|
||||
import org.onosproject.net.pi.impl.CriterionTranslators.MetadataCriterionTranslator;
|
||||
|
||||
import org.onosproject.net.pi.model.PiMatchType;
|
||||
import org.onosproject.net.pi.runtime.PiExactFieldMatch;
|
||||
@ -148,6 +152,8 @@ final class CriterionTranslatorHelper {
|
||||
.put(ArpHaCriterion.class, new ArpHaCriterionTranslator())
|
||||
.put(ArpOpCriterion.class, new ArpOpCriterionTranslator())
|
||||
.put(ArpPaCriterion.class, new ArpPaCriterionTranslator())
|
||||
.put(IPEcnCriterion.class, new IPEcnCriterionTranslator())
|
||||
.put(MetadataCriterion.class, new MetadataCriterionTranslator())
|
||||
.build();
|
||||
|
||||
private CriterionTranslatorHelper() {
|
||||
|
||||
@ -54,6 +54,7 @@ import org.onosproject.net.flow.criteria.ArpOpCriterion;
|
||||
import org.onosproject.net.flow.criteria.ArpPaCriterion;
|
||||
import org.onosproject.net.flow.criteria.IPv6NDLinkLayerAddressCriterion;
|
||||
import org.onosproject.net.flow.criteria.IPv6NDTargetAddressCriterion;
|
||||
import org.onosproject.net.flow.criteria.IPEcnCriterion;
|
||||
|
||||
import static org.onlab.util.ImmutableByteSequence.ByteSequenceTrimException;
|
||||
import static org.onlab.util.ImmutableByteSequence.copyFrom;
|
||||
@ -487,7 +488,14 @@ final class CriterionTranslators {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Translator of IPEcnCriterion.
|
||||
*/
|
||||
static final class IPEcnCriterionTranslator extends AbstractCriterionTranslator {
|
||||
@Override
|
||||
public void init(Criterion criterion, int bitWidth) throws ByteSequenceTrimException {
|
||||
IPEcnCriterion c = (IPEcnCriterion) criterion;
|
||||
initAsExactMatch(copyFrom(c.ipEcn()), bitWidth);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user