*/
package org.opendaylight.openflowplugin.applications.frsync.impl;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.GroupActionCase;
import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.GroupActionCaseBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.ApplyActionsCaseBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.apply.actions._case.ApplyActionsBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.BucketId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.Buckets;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.BucketsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.buckets.Bucket;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.buckets.BucketBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.Group;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.GroupBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.band.type.band.type.DropBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.MeterBandHeadersBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeaderBuilder;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.opendaylight.yangtools.yang.common.Uint16;
import org.opendaylight.yangtools.yang.common.Uint32;
import org.opendaylight.yangtools.yang.common.Uint8;
public static Group createGroupWithAction(final Uint32 groupIdValue) {
final Buckets buckets = new BucketsBuilder()
- .setBucket(Collections.singletonList(new BucketBuilder()
- .setAction(Collections.singletonList(new ActionBuilder()
+ .setBucket(BindingMap.of(new BucketBuilder()
+ .setBucketId(new BucketId(Uint32.ZERO))
+ .setAction(BindingMap.of(new ActionBuilder()
+ .setOrder(0)
.setAction(new OutputActionCaseBuilder()
.setOutputAction(new OutputActionBuilder()
.setOutputNodeConnector(new Uri("ut-port-1"))
.setTableId(Uint8.valueOf(42))
.setMatch(new MatchBuilder().build())
.setInstructions(new InstructionsBuilder()
- .setInstruction(Collections.singletonList(new InstructionBuilder()
+ .setInstruction(BindingMap.of(new InstructionBuilder()
+ .setOrder(0)
.setInstruction(new ApplyActionsCaseBuilder()
.setApplyActions(new ApplyActionsBuilder()
- .setAction(Collections.singletonList(new ActionBuilder()
+ .setAction(BindingMap.of(new ActionBuilder()
+ .setOrder(0)
.setAction(new OutputActionCaseBuilder()
.setOutputAction(new OutputActionBuilder()
.setOutputNodeConnector(new Uri("ut-port-1"))
return new MeterBuilder()
.setMeterId(new MeterId(meterIdValue))
.setMeterBandHeaders(new MeterBandHeadersBuilder()
- .setMeterBandHeader(Collections.singletonList(new MeterBandHeaderBuilder()
+ .setMeterBandHeader(BindingMap.of(new MeterBandHeaderBuilder()
.setBandId(new BandId(Uint32.valueOf(42)))
.setBandType(new DropBuilder()
.setDropRate(Uint32.valueOf(43))
}
public static Group createGroupWithPreconditions(final long groupIdValue, final long... requiredId) {
- final List<Action> actionBag = new ArrayList<>();
+ final BindingMap.Builder<ActionKey, Action> actionBag = BindingMap.orderedBuilder(requiredId.length);
int key = 0;
for (long groupIdPrecondition : requiredId) {
final GroupAction groupAction = new GroupActionBuilder()
actionBag.add(action);
}
- final Bucket bucket = new BucketBuilder()
- .setAction(actionBag)
- .build();
- final Buckets buckets = new BucketsBuilder()
- .setBucket(Collections.singletonList(bucket))
- .build();
-
return new GroupBuilder()
.setGroupId(new GroupId(Uint32.valueOf(groupIdValue)))
- .setBuckets(buckets)
+ .setBuckets(new BucketsBuilder()
+ .setBucket(BindingMap.of(new BucketBuilder()
+ .setBucketId(new BucketId(Uint32.ZERO))
+ .setAction(actionBag.build())
+ .build()))
+ .build())
.build();
}
}