Search in sources :

Example 1 with VlanPcpCaseBuilder

use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder in project openflowplugin by opendaylight.

the class MatchConvertorUtil method toOfVlanPcp.

/**
 * To of vlan pcp match entry.
 *
 * @param vlanPcp the vlan pcp
 * @return the match entry
 */
public static MatchEntry toOfVlanPcp(final org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanPcp vlanPcp) {
    MatchEntryBuilder matchEntryBuilder = new MatchEntryBuilder();
    matchEntryBuilder.setOxmClass(OpenflowBasicClass.class);
    matchEntryBuilder.setHasMask(false);
    matchEntryBuilder.setOxmMatchField(VlanPcp.class);
    VlanPcpCaseBuilder vlanPcpCaseBuilder = new VlanPcpCaseBuilder();
    VlanPcpBuilder vlanPcpBuilder = new VlanPcpBuilder();
    vlanPcpBuilder.setVlanPcp(vlanPcp.getValue());
    vlanPcpCaseBuilder.setVlanPcp(vlanPcpBuilder.build());
    matchEntryBuilder.setMatchEntryValue(vlanPcpCaseBuilder.build());
    return matchEntryBuilder.build();
}
Also used : MatchEntryBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder) VlanPcpBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.vlan.pcp._case.VlanPcpBuilder) VlanPcpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder)

Example 2 with VlanPcpCaseBuilder

use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder in project openflowplugin by opendaylight.

the class OxmVlanPcpDeserializer method addVlanPcpValue.

private static void addVlanPcpValue(ByteBuf input, MatchEntryBuilder builder) {
    VlanPcpCaseBuilder caseBuilder = new VlanPcpCaseBuilder();
    VlanPcpBuilder vlanBuilder = new VlanPcpBuilder();
    vlanBuilder.setVlanPcp(input.readUnsignedByte());
    caseBuilder.setVlanPcp(vlanBuilder.build());
    builder.setMatchEntryValue(caseBuilder.build());
}
Also used : VlanPcpBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.vlan.pcp._case.VlanPcpBuilder) VlanPcpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder)

Example 3 with VlanPcpCaseBuilder

use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder in project openflowplugin by opendaylight.

the class ActionConvertorV13Test method testGetActions.

/**
 * Test {@link ActionConvertor#convert(List, ActionConvertorData)} }.
 */
