package com.twitter.elephantbird.cascading.protobuf; import java.util.Comparator; import com.google.protobuf.Message; import org.apache.hadoop.io.serializer.Deserializer; import org.apache.hadoop.io.serializer.Serialization; import org.apache.hadoop.io.serializer.Serializer; import cascading.tuple.Comparison; /** * Serialization format class * @author Ning Liang */ public class ProtobufSerialization implements Serialization<Message>, Comparison<Message> { @Override public boolean accept(Class<?> klass) { boolean accept = Message.class.isAssignableFrom(klass); return accept; } @Override public Deserializer<Message> getDeserializer(Class<Message> klass) { return new ProtobufDeserializer(klass); } @Override public Serializer<Message> getSerializer(Class<Message> klass) { return new ProtobufSerializer(); } @Override public Comparator<Message> getComparator(Class<Message> klass) { return new ProtobufComparator(); } }