1 /* Copyright (C)2013 Pantheon Technologies, s.r.o. All rights reserved. */
\r
2 package org.opendaylight.openflowjava.protocol.impl.deserialization;
\r
4 import org.opendaylight.yangtools.yang.binding.DataObject;
\r
6 import io.netty.buffer.ByteBuf;
\r
9 * Uniform interface for deserializing factories
\r
10 * @author michal.polkorab
\r
11 * @author timotej.kubas
\r
12 * @param <E> message code type
\r
14 public interface OFDeserializer<E extends DataObject> {
\r
17 * Transforms byte message into POJO/DTO (of type E).
\r
18 * Assumes that input ByteBuf's readerIndex is pointing on length in OpenFlow header
\r
20 * @param rawMessage message as bytes in ByteBuf
\r
21 * @param version version of used OF Protocol
\r
22 * @return HelloMessage as DataObject
\r
24 public abstract E bufferToMessage(ByteBuf rawMessage, short version);
\r