@Test
public void testGetActions() {
    org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetVlanPcpActionCaseBuilder vlanPcpCaseBuilder = new SetVlanPcpActionCaseBuilder();
    SetVlanPcpActionBuilder pcpBuilder = new SetVlanPcpActionBuilder();
    pcpBuilder.setVlanPcp(new VlanPcp((short) 7));
    vlanPcpCaseBuilder.setSetVlanPcpAction(pcpBuilder.build());
    actionBuilder.setAction(vlanPcpCaseBuilder.build());
    actionBuilder.setOrder(0);
    List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> salActions = new ArrayList<>();
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    StripVlanActionCaseBuilder stripCaseBuilder = new StripVlanActionCaseBuilder();
    StripVlanActionBuilder stripBuilder = new StripVlanActionBuilder();
    stripCaseBuilder.setStripVlanAction(stripBuilder.build());
    actionBuilder.setAction(stripCaseBuilder.build());
    actionBuilder.setOrder(1);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetDlDstActionCaseBuilder dlDstCaseBuilder = new SetDlDstActionCaseBuilder();
    SetDlDstActionBuilder dlDstBuilder = new SetDlDstActionBuilder();
    dlDstBuilder.setAddress(new MacAddress("00:00:00:00:00:06"));
    dlDstCaseBuilder.setSetDlDstAction(dlDstBuilder.build());
    actionBuilder.setAction(dlDstCaseBuilder.build());
    actionBuilder.setOrder(2);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetDlSrcActionCaseBuilder dlSrcCaseBuilder = new SetDlSrcActionCaseBuilder();
    SetDlSrcActionBuilder dlSrcBuilder = new SetDlSrcActionBuilder();
    dlSrcBuilder.setAddress(new MacAddress("00:00:00:00:00:05"));
    dlSrcCaseBuilder.setSetDlSrcAction(dlSrcBuilder.build());
    actionBuilder.setAction(dlSrcCaseBuilder.build());
    actionBuilder.setOrder(3);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetNwSrcActionCaseBuilder nwSrcCaseBuilder = new SetNwSrcActionCaseBuilder();
    SetNwSrcActionBuilder nwSrcBuilder = new SetNwSrcActionBuilder();
    Ipv4Builder ipv4Builder = new Ipv4Builder();
    /* Correct canonical form for v4 prefix!!! */
    ipv4Builder.setIpv4Address(new Ipv4Prefix("10.0.0.0/24"));
    nwSrcBuilder.setAddress(ipv4Builder.build());
    nwSrcCaseBuilder.setSetNwSrcAction(nwSrcBuilder.build());
    actionBuilder.setAction(nwSrcCaseBuilder.build());
    actionBuilder.setOrder(4);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetNwDstActionBuilder nwDstBuilder = new SetNwDstActionBuilder();
    ipv4Builder = new Ipv4Builder();
    ipv4Builder.setIpv4Address(new Ipv4Prefix("10.0.0.2/32"));
    nwDstBuilder.setAddress(ipv4Builder.build());
    SetNwDstActionCaseBuilder nwDstCaseBuilder = new SetNwDstActionCaseBuilder();
    nwDstCaseBuilder.setSetNwDstAction(nwDstBuilder.build());
    actionBuilder.setAction(nwDstCaseBuilder.build());
    actionBuilder.setOrder(5);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetTpSrcActionCaseBuilder tpSrcCaseBuilder = new SetTpSrcActionCaseBuilder();
    SetTpSrcActionBuilder tpSrcBuilder = new SetTpSrcActionBuilder();
    tpSrcBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(54));
    tpSrcCaseBuilder.setSetTpSrcAction(tpSrcBuilder.build());
    actionBuilder.setAction(tpSrcCaseBuilder.build());
    actionBuilder.setOrder(6);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetTpDstActionCaseBuilder tpDstCaseBuilder = new SetTpDstActionCaseBuilder();
    SetTpDstActionBuilder tpDstBuilder = new SetTpDstActionBuilder();
    tpDstBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(45));
    tpDstCaseBuilder.setSetTpDstAction(tpDstBuilder.build());
    actionBuilder.setAction(tpDstCaseBuilder.build());
    actionBuilder.setOrder(7);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetNwTosActionCaseBuilder tosCaseBuilder = new SetNwTosActionCaseBuilder();
    SetNwTosActionBuilder tosBuilder = new SetNwTosActionBuilder();
    tosBuilder.setTos(16);
    tosCaseBuilder.setSetNwTosAction(tosBuilder.build());
    actionBuilder.setAction(tosCaseBuilder.build());
    actionBuilder.setOrder(8);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    SetVlanIdActionCaseBuilder vlanIdCaseBuilder = new SetVlanIdActionCaseBuilder();
    SetVlanIdActionBuilder vlanIdBuilder = new SetVlanIdActionBuilder();
    vlanIdBuilder.setVlanId(new VlanId(22));
    vlanIdCaseBuilder.setSetVlanIdAction(vlanIdBuilder.build());
    actionBuilder.setAction(vlanIdCaseBuilder.build());
    actionBuilder.setOrder(9);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    nwSrcCaseBuilder = new SetNwSrcActionCaseBuilder();
    nwSrcBuilder = new SetNwSrcActionBuilder();
    Ipv6Builder ipv6Builder = new Ipv6Builder();
    /* Use canonical form, 00:00:0000 is not a valid v6 notation */
    ipv6Builder.setIpv6Address(new Ipv6Prefix("::5/128"));
    nwSrcBuilder.setAddress(ipv6Builder.build());
    nwSrcCaseBuilder.setSetNwSrcAction(nwSrcBuilder.build());
    actionBuilder.setAction(nwSrcCaseBuilder.build());
    actionBuilder.setOrder(10);
    salActions.add(actionBuilder.build());
    actionBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder();
    nwDstCaseBuilder = new SetNwDstActionCaseBuilder();
    nwDstBuilder = new SetNwDstActionBuilder();
    ipv6Builder = new Ipv6Builder();
    /* Use canonical form, 00:00:0006/64 is not a valid v6 notation - this equates to ::/64 */
    ipv6Builder.setIpv6Address(new Ipv6Prefix("::/64"));
    nwDstBuilder.setAddress(ipv6Builder.build());
    nwDstCaseBuilder.setSetNwDstAction(nwDstBuilder.build());
    actionBuilder.setAction(nwDstCaseBuilder.build());
    actionBuilder.setOrder(11);
    salActions.add(actionBuilder.build());
    IpMatchBuilder ipMatchBld = new IpMatchBuilder().setIpProtocol((short) 6);
    MatchBuilder matchBld = new MatchBuilder().setIpMatch(ipMatchBld.build());
    FlowBuilder flowBld = new FlowBuilder().setMatch(matchBld.build());
    Flow flow = flowBld.build();
    ActionConvertorData data = new ActionConvertorData(OFConstants.OFP_VERSION_1_3);
    data.setDatapathId(new BigInteger("42"));
    data.setIpProtocol(FlowConvertorUtil.getIpProtocolFromFlow(flow));
    Optional<List<Action>> actionsOptional = convertorManager.convert(salActions, data);
    List<Action> actions = actionsOptional.orElse(Collections.emptyList());
    Assert.assertEquals("Wrong number of actions", 12, actions.size());
    Action action = actions.get(0);
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    MatchEntry entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.VlanPcp.class, false);
    Assert.assertEquals("Wrong vlan pcp", 7, ((VlanPcpCase) entry.getMatchEntryValue()).getVlanPcp().getVlanPcp().intValue());
    action = actions.get(1);
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.VlanVid.class, false);
    Assert.assertEquals("Wrong vlan vid", 0, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().getVlanVid().intValue());
    Assert.assertEquals("Wrong cfi bit", true, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().isCfiBit());
    action = actions.get(2);
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthDst.class, false);
    Assert.assertEquals("Wrong dl dst", "00:00:00:00:00:06", ((EthDstCase) entry.getMatchEntryValue()).getEthDst().getMacAddress().getValue());
    action = actions.get(3);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthSrc.class, false);
    Assert.assertEquals("Wrong dl src", "00:00:00:00:00:05", ((EthSrcCase) entry.getMatchEntryValue()).getEthSrc().getMacAddress().getValue());
    action = actions.get(4);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv4Src.class, false);
    Assert.assertEquals("Wrong ipv4 src", "10.0.0.0", ((Ipv4SrcCase) entry.getMatchEntryValue()).getIpv4Src().getIpv4Address().getValue());
    action = actions.get(5);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv4Dst.class, false);
    Assert.assertEquals("Wrong ipv4 dst", "10.0.0.2", ((Ipv4DstCase) entry.getMatchEntryValue()).getIpv4Dst().getIpv4Address().getValue());
    action = actions.get(6);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.TcpSrc.class, false);
    Assert.assertEquals("Wrong tcp src", 54, ((TcpSrcCase) entry.getMatchEntryValue()).getTcpSrc().getPort().getValue().intValue());
    action = actions.get(7);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.TcpDst.class, false);
    Assert.assertEquals("Wrong tcp dst", 45, ((TcpDstCase) entry.getMatchEntryValue()).getTcpDst().getPort().getValue().intValue());
    action = actions.get(8);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.IpDscp.class, false);
    Assert.assertEquals("Wrong ip dscp", 4, ((IpDscpCase) entry.getMatchEntryValue()).getIpDscp().getDscp().getValue().intValue());
    action = actions.get(9);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.VlanVid.class, false);
    Assert.assertEquals("Wrong vlan id", 22, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().getVlanVid().intValue());
    Assert.assertEquals("Wrong cfi bit", true, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().isCfiBit());
    action = actions.get(10);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv6Src.class, false);
    Assert.assertEquals("Wrong ipv6 src", "::5", ((Ipv6SrcCase) entry.getMatchEntryValue()).getIpv6Src().getIpv6Address().getValue());
    action = actions.get(11);
    setFieldCase = (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();
    Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common" + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());
    entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);
    checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv6Dst.class, false);
    Assert.assertEquals("Wrong ipv6 dst", "::", ((Ipv6DstCase) entry.getMatchEntryValue()).getIpv6Dst().getIpv6Address().getValue());
}
Also used : ArrayList(java.util.ArrayList) SetNwTosActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.tos.action._case.SetNwTosActionBuilder) SetTpSrcActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetTpSrcActionCaseBuilder) SetVlanIdActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.vlan.id.action._case.SetVlanIdActionBuilder) ArrayList(java.util.ArrayList) List(java.util.List) Ipv4Prefix(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Prefix) VlanId(org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanId) IpMatchBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.IpMatchBuilder) ActionConvertorData(org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.data.ActionConvertorData) IpDscpCase(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.IpDscpCase) MacAddress(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress) FlowBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder) SetNwDstActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetNwDstActionCaseBuilder) SetNwSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.src.action._case.SetNwSrcActionBuilder) BigInteger(java.math.BigInteger) SetDlDstActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetDlDstActionCaseBuilder) Action(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action) MatchEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry) SetVlanIdActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.vlan.id.action._case.SetVlanIdActionBuilder) PopMplsActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.pop.mpls._case.PopMplsActionBuilder) SetNwTtlActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.ttl._case.SetNwTtlActionBuilder) PushMplsActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.mpls._case.PushMplsActionBuilder) SetMplsTtlActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.mpls.ttl._case.SetMplsTtlActionBuilder) SetDlSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.dl.src.action._case.SetDlSrcActionBuilder) GroupActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.group._case.GroupActionBuilder) SetTpDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.tp.dst.action._case.SetTpDstActionBuilder) SetFieldActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.field._case.SetFieldActionBuilder) SetNwTosActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.tos.action._case.SetNwTosActionBuilder) SetTpSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.tp.src.action._case.SetTpSrcActionBuilder) SetNwDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.dst.action._case.SetNwDstActionBuilder) PushVlanActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.vlan._case.PushVlanActionBuilder) SetQueueActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.queue._case.SetQueueActionBuilder) SetDlDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.dl.dst.action._case.SetDlDstActionBuilder) StripVlanActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.strip.vlan.action._case.StripVlanActionBuilder) SetVlanPcpActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.vlan.pcp.action._case.SetVlanPcpActionBuilder) OutputActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputActionBuilder) ActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.ActionBuilder) SetNwSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.src.action._case.SetNwSrcActionBuilder) PushPbbActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.pbb._case.PushPbbActionBuilder) SetTpSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.tp.src.action._case.SetTpSrcActionBuilder) SetFieldCase(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetFieldCase) SetDlDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.dl.dst.action._case.SetDlDstActionBuilder) Ipv4Builder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.address.address.Ipv4Builder) Ipv6Builder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.address.address.Ipv6Builder) SetVlanPcpActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.vlan.pcp.action._case.SetVlanPcpActionBuilder) Ipv6Prefix(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Prefix) SetNwSrcActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetNwSrcActionCaseBuilder) StripVlanActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.strip.vlan.action._case.StripVlanActionBuilder) SetDlSrcActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetDlSrcActionCaseBuilder) SetVlanPcpActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetVlanPcpActionCaseBuilder) SetVlanIdActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetVlanIdActionCaseBuilder) SetNwTosActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetNwTosActionCaseBuilder) StripVlanActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.StripVlanActionCaseBuilder) TcpSrcCase(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TcpSrcCase) SetTpDstActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetTpDstActionCaseBuilder) Flow(org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow) TcpDstCase(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TcpDstCase) SetNwDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.nw.dst.action._case.SetNwDstActionBuilder) VlanPcp(org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanPcp) VlanVidCase(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanVidCase) SetTpDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.tp.dst.action._case.SetTpDstActionBuilder) SetDlSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.dl.src.action._case.SetDlSrcActionBuilder) IpMatchBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.IpMatchBuilder) MatchBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.flow.MatchBuilder) Test(org.junit.Test)

