Extensibility support (deserialization part)
[openflowjava.git] / openflow-protocol-impl / src / main / java / org / opendaylight / openflowjava / protocol / impl / deserialization / factories / OF10PacketInMessageFactory.java
index 814bd502045cf48be689dc52592a6362bf8ba033..8302fa37ca3c8d85c61028656c689a2e9f43438c 100644 (file)
@@ -10,7 +10,8 @@ package org.opendaylight.openflowjava.protocol.impl.deserialization.factories;
 
 import io.netty.buffer.ByteBuf;
 
-import org.opendaylight.openflowjava.protocol.impl.deserialization.OFDeserializer;
+import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
+import org.opendaylight.openflowjava.protocol.impl.util.EncodeConstants;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PacketInReason;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketInMessage;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketInMessageBuilder;
@@ -23,26 +24,10 @@ public class OF10PacketInMessageFactory implements OFDeserializer<PacketInMessag
 
     private static final byte PADDING_IN_PACKET_IN_HEADER = 1;
 
-    private static OF10PacketInMessageFactory instance;
-    
-    private OF10PacketInMessageFactory() {
-        // Singleton
-    }
-    
-    /**
-     * @return singleton factory
-     */
-    public static synchronized OF10PacketInMessageFactory getInstance(){
-        if(instance == null){
-            instance = new OF10PacketInMessageFactory();
-        }
-        return instance;
-    }
-
     @Override
-    public PacketInMessage bufferToMessage(ByteBuf rawMessage, short version) {
+    public PacketInMessage deserialize(ByteBuf rawMessage) {
         PacketInMessageBuilder builder = new PacketInMessageBuilder();
-        builder.setVersion(version);
+        builder.setVersion((short) EncodeConstants.OF10_VERSION_ID);
         builder.setXid(rawMessage.readUnsignedInt());
         builder.setBufferId(rawMessage.readUnsignedInt());
         builder.setTotalLen(rawMessage.readUnsignedShort());