- equals
- hashCode
- toString
- compareTo
- copy/clone
- toMap/fromMap (this one creates a java.util.Map with object properties as entries)
Here is a sample use case:
import com.googlecode.jau.*;
@JAUEquals
@JAUHashCode
@JAUToString
@JAUCompare
@JAUCopy
@JAUToMap
public class UserData implements Comparable, Cloneable {
private String firstName;
private String secondName;
private Date birthDate;
private String login;
private String[] rights = new String[] {"view"};
// constructor omitted
public boolean equals(Object obj) {
return JAU.equals(this, obj);
}
public int hashCode() {
return JAU.hashCode(this);
}
public String toString() {
return JAU.toString(this);
}
public int compareTo(Object obj) {
return JAU.compare(this, obj);
}
public UserData clone() throws CloneNotSupportedException {
UserData r = (UserData) super.clone(this);
JAU.copy(this, r);
return r;
}
}
For example, the output for
JAU.toString(new String[][] {{"a", "b"}, {"1", "2"}})
would be
java.lang.String[][java.lang.String["a", "b"], java.lang.String["1", "2"]]