* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
package org.opendaylight.openflowjava.protocol.impl.deserialization.factories;
+import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint16;
+import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint32;
+
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.netty.buffer.ByteBuf;
import java.util.ArrayList;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.queue.get.config.reply.QueuesBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.queue.property.header.QueueProperty;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.queue.property.header.QueuePropertyBuilder;
+import org.opendaylight.yangtools.yang.common.Uint32;
/**
* Translates QueueGetConfigReply messages.
private DeserializerRegistry registry;
@Override
- public GetQueueConfigOutput deserialize(ByteBuf rawMessage) {
+ public GetQueueConfigOutput deserialize(final ByteBuf rawMessage) {
Objects.requireNonNull(registry);
- GetQueueConfigOutputBuilder builder = new GetQueueConfigOutputBuilder();
- builder.setVersion((short) EncodeConstants.OF13_VERSION_ID);
- builder.setXid(rawMessage.readUnsignedInt());
- builder.setPort(new PortNumber(rawMessage.readUnsignedInt()));
+ GetQueueConfigOutputBuilder builder = new GetQueueConfigOutputBuilder()
+ .setVersion(EncodeConstants.OF_VERSION_1_3)
+ .setXid(readUint32(rawMessage))
+ .setPort(new PortNumber(readUint32(rawMessage)));
rawMessage.skipBytes(PADDING_IN_QUEUE_GET_CONFIG_REPLY_HEADER);
builder.setQueues(createQueuesList(rawMessage));
return builder.build();
}
- private List<Queues> createQueuesList(ByteBuf input) {
+ private List<Queues> createQueuesList(final ByteBuf input) {
List<Queues> queuesList = new ArrayList<>();
while (input.readableBytes() > 0) {
- QueuesBuilder queueBuilder = new QueuesBuilder();
- queueBuilder.setQueueId(new QueueId(input.readUnsignedInt()));
- queueBuilder.setPort(new PortNumber(input.readUnsignedInt()));
+ QueuesBuilder queueBuilder = new QueuesBuilder()
+ .setQueueId(new QueueId(readUint32(input)))
+ .setPort(new PortNumber(readUint32(input)));
int length = input.readUnsignedShort();
input.skipBytes(PADDING_IN_PACKET_QUEUE_HEADER);
queueBuilder.setQueueProperty(createPropertiesList(input, length - PACKET_QUEUE_LENGTH));
return queuesList;
}
- private List<QueueProperty> createPropertiesList(ByteBuf input, int length) {
+ private List<QueueProperty> createPropertiesList(final ByteBuf input, final int length) {
int propertiesLength = length;
List<QueueProperty> propertiesList = new ArrayList<>();
while (propertiesLength > 0) {
input.skipBytes(PADDING_IN_QUEUE_PROPERTY_HEADER);
if (property.equals(QueueProperties.OFPQTMINRATE) || property.equals(QueueProperties.OFPQTMAXRATE)) {
propertiesBuilder.addAugmentation(new RateQueuePropertyBuilder()
- .setRate(input.readUnsignedShort())
+ .setRate(readUint16(input))
.build());
input.skipBytes(PADDING_IN_RATE_QUEUE_PROPERTY);
} else if (property.equals(QueueProperties.OFPQTEXPERIMENTER)) {
- long expId = input.readUnsignedInt();
+ final Uint32 expId = readUint32(input);
input.readerIndex(propertyStartIndex);
OFDeserializer<QueueProperty> deserializer = registry.getDeserializer(
ExperimenterDeserializerKeyFactory.createQueuePropertyDeserializerKey(
- EncodeConstants.OF13_VERSION_ID, expId));
+ EncodeConstants.OF_VERSION_1_3, expId));
propertiesList.add(deserializer.deserialize(input));
continue;
}
}
@Override
- public void injectDeserializerRegistry(DeserializerRegistry deserializerRegistry) {
+ public void injectDeserializerRegistry(final DeserializerRegistry deserializerRegistry) {
this.registry = deserializerRegistry;
}
}