@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; Foo other = (Foo) obj; return AbstractTest.isEqual(this.someInt, other.someInt) && AbstractTest.isEqual(this.someString, other.someString) && AbstractTest.isEqual(this.someBar, other.someBar) && AbstractTest.isEqual(this.someEnum, other.someEnum) && AbstractTest.isEqual(this.someBytes, other.someBytes) && AbstractTest.isEqual(this.someBoolean, other.someBoolean) && AbstractTest.isEqual(this.someFloat, other.someFloat) && AbstractTest.isEqual(this.someDouble, other.someDouble) && AbstractTest.isEqual(this.someLong, other.someLong); }