Javadoc update
[openflowjava.git] / openflow-protocol-impl / src / main / java / org / opendaylight / openflowjava / protocol / impl / core / OF13Decoder.java
1 /* Copyright (C)2013 Pantheon Technologies, s.r.o. All rights reserved. */\r
2 package org.opendaylight.openflowjava.protocol.impl.core;\r
3 \r
4 import io.netty.channel.ChannelHandlerContext;\r
5 import io.netty.handler.codec.MessageToMessageDecoder;\r
6 \r
7 import java.util.List;\r
8 \r
9 import org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializationFactory;\r
10 import org.opendaylight.yangtools.yang.binding.DataObject;\r
11 import org.slf4j.Logger;\r
12 import org.slf4j.LoggerFactory;\r
13 \r
14 /**\r
15  * Transforms OpenFlow Protocol messages to POJOs\r
16  * @author michal.polkorab\r
17  */\r
18 public class OF13Decoder extends MessageToMessageDecoder<VersionMessageWrapper> {\r
19 \r
20     private static final Logger LOGGER = LoggerFactory.getLogger(OF13Decoder.class);\r
21 \r
22     /**\r
23      * Constructor of class\r
24      */\r
25     public OF13Decoder() {\r
26         LOGGER.debug("Creating OF 1.3 Decoder");\r
27     }\r
28 \r
29     @Override\r
30     protected void decode(ChannelHandlerContext ctx, VersionMessageWrapper msg,\r
31             List<Object> out) throws Exception {\r
32         LOGGER.debug("VersionMessageWrapper received");\r
33         DataObject dataObject = DeserializationFactory.bufferToMessage(msg.getMessageBuffer(),\r
34                 msg.getVersion());\r
35         if (dataObject == null) {\r
36             LOGGER.warn("Translated POJO is null");\r
37             return;\r
38         }\r
39         out.add(dataObject);\r
40     }\r
41 }\r