public static TableName valueOf(byte[] namespace, byte[] qualifier) {
    if (namespace == null || namespace.length < 1) {
      namespace = NamespaceDescriptor.DEFAULT_NAMESPACE_NAME;
    }

    for (TableName tn : tableCache) {
      if (
        Arrays.equals(tn.getQualifier(), qualifier) && Arrays.equals(tn.getNamespace(), namespace)
      ) {
        return tn;
      }
    }

    return createTableNameIfNecessary(ByteBuffer.wrap(namespace), ByteBuffer.wrap(qualifier));
  }
Construct a TableName
@throws IllegalArgumentException if fullName equals old root or old meta. Some code depends on
                                 this.
hbase-common/src/main/java/org/apache/hadoop/hbase/TableName.java