package com.bagri.client.hazelcast.serialize.query;
import static com.bagri.support.util.CollectionUtils.*;
import java.io.IOException;
import com.bagri.client.hazelcast.serialize.DataSerializationFactoryImpl;
import com.bagri.core.query.QueriedPath;
import com.hazelcast.nio.ObjectDataInput;
import com.hazelcast.nio.ObjectDataOutput;
import com.hazelcast.nio.serialization.StreamSerializer;
public class QueriedPathSerializer implements StreamSerializer<QueriedPath> {
@Override
public void destroy() {
}
@Override
public int getTypeId() {
return DataSerializationFactoryImpl.cli_QueriedPath;
}
@Override
public QueriedPath read(ObjectDataInput in) throws IOException {
int dataType = in.readInt();
boolean indexed = in.readBoolean();
int[] pids = in.readIntArray();
return new QueriedPath(dataType, indexed, toIntList(pids));
}
@Override
public void write(ObjectDataOutput out, QueriedPath path) throws IOException {
out.writeInt(path.getDataType());
out.writeBoolean(path.isIndexed());
out.writeIntArray(toIntArray(path.getPathIds()));
}
}