public static WriteMetadataCase createInstructionMetadata(int order, BigInteger metadataVal, BigInteger metadataMask) { WriteMetadataBuilder wmb = new WriteMetadataBuilder(); wmb.setMetadata(metadataVal); wmb.setMetadataMask(metadataMask); WriteMetadataCaseBuilder wmcb = new WriteMetadataCaseBuilder().setWriteMetadata(wmb.build()); return wmcb.build(); }
private WriteMetadataCaseImpl(WriteMetadataCaseBuilder base) { this._writeMetadata = base.getWriteMetadata(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.WriteMetadataCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.WriteMetadataCase>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.WriteMetadataCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.WriteMetadataCase>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }
private TableFeaturePropertiesBuilder createInstructionsMissTblFeatureProp() { // To set the instructions miss -- "t7" TableFeaturePropertiesBuilder tableFeatureProperty = new TableFeaturePropertiesBuilder(); List<Instruction> instLst = new ArrayList<Instruction>(); InstructionBuilder ib1 = new InstructionBuilder(); ib1.setOrder(1); ib1.setInstruction(new org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.WriteMetadataCaseBuilder().build()); ib1.setKey(new InstructionKey(1)); InstructionBuilder ib2 = new InstructionBuilder(); ib2.setOrder(2); ib2.setInstruction(new org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.MeterCaseBuilder().build()); ib2.setKey(new InstructionKey(2)); tableFeatureProperty.setTableFeaturePropType( new org.opendaylight.yang.gen.v1.urn.opendaylight.table.types.rev131026.table.feature.prop.type.table.feature.prop.type.InstructionsMissBuilder().setInstructionsMiss( new org.opendaylight.yang.gen.v1.urn.opendaylight.table.types.rev131026.table.feature.prop.type.table.feature.prop.type.instructions.miss.InstructionsMissBuilder().setInstruction(instLst).build()).build()); TableFeaturePropertiesKey keyValue = new TableFeaturePropertiesKey(0); tableFeatureProperty.setKey(keyValue); tableFeatureProperty.setOrder(1); return tableFeatureProperty; }
/** * Set IPv4 Source Address Instructions * @param ib Map InstructionBuilder * @param metaData BigInteger representing the OpenFlow metadata * @param metaDataMask BigInteger representing the OpenFlow metadata mask * @return instructionbuilder with new attributes */ public static InstructionBuilder createMetadataInstructions(InstructionBuilder ib, BigInteger metaData, BigInteger metaDataMask) { WriteMetadataBuilder aab = new WriteMetadataBuilder(); aab.setMetadata(metaData); aab.setMetadataMask(metaDataMask); ib.setInstruction(new WriteMetadataCaseBuilder().setWriteMetadata(aab.build()).build()); /** * * TODO Determine why the following fails serialization * with a null value. Per the spec it is optional. * The metadata match, the Flowmod works w/o an accompanying mask. * * if (metaDataMask != null) { * aab.setMetadataMask(metaDataMask); * } * */ return ib; }
/** * Set IPv4 Source Address Instructions * @param ib Map InstructionBuilder * @param metaData BigInteger representing the OpenFlow metadata * @param metaDataMask BigInteger representing the OpenFlow metadata mask * @return instructionbuilder with new attributes */ public static InstructionBuilder createMetadataInstructions(InstructionBuilder ib, BigInteger metaData, BigInteger metaDataMask) { WriteMetadataBuilder aab = new WriteMetadataBuilder(); aab.setMetadata(metaData); aab.setMetadataMask(metaDataMask); ib.setInstruction(new WriteMetadataCaseBuilder().setWriteMetadata(aab.build()).build()); /** * * TODO Determine why the following fails serialization * with a null value. Per the spec it is optional. * The metadata match, the Flowmod works w/o an accompanying mask. * * if (metaDataMask != null) { * aab.setMetadataMask(metaDataMask); * } * */ return ib; }
private static InstructionsBuilder createMetadataInstructions() { final WriteMetadataBuilder aab = new WriteMetadataBuilder(); aab.setMetadata(BigInteger.valueOf(10)); aab.setMetadataMask(BigInteger.valueOf(10)); final InstructionBuilder ib = new InstructionBuilder(); ib.setInstruction(new WriteMetadataCaseBuilder().setWriteMetadata(aab.build()).build()); // Put our Instruction in a list of Instructions final InstructionsBuilder isb = new InstructionsBuilder(); final List<Instruction> instructions = new ArrayList<Instruction>(); ib.setKey(new InstructionKey(0)); instructions.add(ib.build()); isb.setInstruction(instructions); return isb; }
.build())); } else if (currInstructionType instanceof WriteMetadataCase) { builder.setInstruction((new WriteMetadataCaseBuilder() .setWriteMetadata(new WriteMetadataBuilder().build()) .build())); } else if (currInstructionType instanceof WriteActionsCase) { builder.setInstruction((new WriteActionsCaseBuilder()
org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instruction.grouping.instruction.choice.WriteMetadataCase writeMetadataCase = ((org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instruction.grouping.instruction.choice.WriteMetadataCase) switchInst.getInstructionChoice()); WriteMetadataCaseBuilder writeMetadataCaseBuilder = new WriteMetadataCaseBuilder(); WriteMetadataBuilder writeMetadataBuilder = new WriteMetadataBuilder(); writeMetadataBuilder.setMetadata(new BigInteger(OFConstants.SIGNUM_UNSIGNED, writeMetadataCase.getWriteMetadata().getMetadata())); writeMetadataBuilder.setMetadataMask(new BigInteger(OFConstants.SIGNUM_UNSIGNED, writeMetadataCase.getWriteMetadata().getMetadataMask())); writeMetadataCaseBuilder.setWriteMetadata(writeMetadataBuilder.build()); salInstruction = writeMetadataCaseBuilder.build(); } else { continue;