package com.bagri.client.hazelcast.serialize.system; import java.io.IOException; import java.util.Collection; import java.util.Date; import java.util.Properties; import com.bagri.client.hazelcast.serialize.DataSerializationFactoryImpl; import com.bagri.core.system.DataFormat; import com.hazelcast.nio.ObjectDataInput; import com.hazelcast.nio.ObjectDataOutput; import com.hazelcast.nio.serialization.StreamSerializer; public class DataFormatSerializer extends EntitySerializer implements StreamSerializer<DataFormat> { @Override public int getTypeId() { return DataSerializationFactoryImpl.cli_XDMDataFormat; } @Override public DataFormat read(ObjectDataInput in) throws IOException { Object[] entity = super.readEntity(in); return new DataFormat( (int) entity[0], (Date) entity[1], (String) entity[2], in.readUTF(), in.readUTF(), in.readUTF(), (Collection<String>) in.readObject(), in.readUTF(), in.readBoolean(), (Properties) in.readObject()); } @Override public void write(ObjectDataOutput out, DataFormat xFormat) throws IOException { super.writeEntity(out, xFormat); out.writeUTF(xFormat.getName()); out.writeUTF(xFormat.getDescription()); out.writeUTF(xFormat.getType()); out.writeObject(xFormat.getExtensions()); out.writeUTF(xFormat.getHandlerClass()); out.writeBoolean(xFormat.isEnabled()); out.writeObject(xFormat.getProperties()); } }