Change EchoReq/Res factories to version assignable
[openflowjava.git] / openflow-protocol-impl / src / test / java / org / opendaylight / openflowjava / protocol / impl / util / OF13ActionsSerializerTest.java
index ed47b0141be9fd18a4450276d97966a0330f2d3f..66462d8ba4dbed82b87f036c7d75c68239ac622e 100644 (file)
@@ -19,48 +19,42 @@ import org.junit.Test;
 import org.opendaylight.openflowjava.protocol.api.extensibility.SerializerRegistry;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.impl.serialization.SerializerRegistryImpl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.EthertypeAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.EthertypeActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.GroupIdAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.GroupIdActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MaxLengthAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MaxLengthActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MplsTtlAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MplsTtlActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.NwTtlAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.NwTtlActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.OxmFieldsAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.OxmFieldsActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortNumberMatchEntry;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortNumberMatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.QueueIdAction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.QueueIdActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlIn;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlOut;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecMplsTtl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecNwTtl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Group;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopMpls;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopPbb;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushMpls;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushPbb;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetField;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.CopyTtlInCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.CopyTtlOutCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.DecMplsTtlCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.DecNwTtlCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.GroupCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.OutputActionCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PopMplsCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PopPbbCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PopVlanCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PushMplsCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PushPbbCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.PushVlanCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetMplsTtlCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetNwTtlCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetQueueCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.group._case.GroupActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.pop.mpls._case.PopMplsActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.mpls._case.PushMplsActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.pbb._case.PushPbbActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.push.vlan._case.PushVlanActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.field._case.SetFieldActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.mpls.ttl._case.SetMplsTtlActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.nw.ttl._case.SetNwTtlActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.queue._case.SetQueueActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.InPort;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OpenflowBasicClass;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.InPort;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OpenflowBasicClass;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.InPortCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.in.port._case.InPortBuilder;
 
 /**
  * @author michal.polkorab
@@ -86,94 +80,104 @@ public class OF13ActionsSerializerTest {
     public void test() {
         List<Action> actions = new ArrayList<>();
         ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Output.class);
-        PortActionBuilder port = new PortActionBuilder();
-        port.setPort(new PortNumber(42L));
-        actionBuilder.addAugmentation(PortAction.class, port.build());
-        MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();
-        maxLen.setMaxLength(52);
-        actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());
+        OutputActionCaseBuilder caseBuilder = new OutputActionCaseBuilder();
+        OutputActionBuilder outputBuilder = new OutputActionBuilder();
+        outputBuilder.setPort(new PortNumber(42L));
+        outputBuilder.setMaxLength(52);
+        caseBuilder.setOutputAction(outputBuilder.build());
+        actionBuilder.setActionChoice(caseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(CopyTtlOut.class);
+        actionBuilder.setActionChoice(new CopyTtlOutCaseBuilder().build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(CopyTtlIn.class);
+        actionBuilder.setActionChoice(new CopyTtlInCaseBuilder().build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetMplsTtl.class);
-        MplsTtlActionBuilder mplsTtl = new MplsTtlActionBuilder();
-        mplsTtl.setMplsTtl((short) 4);
-        actionBuilder.addAugmentation(MplsTtlAction.class, mplsTtl.build());
+        SetMplsTtlCaseBuilder setMplsTtlCaseBuilder = new SetMplsTtlCaseBuilder();
+        SetMplsTtlActionBuilder setMplsTtlBuilder = new SetMplsTtlActionBuilder();
+        setMplsTtlBuilder.setMplsTtl((short) 4);
+        setMplsTtlCaseBuilder.setSetMplsTtlAction(setMplsTtlBuilder.build());
+        actionBuilder.setActionChoice(setMplsTtlCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(DecMplsTtl.class);
+        actionBuilder.setActionChoice(new DecMplsTtlCaseBuilder().build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PushVlan.class);
-        EthertypeActionBuilder etherType = new EthertypeActionBuilder();
-        etherType.setEthertype(new EtherType(16));
-        actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());
+        PushVlanCaseBuilder pushVlanCaseBuilder = new PushVlanCaseBuilder();
+        PushVlanActionBuilder pushVlanBuilder = new PushVlanActionBuilder();
+        pushVlanBuilder.setEthertype(new EtherType(new EtherType(16)));
+        pushVlanCaseBuilder.setPushVlanAction(pushVlanBuilder.build());
+        actionBuilder.setActionChoice(pushVlanCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PopVlan.class);
+        actionBuilder.setActionChoice(new PopVlanCaseBuilder().build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PushMpls.class);
-        etherType = new EthertypeActionBuilder();
-        etherType.setEthertype(new EtherType(17));
-        actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());
+        PushMplsCaseBuilder pushMplsCaseBuilder = new PushMplsCaseBuilder();
+        PushMplsActionBuilder pushMplsBuilder = new PushMplsActionBuilder();
+        pushMplsBuilder.setEthertype(new EtherType(new EtherType(17)));
+        pushMplsCaseBuilder.setPushMplsAction(pushMplsBuilder.build());
+        actionBuilder.setActionChoice(pushMplsCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PopMpls.class);
-        etherType = new EthertypeActionBuilder();
-        etherType.setEthertype(new EtherType(18));
-        actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());
+        PopMplsCaseBuilder popMplsCaseBuilder = new PopMplsCaseBuilder();
+        PopMplsActionBuilder popMplsBuilder = new PopMplsActionBuilder();
+        popMplsBuilder.setEthertype(new EtherType(new EtherType(18)));
+        popMplsCaseBuilder.setPopMplsAction(popMplsBuilder.build());
+        actionBuilder.setActionChoice(popMplsCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetQueue.class);
-        QueueIdActionBuilder queueId = new QueueIdActionBuilder();
-        queueId.setQueueId(1234L);
-        actionBuilder.addAugmentation(QueueIdAction.class, queueId.build());
+        SetQueueCaseBuilder setQueueCaseBuilder = new SetQueueCaseBuilder();
+        SetQueueActionBuilder setQueueBuilder = new SetQueueActionBuilder();
+        setQueueBuilder.setQueueId(1234L);
+        setQueueCaseBuilder.setSetQueueAction(setQueueBuilder.build());
+        actionBuilder.setActionChoice(setQueueCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Group.class);
-        GroupIdActionBuilder group = new GroupIdActionBuilder();
-        group.setGroupId(555L);
-        actionBuilder.addAugmentation(GroupIdAction.class, group.build());
+        GroupCaseBuilder groupCaseBuilder = new GroupCaseBuilder();
+        GroupActionBuilder groupActionBuilder = new GroupActionBuilder();
+        groupActionBuilder.setGroupId(555L);
+        groupCaseBuilder.setGroupAction(groupActionBuilder.build());
+        actionBuilder.setActionChoice(groupCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetNwTtl.class);
-        NwTtlActionBuilder nwTtl = new NwTtlActionBuilder();
-        nwTtl.setNwTtl((short) 8);
-        actionBuilder.addAugmentation(NwTtlAction.class, nwTtl.build());
+        SetNwTtlCaseBuilder nwTtlCaseBuilder = new SetNwTtlCaseBuilder();
+        SetNwTtlActionBuilder nwTtlBuilder = new SetNwTtlActionBuilder();
+        nwTtlBuilder.setNwTtl((short) 8);
+        nwTtlCaseBuilder.setSetNwTtlAction(nwTtlBuilder.build());
+        actionBuilder.setActionChoice(nwTtlCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(DecNwTtl.class);
+        actionBuilder.setActionChoice(new DecNwTtlCaseBuilder().build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetField.class);
-        OxmFieldsActionBuilder matchEntries = new OxmFieldsActionBuilder();
-        List<MatchEntries> entries = new ArrayList<>();
-        MatchEntriesBuilder matchBuilder = new MatchEntriesBuilder();
+        SetFieldCaseBuilder setFieldCaseBuilder = new SetFieldCaseBuilder();
+        SetFieldActionBuilder setFieldBuilder = new SetFieldActionBuilder();
+        List<MatchEntry> entries = new ArrayList<>();
+        MatchEntryBuilder matchBuilder = new MatchEntryBuilder();
         matchBuilder.setOxmClass(OpenflowBasicClass.class);
         matchBuilder.setOxmMatchField(InPort.class);
         matchBuilder.setHasMask(false);
-        PortNumberMatchEntryBuilder portBuilder = new PortNumberMatchEntryBuilder();
-        portBuilder.setPortNumber(new PortNumber(1L));
-        matchBuilder.addAugmentation(PortNumberMatchEntry.class, portBuilder.build());
+        InPortCaseBuilder inPortCaseBuilder = new InPortCaseBuilder();
+        InPortBuilder inPortBuilder = new InPortBuilder();
+        inPortBuilder.setPortNumber(new PortNumber(1L));
+        inPortCaseBuilder.setInPort(inPortBuilder.build());
+        matchBuilder.setMatchEntryValue(inPortCaseBuilder.build());
         entries.add(matchBuilder.build());
-        matchEntries.setMatchEntries(entries);
-        actionBuilder.addAugmentation(OxmFieldsAction.class, matchEntries.build());
+        setFieldBuilder.setMatchEntry(entries);
+        setFieldCaseBuilder.setSetFieldAction(setFieldBuilder.build());
+        actionBuilder.setActionChoice(setFieldCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PushPbb.class);
-        etherType = new EthertypeActionBuilder();
-        etherType.setEthertype(new EtherType(19));
-        actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());
+        PushPbbCaseBuilder pushPbbCaseBuilder = new PushPbbCaseBuilder();
+        PushPbbActionBuilder pushPbbBuilder = new PushPbbActionBuilder();
+        pushPbbBuilder.setEthertype(new EtherType(new EtherType(19)));
+        pushPbbCaseBuilder.setPushPbbAction(pushPbbBuilder.build());
+        actionBuilder.setActionChoice(pushPbbCaseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(PopPbb.class);
+        actionBuilder.setActionChoice(new PopPbbCaseBuilder().build());
         actions.add(actionBuilder.build());
 
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();
@@ -250,28 +254,30 @@ public class OF13ActionsSerializerTest {
     public void testHeaders() {
         List<Action> actions = new ArrayList<>();
         ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Output.class);
-        PortActionBuilder port = new PortActionBuilder();
-        port.setPort(new PortNumber(42L));
-        actionBuilder.addAugmentation(PortAction.class, port.build());
-        MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();
-        maxLen.setMaxLength(52);
-        actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());
+        OutputActionCaseBuilder caseBuilder = new OutputActionCaseBuilder();
+        OutputActionBuilder outputBuilder = new OutputActionBuilder();
+        outputBuilder.setPort(new PortNumber(42L));
+        outputBuilder.setMaxLength(52);
+        caseBuilder.setOutputAction(outputBuilder.build());
+        actionBuilder.setActionChoice(caseBuilder.build());
         actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetField.class);
-        OxmFieldsActionBuilder matchEntries = new OxmFieldsActionBuilder();
-        List<MatchEntries> entries = new ArrayList<>();
-        MatchEntriesBuilder matchBuilder = new MatchEntriesBuilder();
+        SetFieldCaseBuilder setFieldCaseBuilder = new SetFieldCaseBuilder();
+        SetFieldActionBuilder setFieldBuilder = new SetFieldActionBuilder();
+        List<MatchEntry> entries = new ArrayList<>();
+        MatchEntryBuilder matchBuilder = new MatchEntryBuilder();
         matchBuilder.setOxmClass(OpenflowBasicClass.class);
         matchBuilder.setOxmMatchField(InPort.class);
         matchBuilder.setHasMask(false);
-        PortNumberMatchEntryBuilder portBuilder = new PortNumberMatchEntryBuilder();
-        portBuilder.setPortNumber(new PortNumber(1L));
-        matchBuilder.addAugmentation(PortNumberMatchEntry.class, portBuilder.build());
+        InPortCaseBuilder inPortCaseBuilder = new InPortCaseBuilder();
+        InPortBuilder inPortBuilder = new InPortBuilder();
+        inPortBuilder.setPortNumber(new PortNumber(1L));
+        inPortCaseBuilder.setInPort(inPortBuilder.build());
+        matchBuilder.setMatchEntryValue(inPortCaseBuilder.build());
         entries.add(matchBuilder.build());
-        matchEntries.setMatchEntries(entries);
-        actionBuilder.addAugmentation(OxmFieldsAction.class, matchEntries.build());
+        setFieldBuilder.setMatchEntry(entries);
+        setFieldCaseBuilder.setSetFieldAction(setFieldBuilder.build());
+        actionBuilder.setActionChoice(setFieldCaseBuilder.build());
         actions.add(actionBuilder.build());
 
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();