+ reg1 {
+ @Override
+ protected Class<? extends MatchField> getMatchType() {
+ return MatchField.class;
+ }
+
+ @Override
+ public void createInnerMatchBuilder(MatchInfo matchInfo, Map<Class<?>, Object> mapMatchBuilder) {
+ NxmNxRegBuilder regdataBuilder = (NxmNxRegBuilder) mapMatchBuilder.get(NxmNxRegBuilder.class);
+ if (regdataBuilder == null) {
+ regdataBuilder = new NxmNxRegBuilder();
+ mapMatchBuilder.put(NxmNxRegBuilder.class, regdataBuilder);
+ }
+ long[] metadataValues = matchInfo.getMatchValues();
+ regdataBuilder.setValue(metadataValues[0]).build();
+ ArrayList<ExtensionList> extensions = new ArrayList<>();
+ NxAugMatchNodesNodeTableFlow am = new NxAugMatchNodesNodeTableFlowBuilder().setNxmNxReg(new NxmNxRegBuilder().setReg(NxmNxReg1.class).setValue(metadataValues[0]).build()).build();
+ extensions.add(new ExtensionListBuilder().setExtensionKey(NxmNxReg1Key.class).setExtension(new ExtensionBuilder().addAugmentation(NxAugMatchNodesNodeTableFlow.class, am).build()).build());
+ GeneralAugMatchNodesNodeTableFlow m = new GeneralAugMatchNodesNodeTableFlowBuilder().setExtensionList(extensions).build();
+ }
+
+ @Override
+ public void setMatch(MatchBuilder matchBuilderInOut, MatchInfo matchInfo, Map<Class<?>, Object> mapMatchBuilder) {
+ List<ExtensionList> extensions = new ArrayList<>();
+ long[] matchvalues = matchInfo.getMatchValues();
+ NxAugMatchNodesNodeTableFlow am = new NxAugMatchNodesNodeTableFlowBuilder().setNxmNxReg(new NxmNxRegBuilder().setReg(NxmNxReg1.class).setValue(matchvalues[0]).build()).build();
+ extensions.add(new ExtensionListBuilder().setExtensionKey(NxmNxReg1Key.class).setExtension(new ExtensionBuilder().addAugmentation(NxAugMatchNodesNodeTableFlow.class, am).build()).build());
+ GeneralAugMatchNodesNodeTableFlow m = new GeneralAugMatchNodesNodeTableFlowBuilder().setExtensionList(extensions).build();
+ matchBuilderInOut.addAugmentation(GeneralAugMatchNodesNodeTableFlow.class, m);
+
+ }
+ },
+