blob: 305f0fcc0ba7b2401e7a9c44d668472f68b1179e [file] [log] [blame]
package edu.uci.ics.asterix.dataflow.data.nontagged.serde;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import edu.uci.ics.asterix.om.base.AString;
import edu.uci.ics.hyracks.api.dataflow.value.ISerializerDeserializer;
import edu.uci.ics.hyracks.api.exceptions.HyracksDataException;
import edu.uci.ics.hyracks.dataflow.common.data.marshalling.UTF8StringSerializerDeserializer;
public class AStringSerializerDeserializer implements ISerializerDeserializer<AString> {
private static final long serialVersionUID = 1L;
public static final AStringSerializerDeserializer INSTANCE = new AStringSerializerDeserializer();
private AStringSerializerDeserializer() {
}
@Override
public AString deserialize(DataInput in) throws HyracksDataException {
try {
return new AString(UTF8StringSerializerDeserializer.INSTANCE.deserialize(in));
} catch (IOException e) {
throw new HyracksDataException(e);
}
}
@Override
public void serialize(AString instance, DataOutput out) throws HyracksDataException {
try {
UTF8StringSerializerDeserializer.INSTANCE.serialize(instance.getStringValue(), out);
} catch (IOException e) {
throw new HyracksDataException(e);
}
}
}