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; }
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(); }
/** * 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 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; }
writeMetadataBuilder.setMetadataMask(new BigInteger(OFConstants.SIGNUM_UNSIGNED, writeMetadataCase.getWriteMetadata().getMetadataMask())); writeMetadataCaseBuilder.setWriteMetadata(writeMetadataBuilder.build()); salInstruction = writeMetadataCaseBuilder.build(); } else { continue;
builder.setInstruction((new WriteMetadataCaseBuilder() .setWriteMetadata(new WriteMetadataBuilder().build()) .build())); } else if (currInstructionType instanceof WriteActionsCase) { builder.setInstruction((new WriteActionsCaseBuilder()