package resa.evaluation.topology.fp;
import backtype.storm.serialization.SerializableSerializer;
import com.esotericsoftware.kryo.DefaultSerializer;
import java.io.Serializable;
import java.util.Arrays;
/**
* Created by ding on 14-6-5.
*/
@DefaultSerializer(SerializableSerializer.class)
public class WordList implements Serializable {
private int[] words;
public WordList(int... words) {
this.words = words;
}
public int[] getWords() {
return words;
}
@Override
public int hashCode() {
return words == null ? 0 : Arrays.hashCode(words);
}
@Override
public boolean equals(Object obj) {
return Arrays.equals(words, ((WordList) obj).words);
}
@Override
public String toString() {
return Arrays.toString(words);
}
public static int getPartition(int numPart, WordList wordList) {
return Math.abs(wordList.hashCode()) % numPart;
}
}