@Override public ExtensionSelectorType type() { return ExtensionSelectorType.ExtensionSelectorTypes.NICIRA_MATCH_ENCAP_ETH_TYPE.type(); }
public MacAddress mac() { return eth.mac(); } }
@Override public void write(Kryo kryo, Output output, ExtensionCriterion object) { kryo.writeClassAndObject(output, object.extensionSelector().type()); kryo.writeClassAndObject(output, object.deviceId()); kryo.writeClassAndObject(output, object.extensionSelector().serialize()); }
@Override public ExtensionSelector getExtensionSelector(ExtensionSelectorType type) { if (type.equals(ExtensionSelectorType.ExtensionSelectorTypes.OFDPA_MATCH_VLAN_VID.type())) { return new OfdpaMatchVlanVid(); } throw new UnsupportedOperationException( "Driver does not support extension type " + type.toString()); } }
public PortNumber port() { return port.port(); }
public VlanId vlanId() { return vlan.vlanId(); }
protected static IpPrefix readIpDstFromSelector(TrafficSelector selector) { if (selector == null) { return null; } Criterion criterion = selector.getCriterion(Criterion.Type.IPV4_DST); return (criterion == null) ? null : ((IPCriterion) criterion).ip(); }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final IPDscpCriterion ipDscpCriterion = (IPDscpCriterion) criterion; return root.put(CriterionCodec.IP_DSCP, ipDscpCriterion.ipDscp()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final IcmpTypeCriterion icmpTypeCriterion = (IcmpTypeCriterion) criterion; return root.put(CriterionCodec.ICMP_TYPE, icmpTypeCriterion.icmpType()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final IPv6FlowLabelCriterion ipv6FlowLabelCriterion = (IPv6FlowLabelCriterion) criterion; return root.put(CriterionCodec.FLOW_LABEL, ipv6FlowLabelCriterion.flowLabel()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final MetadataCriterion metadataCriterion = (MetadataCriterion) criterion; return root.put(CriterionCodec.METADATA, metadataCriterion.metadata()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final VlanPcpCriterion vlanPcpCriterion = (VlanPcpCriterion) criterion; return root.put(CriterionCodec.PRIORITY, vlanPcpCriterion.priority()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final IcmpCodeCriterion icmpCodeCriterion = (IcmpCodeCriterion) criterion; return root.put(CriterionCodec.ICMP_CODE, icmpCodeCriterion.icmpCode()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final Icmpv6TypeCriterion icmpv6TypeCriterion = (Icmpv6TypeCriterion) criterion; return root.put(CriterionCodec.ICMPV6_TYPE, icmpv6TypeCriterion.icmpv6Type()); } }
@Override public ObjectNode encodeCriterion(ObjectNode root, Criterion criterion) { final IPv6ExthdrFlagsCriterion exthdrCriterion = (IPv6ExthdrFlagsCriterion) criterion; return root.put(CriterionCodec.EXT_HDR_FLAGS, exthdrCriterion.exthdrFlags()); } }
@Override public ExtensionSelectorType type() { return ExtensionSelectorType.ExtensionSelectorTypes.OFDPA_MATCH_VLAN_VID.type(); }
@Override public ExtensionSelectorType type() { return ExtensionSelectorType.ExtensionSelectorTypes.NICIRA_MATCH_NSH_SI.type(); }
@Override public ExtensionSelectorType type() { return ExtensionSelectorType.ExtensionSelectorTypes.NICIRA_MATCH_NSH_SPI.type(); }