Example 4 with VlanPcpCaseBuilder

use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder in project openflowplugin by opendaylight.

the class OF10ActionsSerializerTest method test.

/**
 * Testing correct serialization of actions (OF v1.0).
 */
@Test
public void test() {
    final List<Action> actions = new ArrayList<>();
    OutputActionCaseBuilder caseBuilder = new OutputActionCaseBuilder();
    OutputActionBuilder outputBuilder = new OutputActionBuilder();
    outputBuilder.setPort(new PortNumber(42L));
    outputBuilder.setMaxLength(32);
    caseBuilder.setOutputAction(outputBuilder.build());
    ActionBuilder actionBuilder = new ActionBuilder();
    actionBuilder.setActionChoice(caseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetVlanVidCaseBuilder vlanVidCaseBuilder = new SetVlanVidCaseBuilder();
    SetVlanVidActionBuilder vlanVidBuilder = new SetVlanVidActionBuilder();
    vlanVidBuilder.setVlanVid(15);
    vlanVidCaseBuilder.setSetVlanVidAction(vlanVidBuilder.build());
    actionBuilder.setActionChoice(vlanVidCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetVlanPcpCaseBuilder vlanPcpCaseBuilder = new SetVlanPcpCaseBuilder();
    SetVlanPcpActionBuilder vlanPcpBuilder = new SetVlanPcpActionBuilder();
    vlanPcpBuilder.setVlanPcp((short) 16);
    vlanPcpCaseBuilder.setSetVlanPcpAction(vlanPcpBuilder.build());
    actionBuilder.setActionChoice(vlanPcpCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    actionBuilder.setActionChoice(new StripVlanCaseBuilder().build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetDlSrcCaseBuilder dlSrcCaseBuilder = new SetDlSrcCaseBuilder();
    SetDlSrcActionBuilder dlSrcBuilder = new SetDlSrcActionBuilder();
    dlSrcBuilder.setDlSrcAddress(new MacAddress("00:00:00:02:03:04"));
    dlSrcCaseBuilder.setSetDlSrcAction(dlSrcBuilder.build());
    actionBuilder.setActionChoice(dlSrcCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetDlDstCaseBuilder dlDstCaseBuilder = new SetDlDstCaseBuilder();
    SetDlDstActionBuilder dlDstBuilder = new SetDlDstActionBuilder();
    dlDstBuilder.setDlDstAddress(new MacAddress("00:00:00:01:02:03"));
    dlDstCaseBuilder.setSetDlDstAction(dlDstBuilder.build());
    actionBuilder.setActionChoice(dlDstCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetNwSrcCaseBuilder nwSrcCaseBuilder = new SetNwSrcCaseBuilder();
    SetNwSrcActionBuilder nwSrcBuilder = new SetNwSrcActionBuilder();
    nwSrcBuilder.setIpAddress(new Ipv4Address("10.0.0.1"));
    nwSrcCaseBuilder.setSetNwSrcAction(nwSrcBuilder.build());
    actionBuilder.setActionChoice(nwSrcCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetNwDstCaseBuilder nwDstCaseBuilder = new SetNwDstCaseBuilder();
    SetNwDstActionBuilder nwDstBuilder = new SetNwDstActionBuilder();
    nwDstBuilder.setIpAddress(new Ipv4Address("10.0.0.3"));
    nwDstCaseBuilder.setSetNwDstAction(nwDstBuilder.build());
    actionBuilder.setActionChoice(nwDstCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetNwTosCaseBuilder tosCaseBuilder = new SetNwTosCaseBuilder();
    SetNwTosActionBuilder tosBuilder = new SetNwTosActionBuilder();
    tosBuilder.setNwTos((short) 204);
    tosCaseBuilder.setSetNwTosAction(tosBuilder.build());
    actionBuilder.setActionChoice(tosCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetTpSrcCaseBuilder tpSrcCaseBuilder = new SetTpSrcCaseBuilder();
    SetTpSrcActionBuilder tpSrcBuilder = new SetTpSrcActionBuilder();
    tpSrcBuilder.setPort(new PortNumber(6653L));
    tpSrcCaseBuilder.setSetTpSrcAction(tpSrcBuilder.build());
    actionBuilder.setActionChoice(tpSrcCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    SetTpDstCaseBuilder tpDstCaseBuilder = new SetTpDstCaseBuilder();
    SetTpDstActionBuilder tpDstBuilder = new SetTpDstActionBuilder();
    tpDstBuilder.setPort(new PortNumber(6633L));
    tpDstCaseBuilder.setSetTpDstAction(tpDstBuilder.build());
    actionBuilder.setActionChoice(tpDstCaseBuilder.build());
    actions.add(actionBuilder.build());
    actionBuilder = new ActionBuilder();
    EnqueueCaseBuilder enqueueCaseBuilder = new EnqueueCaseBuilder();
    EnqueueActionBuilder enqueueBuilder = new EnqueueActionBuilder();
    enqueueBuilder.setPort(new PortNumber(6613L));
    enqueueBuilder.setQueueId(new QueueId(400L));
    enqueueCaseBuilder.setEnqueueAction(enqueueBuilder.build());
    actionBuilder.setActionChoice(enqueueCaseBuilder.build());
    actions.add(actionBuilder.build());
    ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();
    ListSerializer.serializeList(actions, TypeKeyMakerFactory.createActionKeyMaker(EncodeConstants.OF10_VERSION_ID), registry, out);
    Assert.assertEquals("Wrong action type", 0, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong port", 42, out.readUnsignedShort());
    Assert.assertEquals("Wrong max-length", 32, out.readUnsignedShort());
    Assert.assertEquals("Wrong action type", 1, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong vlan-vid", 15, out.readUnsignedShort());
    out.skipBytes(2);
    Assert.assertEquals("Wrong action type", 2, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong vlan-pcp", 16, out.readUnsignedByte());
    out.skipBytes(3);
    Assert.assertEquals("Wrong action type", 3, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    out.skipBytes(4);
    Assert.assertEquals("Wrong action type", 4, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 16, out.readUnsignedShort());
    byte[] data = new byte[EncodeConstants.MAC_ADDRESS_LENGTH];
    out.readBytes(data);
    Assert.assertArrayEquals("Wrong dl-address", ByteBufUtils.macAddressToBytes("00:00:00:02:03:04"), data);
    out.skipBytes(6);
    Assert.assertEquals("Wrong action type", 5, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 16, out.readUnsignedShort());
    data = new byte[EncodeConstants.MAC_ADDRESS_LENGTH];
    out.readBytes(data);
    Assert.assertArrayEquals("Wrong dl-address", ByteBufUtils.macAddressToBytes("00:00:00:01:02:03"), data);
    out.skipBytes(6);
    Assert.assertEquals("Wrong action type", 6, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong ip-address(1)", 10, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(2)", 0, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(3)", 0, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(4)", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong action type", 7, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong ip-address(1)", 10, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(2)", 0, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(3)", 0, out.readUnsignedByte());
    Assert.assertEquals("Wrong ip-address(4)", 3, out.readUnsignedByte());
    Assert.assertEquals("Wrong action type", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong nw-tos", 204, out.readUnsignedByte());
    out.skipBytes(3);
    Assert.assertEquals("Wrong action type", 9, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong port", 6653, out.readUnsignedShort());
    out.skipBytes(2);
    Assert.assertEquals("Wrong action type", 10, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 8, out.readUnsignedShort());
    Assert.assertEquals("Wrong port", 6633, out.readUnsignedShort());
    out.skipBytes(2);
    Assert.assertEquals("Wrong action type", 11, out.readUnsignedShort());
    Assert.assertEquals("Wrong action length", 16, out.readUnsignedShort());
    Assert.assertEquals("Wrong port", 6613, out.readUnsignedShort());
    out.skipBytes(6);
    Assert.assertEquals("Wrong queue-id", 400, out.readUnsignedInt());
    Assert.assertTrue("Written more bytes than needed", out.readableBytes() == 0);
}
Also used : OutputActionCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.OutputActionCaseBuilder) Action(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action) SetVlanPcpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetVlanPcpCaseBuilder) SetTpSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.tp.src._case.SetTpSrcActionBuilder) SetTpDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.tp.dst._case.SetTpDstActionBuilder) SetVlanVidActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.vlan.vid._case.SetVlanVidActionBuilder) SetDlSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.dl.src._case.SetDlSrcActionBuilder) SetNwSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.src._case.SetNwSrcActionBuilder) OutputActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputActionBuilder) SetDlDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.dl.dst._case.SetDlDstActionBuilder) SetNwTosActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.tos._case.SetNwTosActionBuilder) ActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.ActionBuilder) SetNwDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.dst._case.SetNwDstActionBuilder) SetVlanPcpActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.vlan.pcp._case.SetVlanPcpActionBuilder) EnqueueActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.enqueue._case.EnqueueActionBuilder) SetTpSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.tp.src._case.SetTpSrcActionBuilder) ArrayList(java.util.ArrayList) SetDlDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetDlDstCaseBuilder) SetNwTosCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetNwTosCaseBuilder) SetNwTosActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.tos._case.SetNwTosActionBuilder) SetDlDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.dl.dst._case.SetDlDstActionBuilder) ByteBuf(io.netty.buffer.ByteBuf) SetVlanPcpActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.vlan.pcp._case.SetVlanPcpActionBuilder) SetTpSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetTpSrcCaseBuilder) OutputActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputActionBuilder) SetDlSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetDlSrcCaseBuilder) SetVlanVidCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetVlanVidCaseBuilder) Ipv4Address(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address) SetTpDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetTpDstCaseBuilder) SetNwDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetNwDstCaseBuilder) QueueId(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.QueueId) MacAddress(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress) EnqueueActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.enqueue._case.EnqueueActionBuilder) StripVlanCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.StripVlanCaseBuilder) EnqueueCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.EnqueueCaseBuilder) SetVlanVidActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.vlan.vid._case.SetVlanVidActionBuilder) SetNwDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.dst._case.SetNwDstActionBuilder) SetNwSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.src._case.SetNwSrcActionBuilder) SetNwSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetNwSrcCaseBuilder) SetTpDstActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.tp.dst._case.SetTpDstActionBuilder) PortNumber(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber) SetDlSrcActionBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.dl.src._case.SetDlSrcActionBuilder) Test(org.junit.Test)

