@SafeVarargs
  public static TableDescriptorBuilder add(TableDescriptorBuilder builder,
    Class<? extends Constraint>... constraints) throws IOException {
    // make sure constraints are enabled
    enable(builder);
    long priority = getNextPriority(builder);

    // store each constraint
    for (Class<? extends Constraint> clazz : constraints) {
      addConstraint(builder, clazz, null, priority++);
    }
    return updateLatestPriority(builder, priority);
  }
Add configuration-less constraints to the table.
<p/>
This will overwrite any configuration associated with the previous constraint of the same
class.
<p/>
Each constraint, when added to the table, will have a specific priority, dictating the order in
which the {@link Constraint} will be run. A {@link Constraint} earlier in the list will be run
before those later in the list. The same logic applies between two Constraints over time
(earlier added is run first on the regionserver).
@param builder     {@link TableDescriptorBuilder} to add a {@link Constraint}
@param constraints {@link Constraint Constraints} to add. All constraints are considered
                   automatically enabled on add
@throws IOException If constraint could not be serialized/added to table
hbase-server/src/main/java/org/apache/hadoop/hbase/constraint/Constraints.java