package me.prettyprint.cassandra.serializers; import static me.prettyprint.hector.api.ddl.ComparatorType.FLOATTYPE; import java.nio.ByteBuffer; import me.prettyprint.hector.api.ddl.ComparatorType; /** * Uses IntSerializer via translating Float objects to and from raw long bytes form. * * @author Todd Nine */ public class FloatSerializer extends AbstractSerializer<Float> { private static final FloatSerializer instance = new FloatSerializer(); public static FloatSerializer get() { return instance; } @Override public ByteBuffer toByteBuffer(Float obj) { return IntegerSerializer.get().toByteBuffer(Float.floatToRawIntBits(obj)); } @Override public Float fromByteBuffer(ByteBuffer bytes) { return Float.intBitsToFloat(IntegerSerializer.get().fromByteBuffer(bytes)); } @Override public ComparatorType getComparatorType() { return FLOATTYPE; } }