1 /** 2 * 3 */ 4 package org.treetank.api; 5 6 import java.io.DataOutput; 7 8 import org.treetank.exception.TTIOException; 9 10 import com.google.common.hash.Funnel; 11 12 /** 13 * All entries in the MetaBucket must implement this interface for guaranteeing serialization. 14 * This applies to Keys as well as to values. 15 * 16 * @author Sebastian Graf, University of Konstanz 17 * 18 */ 19 public interface IMetaEntry { 20 21 /** 22 * Serializing to given dataput 23 * 24 * @param pOutput 25 * to serialize to 26 * @throws TTIOException 27 */ 28 void serialize(final DataOutput pOutput) throws TTIOException; 29 30 /** 31 * Getting a Funnel for computing guava-based hashes. 32 * 33 * @return a Funnel for this {@link IMetaEntry} 34 */ 35 Funnel<IMetaEntry> getFunnel(); 36 37 }