Example 5 with VlanPcpCaseBuilder

use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder in project openflowplugin by opendaylight.

the class OF13MatchSerializer02Test method test.

/**
 * Testing serialization of match.
 */
@Test
public void test() {
    MatchBuilder builder = new MatchBuilder();
    builder.setType(OxmMatchType.class);
    final List<MatchEntry> entries = new ArrayList<>();
    MatchEntryBuilder entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(InPort.class);
    entryBuilder.setHasMask(false);
    InPortCaseBuilder inPortCaseBuilder = new InPortCaseBuilder();
    InPortBuilder inPortBuilder = new InPortBuilder();
    inPortBuilder.setPortNumber(new PortNumber(42L));
    inPortCaseBuilder.setInPort(inPortBuilder.build());
    entryBuilder.setMatchEntryValue(inPortCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(InPhyPort.class);
    entryBuilder.setHasMask(false);
    InPhyPortCaseBuilder inPhyPortCaseBuilder = new InPhyPortCaseBuilder();
    InPhyPortBuilder inPhyPortBuilder = new InPhyPortBuilder();
    inPhyPortBuilder.setPortNumber(new PortNumber(43L));
    inPhyPortCaseBuilder.setInPhyPort(inPhyPortBuilder.build());
    entryBuilder.setMatchEntryValue(inPhyPortCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Metadata.class);
    entryBuilder.setHasMask(true);
    MetadataCaseBuilder metaCaseBuilder = new MetadataCaseBuilder();
    MetadataBuilder metadataBuilder = new MetadataBuilder();
    metadataBuilder.setMetadata(new byte[] { 0, 0, 0, 0, 0, 0, 0, 1 });
    metadataBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 0, 0, 2 });
    metaCaseBuilder.setMetadata(metadataBuilder.build());
    entryBuilder.setMatchEntryValue(metaCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(EthDst.class);
    entryBuilder.setHasMask(true);
    EthDstCaseBuilder ethDstCaseBuilder = new EthDstCaseBuilder();
    EthDstBuilder ethDstBuilder = new EthDstBuilder();
    ethDstBuilder.setMacAddress(new MacAddress("01:00:03:00:00:06"));
    ethDstBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 5 });
    ethDstCaseBuilder.setEthDst(ethDstBuilder.build());
    entryBuilder.setMatchEntryValue(ethDstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(EthSrc.class);
    entryBuilder.setHasMask(true);
    EthSrcCaseBuilder ethSrcCaseBuilder = new EthSrcCaseBuilder();
    EthSrcBuilder ethSrcBuilder = new EthSrcBuilder();
    ethSrcBuilder.setMacAddress(new MacAddress("04:00:02:00:00:08"));
    ethSrcBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 2 });
    ethSrcCaseBuilder.setEthSrc(ethSrcBuilder.build());
    entryBuilder.setMatchEntryValue(ethSrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(EthType.class);
    entryBuilder.setHasMask(false);
    EthTypeCaseBuilder ethTypeCaseBuilder = new EthTypeCaseBuilder();
    EthTypeBuilder ethTypeBuilder = new EthTypeBuilder();
    ethTypeBuilder.setEthType(new EtherType(46));
    ethTypeCaseBuilder.setEthType(ethTypeBuilder.build());
    entryBuilder.setMatchEntryValue(ethTypeCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(VlanVid.class);
    entryBuilder.setHasMask(true);
    final VlanVidCaseBuilder vlanVidCaseBuilder = new VlanVidCaseBuilder();
    VlanVidBuilder vlanVidBuilder = new VlanVidBuilder();
    vlanVidBuilder.setVlanVid(45);
    vlanVidBuilder.setCfiBit(true);
    vlanVidBuilder.setMask(new byte[] { 0, 9 });
    vlanVidCaseBuilder.setVlanVid(vlanVidBuilder.build());
    entryBuilder.setMatchEntryValue(vlanVidCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(VlanPcp.class);
    entryBuilder.setHasMask(false);
    VlanPcpCaseBuilder vlanPcpCaseBuilder = new VlanPcpCaseBuilder();
    VlanPcpBuilder vlanPcpBuilder = new VlanPcpBuilder();
    vlanPcpBuilder.setVlanPcp((short) 14);
    vlanPcpCaseBuilder.setVlanPcp(vlanPcpBuilder.build());
    entryBuilder.setMatchEntryValue(vlanPcpCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(IpDscp.class);
    entryBuilder.setHasMask(false);
    IpDscpCaseBuilder ipDscpCaseBuilder = new IpDscpCaseBuilder();
    IpDscpBuilder ipDscpBuilder = new IpDscpBuilder();
    ipDscpBuilder.setDscp(new Dscp((short) 48));
    ipDscpCaseBuilder.setIpDscp(ipDscpBuilder.build());
    entryBuilder.setMatchEntryValue(ipDscpCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(IpEcn.class);
    entryBuilder.setHasMask(false);
    IpEcnCaseBuilder ipEcnCaseBuilder = new IpEcnCaseBuilder();
    IpEcnBuilder ipEcnBuilder = new IpEcnBuilder();
    ipEcnBuilder.setEcn((short) 49);
    ipEcnCaseBuilder.setIpEcn(ipEcnBuilder.build());
    entryBuilder.setMatchEntryValue(ipEcnCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(IpProto.class);
    entryBuilder.setHasMask(false);
    IpProtoCaseBuilder ipProtoCaseBuilder = new IpProtoCaseBuilder();
    IpProtoBuilder ipProtoBuilder = new IpProtoBuilder();
    ipProtoBuilder.setProtocolNumber((short) 50);
    ipProtoCaseBuilder.setIpProto(ipProtoBuilder.build());
    entryBuilder.setMatchEntryValue(ipProtoCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv4Src.class);
    entryBuilder.setHasMask(true);
    Ipv4SrcCaseBuilder ipv4SrcCaseBuilder = new Ipv4SrcCaseBuilder();
    Ipv4SrcBuilder ipv4SrcBuilder = new Ipv4SrcBuilder();
    ipv4SrcBuilder.setIpv4Address(new Ipv4Address("10.0.0.1"));
    ipv4SrcBuilder.setMask(new byte[] { 0, 0, 0, 14 });
    ipv4SrcCaseBuilder.setIpv4Src(ipv4SrcBuilder.build());
    entryBuilder.setMatchEntryValue(ipv4SrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv4Dst.class);
    entryBuilder.setHasMask(true);
    Ipv4DstCaseBuilder ipv4DstCaseBuilder = new Ipv4DstCaseBuilder();
    Ipv4DstBuilder ipv4DstBuilder = new Ipv4DstBuilder();
    ipv4DstBuilder.setIpv4Address(new Ipv4Address("10.0.0.2"));
    ipv4DstBuilder.setMask(new byte[] { 0, 0, 0, 15 });
    ipv4DstCaseBuilder.setIpv4Dst(ipv4DstBuilder.build());
    entryBuilder.setMatchEntryValue(ipv4DstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(TcpSrc.class);
    entryBuilder.setHasMask(false);
    TcpSrcCaseBuilder tcpSrcCaseBuilder = new TcpSrcCaseBuilder();
    TcpSrcBuilder tcpSrcBuilder = new TcpSrcBuilder();
    tcpSrcBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6653));
    tcpSrcCaseBuilder.setTcpSrc(tcpSrcBuilder.build());
    entryBuilder.setMatchEntryValue(tcpSrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(TcpDst.class);
    entryBuilder.setHasMask(false);
    TcpDstCaseBuilder tcpDstCaseBuilder = new TcpDstCaseBuilder();
    TcpDstBuilder tcpDstBuilder = new TcpDstBuilder();
    tcpDstBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6654));
    tcpDstCaseBuilder.setTcpDst(tcpDstBuilder.build());
    entryBuilder.setMatchEntryValue(tcpDstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(UdpSrc.class);
    entryBuilder.setHasMask(false);
    UdpSrcCaseBuilder udpSrcCaseBuilder = new UdpSrcCaseBuilder();
    UdpSrcBuilder udpSrcBuilder = new UdpSrcBuilder();
    udpSrcBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6655));
    udpSrcCaseBuilder.setUdpSrc(udpSrcBuilder.build());
    entryBuilder.setMatchEntryValue(udpSrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(UdpDst.class);
    entryBuilder.setHasMask(false);
    UdpDstCaseBuilder udpDstCaseBuilder = new UdpDstCaseBuilder();
    UdpDstBuilder udpDstBuilder = new UdpDstBuilder();
    udpDstBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6656));
    udpDstCaseBuilder.setUdpDst(udpDstBuilder.build());
    entryBuilder.setMatchEntryValue(udpDstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(SctpSrc.class);
    entryBuilder.setHasMask(false);
    SctpSrcCaseBuilder sctpSrcCaseBuilder = new SctpSrcCaseBuilder();
    SctpSrcBuilder sctpSrcBuilder = new SctpSrcBuilder();
    sctpSrcBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6657));
    sctpSrcCaseBuilder.setSctpSrc(sctpSrcBuilder.build());
    entryBuilder.setMatchEntryValue(sctpSrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(SctpDst.class);
    entryBuilder.setHasMask(false);
    SctpDstCaseBuilder sctpDstCaseBuilder = new SctpDstCaseBuilder();
    SctpDstBuilder sctpDstBuilder = new SctpDstBuilder();
    sctpDstBuilder.setPort(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber(6658));
    sctpDstCaseBuilder.setSctpDst(sctpDstBuilder.build());
    entryBuilder.setMatchEntryValue(sctpDstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Icmpv4Type.class);
    entryBuilder.setHasMask(false);
    Icmpv4TypeCaseBuilder icmpv4TypeCaseBuilder = new Icmpv4TypeCaseBuilder();
    Icmpv4TypeBuilder icmpv4TypeBuilder = new Icmpv4TypeBuilder();
    icmpv4TypeBuilder.setIcmpv4Type((short) 51);
    icmpv4TypeCaseBuilder.setIcmpv4Type(icmpv4TypeBuilder.build());
    entryBuilder.setMatchEntryValue(icmpv4TypeCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Icmpv4Code.class);
    entryBuilder.setHasMask(false);
    Icmpv4CodeCaseBuilder icmpv4CodeCaseBuilder = new Icmpv4CodeCaseBuilder();
    Icmpv4CodeBuilder icmpv4CodeBuilder = new Icmpv4CodeBuilder();
    icmpv4CodeBuilder.setIcmpv4Code((short) 52);
    icmpv4CodeCaseBuilder.setIcmpv4Code(icmpv4CodeBuilder.build());
    entryBuilder.setMatchEntryValue(icmpv4CodeCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(ArpOp.class);
    entryBuilder.setHasMask(false);
    ArpOpCaseBuilder arpOpCaseBuilder = new ArpOpCaseBuilder();
    ArpOpBuilder arpOpBuilder = new ArpOpBuilder();
    arpOpBuilder.setOpCode(53);
    arpOpCaseBuilder.setArpOp(arpOpBuilder.build());
    entryBuilder.setMatchEntryValue(arpOpCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(ArpSpa.class);
    entryBuilder.setHasMask(true);
    ArpSpaCaseBuilder arpSpaCaseBuilder = new ArpSpaCaseBuilder();
    ArpSpaBuilder arpSpaBuilder = new ArpSpaBuilder();
    arpSpaBuilder.setIpv4Address(new Ipv4Address("10.0.0.4"));
    arpSpaBuilder.setMask(new byte[] { 0, 0, 0, 16 });
    arpSpaCaseBuilder.setArpSpa(arpSpaBuilder.build());
    entryBuilder.setMatchEntryValue(arpSpaCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(ArpTpa.class);
    entryBuilder.setHasMask(true);
    ArpTpaCaseBuilder arpTpaCaseBuilder = new ArpTpaCaseBuilder();
    ArpTpaBuilder arpTpaBuilder = new ArpTpaBuilder();
    arpTpaBuilder.setIpv4Address(new Ipv4Address("10.0.0.5"));
    arpTpaBuilder.setMask(new byte[] { 0, 0, 0, 17 });
    arpTpaCaseBuilder.setArpTpa(arpTpaBuilder.build());
    entryBuilder.setMatchEntryValue(arpTpaCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(ArpSha.class);
    entryBuilder.setHasMask(true);
    ArpShaCaseBuilder arpShaCaseBuilder = new ArpShaCaseBuilder();
    ArpShaBuilder arpShaBuilder = new ArpShaBuilder();
    arpShaBuilder.setMacAddress(new MacAddress("00:01:02:03:04:05"));
    arpShaBuilder.setMask(new byte[] { 0, 0, 4, 0, 0, 6 });
    arpShaCaseBuilder.setArpSha(arpShaBuilder.build());
    entryBuilder.setMatchEntryValue(arpShaCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(ArpTha.class);
    entryBuilder.setHasMask(true);
    ArpThaCaseBuilder arpThaCaseBuilder = new ArpThaCaseBuilder();
    ArpThaBuilder arpThaBuilder = new ArpThaBuilder();
    arpThaBuilder.setMacAddress(new MacAddress("00:00:00:00:00:03"));
    arpThaBuilder.setMask(new byte[] { 0, 0, 6, 0, 0, 4 });
    arpThaCaseBuilder.setArpTha(arpThaBuilder.build());
    entryBuilder.setMatchEntryValue(arpThaCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6Src.class);
    entryBuilder.setHasMask(true);
    Ipv6SrcCaseBuilder ipv6SrcCaseBuilder = new Ipv6SrcCaseBuilder();
    Ipv6SrcBuilder ipv6SrcBuilder = new Ipv6SrcBuilder();
    ipv6SrcBuilder.setIpv6Address(new Ipv6Address("0:0:0:0:0:0:0:1"));
    ipv6SrcBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 });
    ipv6SrcCaseBuilder.setIpv6Src(ipv6SrcBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6SrcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6Dst.class);
    entryBuilder.setHasMask(true);
    Ipv6DstCaseBuilder ipv6DstCaseBuilder = new Ipv6DstCaseBuilder();
    Ipv6DstBuilder ipv6DstBuilder = new Ipv6DstBuilder();
    ipv6DstBuilder.setIpv6Address(new Ipv6Address("0:0:1:0:1:0:0:1"));
    ipv6DstBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1 });
    ipv6DstCaseBuilder.setIpv6Dst(ipv6DstBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6DstCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6Flabel.class);
    entryBuilder.setHasMask(false);
    Ipv6FlabelCaseBuilder ipv6FlabelCaseBuilder = new Ipv6FlabelCaseBuilder();
    Ipv6FlabelBuilder ipv6FlabelBuilder = new Ipv6FlabelBuilder();
    ipv6FlabelBuilder.setIpv6Flabel(new Ipv6FlowLabel(58L));
    ipv6FlabelCaseBuilder.setIpv6Flabel(ipv6FlabelBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6FlabelCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Icmpv6Type.class);
    entryBuilder.setHasMask(false);
    Icmpv6TypeCaseBuilder icmpv6TypeCaseBuilder = new Icmpv6TypeCaseBuilder();
    Icmpv6TypeBuilder icmpv6TypeBuilder = new Icmpv6TypeBuilder();
    icmpv6TypeBuilder.setIcmpv6Type((short) 59);
    icmpv6TypeCaseBuilder.setIcmpv6Type(icmpv6TypeBuilder.build());
    entryBuilder.setMatchEntryValue(icmpv6TypeCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Icmpv6Code.class);
    entryBuilder.setHasMask(false);
    Icmpv6CodeCaseBuilder icmpv6CodeCaseBuilder = new Icmpv6CodeCaseBuilder();
    Icmpv6CodeBuilder icmpv6CodeBuilder = new Icmpv6CodeBuilder();
    icmpv6CodeBuilder.setIcmpv6Code((short) 60);
    icmpv6CodeCaseBuilder.setIcmpv6Code(icmpv6CodeBuilder.build());
    entryBuilder.setMatchEntryValue(icmpv6CodeCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6NdTarget.class);
    entryBuilder.setHasMask(false);
    Ipv6NdTargetCaseBuilder ipv6NdTargetCaseBuilder = new Ipv6NdTargetCaseBuilder();
    Ipv6NdTargetBuilder ipv6NdTargetBuilder = new Ipv6NdTargetBuilder();
    ipv6NdTargetBuilder.setIpv6Address(new Ipv6Address("F:0:0::0:0:0:1"));
    ipv6NdTargetCaseBuilder.setIpv6NdTarget(ipv6NdTargetBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6NdTargetCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6NdSll.class);
    entryBuilder.setHasMask(false);
    Ipv6NdSllCaseBuilder ipv6NdSllCaseBuilder = new Ipv6NdSllCaseBuilder();
    Ipv6NdSllBuilder ipv6NdSllBuilder = new Ipv6NdSllBuilder();
    ipv6NdSllBuilder.setMacAddress(new MacAddress("01:00:03:00:00:06"));
    ipv6NdSllCaseBuilder.setIpv6NdSll(ipv6NdSllBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6NdSllCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6NdTll.class);
    entryBuilder.setHasMask(false);
    Ipv6NdTllCaseBuilder ipv6NdTllCaseBuilder = new Ipv6NdTllCaseBuilder();
    Ipv6NdTllBuilder ipv6NdTllBuilder = new Ipv6NdTllBuilder();
    ipv6NdTllBuilder.setMacAddress(new MacAddress("04:00:02:00:00:08"));
    ipv6NdTllCaseBuilder.setIpv6NdTll(ipv6NdTllBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6NdTllCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(MplsLabel.class);
    entryBuilder.setHasMask(false);
    MplsLabelCaseBuilder mplsLabelCaseBuilder = new MplsLabelCaseBuilder();
    MplsLabelBuilder mplsLabelBuilder = new MplsLabelBuilder();
    mplsLabelBuilder.setMplsLabel(61L);
    mplsLabelCaseBuilder.setMplsLabel(mplsLabelBuilder.build());
    entryBuilder.setMatchEntryValue(mplsLabelCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(MplsTc.class);
    entryBuilder.setHasMask(false);
    MplsTcCaseBuilder mplsTcCaseBuilder = new MplsTcCaseBuilder();
    MplsTcBuilder mplsTcBuilder = new MplsTcBuilder();
    mplsTcBuilder.setTc((short) 62);
    mplsTcCaseBuilder.setMplsTc(mplsTcBuilder.build());
    entryBuilder.setMatchEntryValue(mplsTcCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(MplsBos.class);
    entryBuilder.setHasMask(false);
    MplsBosCaseBuilder mplsBosCaseBuilder = new MplsBosCaseBuilder();
    MplsBosBuilder mplsBosBuilder = new MplsBosBuilder();
    mplsBosBuilder.setBos(true);
    mplsBosCaseBuilder.setMplsBos(mplsBosBuilder.build());
    entryBuilder.setMatchEntryValue(mplsBosCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(PbbIsid.class);
    entryBuilder.setHasMask(true);
    PbbIsidCaseBuilder pbbIsidCaseBuilder = new PbbIsidCaseBuilder();
    PbbIsidBuilder pbbIsidBuilder = new PbbIsidBuilder();
    pbbIsidBuilder.setIsid(64L);
    pbbIsidBuilder.setMask(new byte[] { 0, 1, 2 });
    pbbIsidCaseBuilder.setPbbIsid(pbbIsidBuilder.build());
    entryBuilder.setMatchEntryValue(pbbIsidCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(TunnelId.class);
    entryBuilder.setHasMask(true);
    TunnelIdCaseBuilder tunnelIdCaseBuilder = new TunnelIdCaseBuilder();
    TunnelIdBuilder tunnelIdBuilder = new TunnelIdBuilder();
    tunnelIdBuilder.setTunnelId(new byte[] { 0, 0, 0, 0, 0, 0, 0, 1 });
    tunnelIdBuilder.setMask(new byte[] { 0, 0, 0, 0, 0, 0, 0, 2 });
    tunnelIdCaseBuilder.setTunnelId(tunnelIdBuilder.build());
    entryBuilder.setMatchEntryValue(tunnelIdCaseBuilder.build());
    entries.add(entryBuilder.build());
    entryBuilder = new MatchEntryBuilder();
    entryBuilder.setOxmClass(OpenflowBasicClass.class);
    entryBuilder.setOxmMatchField(Ipv6Exthdr.class);
    entryBuilder.setHasMask(true);
    Ipv6ExthdrCaseBuilder ipv6ExthdrCaseBuilder = new Ipv6ExthdrCaseBuilder();
    Ipv6ExthdrBuilder ipv6ExthdrBuilder = new Ipv6ExthdrBuilder();
    ipv6ExthdrBuilder.setPseudoField(new Ipv6ExthdrFlags(true, false, true, false, true, false, true, false, true));
    ipv6ExthdrBuilder.setMask(new byte[] { 0, 2 });
    ipv6ExthdrCaseBuilder.setIpv6Exthdr(ipv6ExthdrBuilder.build());
    entryBuilder.setMatchEntryValue(ipv6ExthdrCaseBuilder.build());
    entries.add(entryBuilder.build());
    builder.setMatchEntry(entries);
    Match match = builder.build();
    ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();
    matchSerializer.serialize(match, out);
    Assert.assertEquals("Wrong match type", 1, out.readUnsignedShort());
    Assert.assertEquals("Wrong match length", 424, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 0, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 42, out.readUnsignedInt());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 43, out.readUnsignedInt());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 5, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 16, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 1L, out.readLong());
    Assert.assertEquals("Wrong match entry mask", 2L, out.readLong());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 7, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 12, out.readUnsignedByte());
    byte[] array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 1, 0, 3, 0, 0, 6 }, array);
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 0, 0, 5 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 9, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 12, out.readUnsignedByte());
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 4, 0, 2, 0, 0, 8 }, array);
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 0, 0, 2 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 10, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 46, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 13, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 4141, out.readUnsignedShort());
    array = new byte[2];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 9 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 14, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 14, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 16, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 48, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 18, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 49, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 20, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 50, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 23, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 8, out.readUnsignedByte());
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 10, 0, 0, 1 }, array);
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 14 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 25, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 8, out.readUnsignedByte());
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 10, 0, 0, 2 }, array);
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 15 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 26, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6653, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 28, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6654, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 30, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6655, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 32, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6656, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 34, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6657, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 36, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 6658, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 38, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 51, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 40, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 52, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 42, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 2, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 53, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 45, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 8, out.readUnsignedByte());
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 10, 0, 0, 4 }, array);
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 16 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 47, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 8, out.readUnsignedByte());
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 10, 0, 0, 5 }, array);
    array = new byte[4];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 17 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 49, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 12, out.readUnsignedByte());
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 1, 2, 3, 4, 5 }, array);
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 4, 0, 0, 6 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 51, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 12, out.readUnsignedByte());
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 0, 0, 0, 0, 3 }, array);
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 6, 0, 0, 4 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 53, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 32, out.readUnsignedByte());
    array = new byte[16];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, array);
    array = new byte[16];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 55, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 32, out.readUnsignedByte());
    array = new byte[16];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1 }, array);
    array = new byte[16];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 56, out.readUnsignedByte());
    // 8, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 58, out.readUnsignedInt());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 58, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 59, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 60, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 60, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 62, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 16, out.readUnsignedByte());
    array = new byte[16];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 64, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 6, out.readUnsignedByte());
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 1, 0, 3, 0, 0, 6 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 66, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 6, out.readUnsignedByte());
    array = new byte[6];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 4, 0, 2, 0, 0, 8 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 68, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 61, out.readUnsignedInt());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 70, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 62, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 72, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 1, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 75, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 6, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 64, out.readUnsignedMedium());
    array = new byte[3];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry mask", new byte[] { 0, 1, 2 }, array);
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 77, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 16, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 1L, out.readLong());
    Assert.assertEquals("Wrong match entry mask", 2L, out.readLong());
    Assert.assertEquals("Wrong match entry class", 0x8000, out.readUnsignedShort());
    Assert.assertEquals("Wrong match entry field & hasMask", 79, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry length", 4, out.readUnsignedByte());
    Assert.assertEquals("Wrong match entry value", 358, out.readUnsignedShort());
    array = new byte[2];
    out.readBytes(array);
    Assert.assertArrayEquals("Wrong match entry value", new byte[] { 0, 2 }, array);
    Assert.assertTrue("Wrong padding", out.readableBytes() == 0);
}
Also used : Ipv6NdTargetBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.nd.target._case.Ipv6NdTargetBuilder) ArrayList(java.util.ArrayList) Ipv6SrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6SrcCaseBuilder) InPhyPortBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.in.phy.port._case.InPhyPortBuilder) MatchEntryBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder) Ipv6FlabelBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.flabel._case.Ipv6FlabelBuilder) ArpThaCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpThaCaseBuilder) Ipv6NdTllCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6NdTllCaseBuilder) EthTypeBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.type._case.EthTypeBuilder) IpProtoBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ip.proto._case.IpProtoBuilder) VlanVidBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.vlan.vid._case.VlanVidBuilder) IpEcnBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ip.ecn._case.IpEcnBuilder) Icmpv4TypeBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.icmpv4.type._case.Icmpv4TypeBuilder) MacAddress(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress) MplsLabelCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.MplsLabelCaseBuilder) IpDscpBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ip.dscp._case.IpDscpBuilder) Ipv6ExthdrFlags(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.Ipv6ExthdrFlags) MatchEntry(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry) SctpDstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.sctp.dst._case.SctpDstBuilder) ArpOpBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.op._case.ArpOpBuilder) Icmpv6TypeCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv6TypeCaseBuilder) ByteBuf(io.netty.buffer.ByteBuf) SctpSrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.sctp.src._case.SctpSrcBuilder) Icmpv4CodeBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.icmpv4.code._case.Icmpv4CodeBuilder) UdpSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpSrcCaseBuilder) IpEcnCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.IpEcnCaseBuilder) Ipv4Address(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address) EthSrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.src._case.EthSrcBuilder) MplsBosBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.mpls.bos._case.MplsBosBuilder) Icmpv4TypeCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv4TypeCaseBuilder) Ipv6NdSllBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.nd.sll._case.Ipv6NdSllBuilder) Ipv6FlabelCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6FlabelCaseBuilder) Ipv6SrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.src._case.Ipv6SrcBuilder) ArpTpaCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpTpaCaseBuilder) MplsLabelBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.mpls.label._case.MplsLabelBuilder) Dscp(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Dscp) IpDscp(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.IpDscp) Ipv6ExthdrCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6ExthdrCaseBuilder) MatchBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.grouping.MatchBuilder) Icmpv6CodeBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.icmpv6.code._case.Icmpv6CodeBuilder) Icmpv6CodeCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv6CodeCaseBuilder) ArpOpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpOpCaseBuilder) EtherType(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType) ArpSpaBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.spa._case.ArpSpaBuilder) Ipv6DstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.dst._case.Ipv6DstBuilder) EthDstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.dst._case.EthDstBuilder) Icmpv6TypeBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.icmpv6.type._case.Icmpv6TypeBuilder) EthDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthDstCaseBuilder) Ipv4DstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv4DstCaseBuilder) EthSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthSrcCaseBuilder) Icmpv4CodeCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Icmpv4CodeCaseBuilder) MplsBosCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.MplsBosCaseBuilder) SctpSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.SctpSrcCaseBuilder) PbbIsidCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.PbbIsidCaseBuilder) TcpSrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.tcp.src._case.TcpSrcBuilder) UdpDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.UdpDstCaseBuilder) VlanPcpBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.vlan.pcp._case.VlanPcpBuilder) ArpThaBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.tha._case.ArpThaBuilder) IpProtoCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.IpProtoCaseBuilder) UdpDstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.udp.dst._case.UdpDstBuilder) TcpSrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TcpSrcCaseBuilder) TcpDstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.tcp.dst._case.TcpDstBuilder) ArpShaBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.sha._case.ArpShaBuilder) VlanPcpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder) PortNumber(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber) Ipv4SrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv4.src._case.Ipv4SrcBuilder) Ipv4SrcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv4SrcCaseBuilder) VlanVidCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanVidCaseBuilder) MetadataCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.MetadataCaseBuilder) Ipv6NdTargetCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6NdTargetCaseBuilder) SctpDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.SctpDstCaseBuilder) TcpDstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TcpDstCaseBuilder) Match(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.grouping.Match) ArpTpaBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.tpa._case.ArpTpaBuilder) InPhyPortCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.InPhyPortCaseBuilder) InPortBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.in.port._case.InPortBuilder) UdpSrcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.udp.src._case.UdpSrcBuilder) Ipv4DstBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv4.dst._case.Ipv4DstBuilder) PbbIsidBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.pbb.isid._case.PbbIsidBuilder) ArpShaCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpShaCaseBuilder) Ipv6NdTllBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.nd.tll._case.Ipv6NdTllBuilder) MplsTcBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.mpls.tc._case.MplsTcBuilder) Ipv6Address(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Address) Ipv6DstCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6DstCaseBuilder) Ipv6NdSllCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.Ipv6NdSllCaseBuilder) MetadataBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.metadata._case.MetadataBuilder) IpDscpCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.IpDscpCaseBuilder) Ipv6ExthdrBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ipv6.exthdr._case.Ipv6ExthdrBuilder) TunnelIdCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TunnelIdCaseBuilder) Ipv6FlowLabel(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6FlowLabel) EthTypeCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthTypeCaseBuilder) TunnelIdBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.tunnel.id._case.TunnelIdBuilder) InPortCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.InPortCaseBuilder) ArpSpaCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpSpaCaseBuilder) MplsTcCaseBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.MplsTcCaseBuilder) Test(org.junit.Test)

Aggregations

ArrayList (java.util.ArrayList)5 Test (org.junit.Test)5 MacAddress (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress)5 VlanPcpCaseBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.VlanPcpCaseBuilder)5 VlanPcpBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.vlan.pcp._case.VlanPcpBuilder)5 MatchEntryBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder)4 BigInteger (java.math.BigInteger)3 Ipv4Address (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address)3 OutputActionBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputActionBuilder)3 PortNumber (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber)3 MatchEntry (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry)3 ByteBuf (io.netty.buffer.ByteBuf)2 List (java.util.List)2 ActionConvertorData (org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.data.ActionConvertorData)2 Dscp (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Dscp)2 Ipv4Prefix (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Prefix)2 SetDlDstActionCaseBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetDlDstActionCaseBuilder)2 SetDlSrcActionCaseBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetDlSrcActionCaseBuilder)2 SetNwDstActionCaseBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetNwDstActionCaseBuilder)2 SetNwSrcActionCaseBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetNwSrcActionCaseBuilder)2