import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.BarrierInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.BarrierInputBuilder;
* OF protocol versions: 1.0, 1.3, 1.4, 1.5.
* @author giuseppex.petralia@intel.com
*/
-public class BarrierInputMessageFactory extends VersionAssignableFactory implements OFDeserializer<BarrierInput> {
-
+public class BarrierInputMessageFactory extends VersionAssignableFactory<BarrierInput> {
@Override
- public BarrierInput deserialize(ByteBuf rawMessage) {
+ public BarrierInput deserialize(final ByteBuf rawMessage) {
return new BarrierInputBuilder()
.setVersion(getVersion())
.setXid(readUint32(rawMessage))
* 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.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.BarrierOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.BarrierOutputBuilder;
* @author michal.polkorab
* @author timotej.kubas
*/
-public class BarrierReplyMessageFactory extends VersionAssignableFactory implements OFDeserializer<BarrierOutput> {
-
+public class BarrierReplyMessageFactory extends VersionAssignableFactory<BarrierOutput> {
@Override
- public BarrierOutput deserialize(ByteBuf rawMessage) {
+ public BarrierOutput deserialize(final ByteBuf rawMessage) {
return new BarrierOutputBuilder()
.setVersion(getVersion())
.setXid(readUint32(rawMessage))
* 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.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.EchoOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.EchoOutputBuilder;
* @author michal.polkorab
* @author timotej.kubas
*/
-public class EchoReplyMessageFactory extends VersionAssignableFactory implements OFDeserializer<EchoOutput> {
-
+public class EchoReplyMessageFactory extends VersionAssignableFactory<EchoOutput> {
@Override
- public EchoOutput deserialize(ByteBuf rawMessage) {
+ public EchoOutput deserialize(final ByteBuf rawMessage) {
EchoOutputBuilder builder = new EchoOutputBuilder();
builder.setVersion(getVersion());
builder.setXid(readUint32(rawMessage));
}
return builder.build();
}
-
}
* 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.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.EchoRequestMessage;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.EchoRequestMessageBuilder;
* @author michal.polkorab
* @author timotej.kubas
*/
-public class EchoRequestMessageFactory extends VersionAssignableFactory implements OFDeserializer<EchoRequestMessage> {
-
+public class EchoRequestMessageFactory extends VersionAssignableFactory<EchoRequestMessage> {
@Override
- public EchoRequestMessage deserialize(ByteBuf rawMessage) {
+ public EchoRequestMessage deserialize(final ByteBuf rawMessage) {
EchoRequestMessageBuilder builder = new EchoRequestMessageBuilder();
builder.setVersion(getVersion());
builder.setXid(readUint32(rawMessage));
import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GetConfigInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GetConfigInputBuilder;
* OF protocol versions: 1.0, 1.3, 1.4, 1.5.
* @author giuseppex.petralia@intel.com
*/
-public class GetConfigInputMessageFactory extends VersionAssignableFactory implements OFDeserializer<GetConfigInput> {
+public class GetConfigInputMessageFactory extends VersionAssignableFactory<GetConfigInput> {
@Override
- public GetConfigInput deserialize(ByteBuf rawMessage) {
+ public GetConfigInput deserialize(final ByteBuf rawMessage) {
return new GetConfigInputBuilder()
.setVersion(getVersion())
.setXid(readUint32(rawMessage))
import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.SwitchConfigFlag;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GetConfigOutput;
* @author michal.polkorab
* @author timotej.kubas
*/
-public class GetConfigReplyMessageFactory extends VersionAssignableFactory implements OFDeserializer<GetConfigOutput> {
+public class GetConfigReplyMessageFactory extends VersionAssignableFactory<GetConfigOutput> {
@Override
- public GetConfigOutput deserialize(ByteBuf rawMessage) {
+ public GetConfigOutput deserialize(final ByteBuf rawMessage) {
GetConfigOutputBuilder builder = new GetConfigOutputBuilder();
builder.setVersion(getVersion());
builder.setXid(readUint32(rawMessage));
import io.netty.buffer.ByteBuf;
import java.util.ArrayList;
import java.util.List;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.HelloElementType;
* @author michal.polkorab
* @author timotej.kubas
*/
-public class HelloMessageFactory extends VersionAssignableFactory implements OFDeserializer<HelloMessage> {
-
+public class HelloMessageFactory extends VersionAssignableFactory<HelloMessage> {
private static final byte HELLO_ELEMENT_HEADER_SIZE = 4;
@Override
- public HelloMessage deserialize(ByteBuf rawMessage) {
+ public HelloMessage deserialize(final ByteBuf rawMessage) {
HelloMessageBuilder builder = new HelloMessageBuilder();
builder.setVersion(getVersion());
builder.setXid(readUint32(rawMessage));
return builder.build();
}
- private static List<Elements> readElement(ByteBuf input) {
+ private static List<Elements> readElement(final ByteBuf input) {
List<Elements> elementsList = new ArrayList<>();
while (input.readableBytes() > 0) {
ElementsBuilder elementsBuilder = new ElementsBuilder();
return elementsList;
}
- private static List<Boolean> readVersionBitmap(int[] input) {
+ private static List<Boolean> readVersionBitmap(final int[] input) {
List<Boolean> versionBitmapList = new ArrayList<>();
for (int mask : input) {
for (int j = 0; j < Integer.SIZE; j++) {
import static org.opendaylight.yangtools.yang.common.netty.ByteBufUtils.readUint32;
import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
import org.opendaylight.openflowjava.protocol.impl.util.VersionAssignableFactory;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.SwitchConfigFlag;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.SetConfigInput;
* OF protocol versions: 1.0, 1.3, 1.4, 1.5.
* @author giuseppex.petralia@intel.com
*/
-public class SetConfigInputMessageFactory extends VersionAssignableFactory implements OFDeserializer<SetConfigInput> {
-
+public class SetConfigInputMessageFactory extends VersionAssignableFactory<SetConfigInput> {
@Override
- public SetConfigInput deserialize(ByteBuf rawMessage) {
+ public SetConfigInput deserialize(final ByteBuf rawMessage) {
SetConfigInputBuilder builder = new SetConfigInputBuilder();
builder.setVersion(getVersion());
builder.setXid(readUint32(rawMessage));
builder.setMissSendLen(readUint16(rawMessage));
return builder.build();
}
-
}
\ No newline at end of file
* 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.util;
import org.eclipse.jdt.annotation.NonNull;
+import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
+import org.opendaylight.yangtools.yang.binding.DataContainer;
/**
* Abstract factory class to support OF protocol version assigning and reading.
*/
-public abstract class VersionAssignableFactory {
+public abstract class VersionAssignableFactory<T extends DataContainer> implements OFDeserializer<T> {
private Short version;
/**