Generic Java Constraint