// Following class will represent value output by mapper/combiner // It countains count of "CAT" occurrences in line, plus leading and // trailing 2 chars. import java.io.*; import org.apache.hadoop.io.Writable; public class catval implements Writable { public long count; // number of "CAT" in line public String prefix; public String suffix; public int filenum; // file number with most known cats public int linenum; // line number within file public catval() {} // dummy required by Hadoop xml configs public catval(long c, String p, String s, int f) {count=c; prefix=p; suffix=s; filenum=f;} public void write(DataOutput dout) throws IOException // required { dout.writeLong(count); // DataOutput is in java.io dout.writeInt(filenum); dout.writeInt(linenum); dout.writeBytes(prefix); dout.writeBytes(suffix); // dout.writeByte(0); // write zero-terminated (C-style) string } public void readFields(DataInput din) throws IOException // required { count = din.readLong(); filenum = din.readInt(); linenum = din.readInt(); prefix = "" + (char) din.readByte(); prefix = prefix + (char) din.readByte(); suffix = "" + (char) din.readByte(); suffix = suffix + (char) din.readByte(); } }//catval