import org.opendaylight.openflowjava.protocol.api.extensibility.SerializerRegistry;
import org.opendaylight.openflowjava.protocol.api.keys.MessageTypeKey;
import org.opendaylight.yangtools.yang.binding.DataObject;
+import org.opendaylight.yangtools.yang.common.Uint8;
/**
* Serializes messages.
* @author timotej.kubas
*/
public class SerializationFactory {
+ private final SerializerRegistry registry;
- private SerializerRegistry registry;
+ public SerializationFactory(final SerializerRegistry registry) {
+ this.registry = registry;
+ }
/**
* Transforms POJO message into ByteBuf.
* @param out ByteBuf for storing and sending transformed message
* @param message POJO message
*/
- public void messageToBuffer(short version, ByteBuf out, DataObject message) {
+ public void messageToBuffer(final Uint8 version, final ByteBuf out, final DataObject message) {
OFSerializer<DataObject> serializer = registry.getSerializer(
- new MessageTypeKey<>(version, message.getImplementedInterface()));
+ new MessageTypeKey<>(version, message.implementedInterface()));
serializer.serialize(message, out);
}
-
- /**
- * Sets the SerializerRegistry.
- *
- * @param serializerRegistry registry with serializers
- */
- public void setSerializerTable(SerializerRegistry serializerRegistry) {
- this.registry = serializerRegistry;
- }
-
}