|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.TableName
@InterfaceAudience.Public @InterfaceStability.Evolving public final class TableName
Immutable POJO class for representing a table name. Which is of the form: <table namespace>:<table qualifier> Two special namespaces: 1. hbase - system namespace, used to contain hbase internal tables 2. default - tables with no explicit specified namespace will automatically fall into this namespace. ie a) foo:bar, means namespace=foo and qualifier=bar b) bar, means namespace=default and qualifier=bar c) default:bar, means namespace=default and qualifier=bar
Internally, in this class, we cache the instances to limit the number of objects and make the "equals" faster. We try to minimize the number of objects created of the number of array copy to check if we already have an instance of this TableName. The code is not optimize for a new instance creation but is optimized to check for existence.
Field Summary | |
---|---|
static TableName |
META_TABLE_NAME
The hbase:meta table's name. |
static char |
NAMESPACE_DELIM
Namespace delimiter |
static TableName |
NAMESPACE_TABLE_NAME
The Namespace table's name. |
static String |
OLD_META_STR
|
static TableName |
OLD_META_TABLE_NAME
TableName for old .META. |
static String |
OLD_ROOT_STR
|
static TableName |
OLD_ROOT_TABLE_NAME
TableName for old -ROOT- table. |
static String |
VALID_NAMESPACE_REGEX
|
static String |
VALID_TABLE_QUALIFIER_REGEX
|
static String |
VALID_USER_TABLE_REGEX
|
Method Summary | |
---|---|
int |
compareTo(TableName tableName)
For performance reasons, the ordering is not lexicographic. |
boolean |
equals(Object o)
|
byte[] |
getName()
|
String |
getNameAsString()
|
byte[] |
getNamespace()
|
String |
getNamespaceAsString()
|
byte[] |
getQualifier()
|
String |
getQualifierAsString()
|
KeyValue.KVComparator |
getRowComparator()
Get the appropriate row comparator for this table. |
int |
hashCode()
|
static byte[] |
isLegalFullyQualifiedTableName(byte[] tableName)
Check passed byte array, "tableName", is legal user-space table name. |
static void |
isLegalNamespaceName(byte[] namespaceName)
|
static void |
isLegalNamespaceName(byte[] namespaceName,
int start,
int end)
Valid namespace characters are [a-zA-Z_0-9] |
static byte[] |
isLegalTableQualifierName(byte[] qualifierName)
|
static byte[] |
isLegalTableQualifierName(byte[] qualifierName,
boolean isSnapshot)
|
static void |
isLegalTableQualifierName(byte[] qualifierName,
int start,
int end)
Qualifier names can only contain 'word' characters [a-zA-Z_0-9] or '_', '.' or '-'. |
static void |
isLegalTableQualifierName(byte[] qualifierName,
int start,
int end,
boolean isSnapshot)
|
boolean |
isSystemTable()
|
byte[] |
toBytes()
|
String |
toString()
|
static TableName |
valueOf(byte[] fullName)
|
static TableName |
valueOf(byte[] namespace,
byte[] qualifier)
|
static TableName |
valueOf(ByteBuffer namespace,
ByteBuffer qualifier)
|
static TableName |
valueOf(String name)
|
static TableName |
valueOf(String namespaceAsString,
String qualifierAsString)
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final char NAMESPACE_DELIM
public static final String VALID_NAMESPACE_REGEX
public static final String VALID_TABLE_QUALIFIER_REGEX
public static final String VALID_USER_TABLE_REGEX
public static final TableName META_TABLE_NAME
public static final TableName NAMESPACE_TABLE_NAME
public static final String OLD_META_STR
public static final String OLD_ROOT_STR
public static final TableName OLD_ROOT_TABLE_NAME
public static final TableName OLD_META_TABLE_NAME
Method Detail |
---|
public static byte[] isLegalFullyQualifiedTableName(byte[] tableName)
tableName
param
IllegalArgumentException
- if passed a tableName is null or
is made of other than 'word' characters or underscores: i.e.
[a-zA-Z_0-9.-:]
. The ':' is used to delimit the namespace
from the table name and can be used for nothing else.
Namespace names can only contain 'word' characters
[a-zA-Z_0-9]
or '_'
Qualifier names can only contain 'word' characters
[a-zA-Z_0-9]
or '_', '.' or '-'.
The name may not start with '.' or '-'.
Valid fully qualified table names:
foo:bar, namespace=>foo, table=>bar
org:foo.bar, namespace=org, table=>foo.barpublic static byte[] isLegalTableQualifierName(byte[] qualifierName)
public static byte[] isLegalTableQualifierName(byte[] qualifierName, boolean isSnapshot)
public static void isLegalTableQualifierName(byte[] qualifierName, int start, int end)
[a-zA-Z_0-9]
or '_', '.' or '-'.
The name may not start with '.' or '-'.
qualifierName
- byte array containing the qualifier namestart
- start indexend
- end index (exclusive)public static void isLegalTableQualifierName(byte[] qualifierName, int start, int end, boolean isSnapshot)
public static void isLegalNamespaceName(byte[] namespaceName)
public static void isLegalNamespaceName(byte[] namespaceName, int start, int end)
public byte[] getName()
public String getNameAsString()
public byte[] getNamespace()
public String getNamespaceAsString()
public byte[] getQualifier()
public String getQualifierAsString()
public byte[] toBytes()
public boolean isSystemTable()
public String toString()
toString
in class Object
public static TableName valueOf(String namespaceAsString, String qualifierAsString)
public static TableName valueOf(byte[] fullName) throws IllegalArgumentException
IllegalArgumentException
- if fullName equals old root or old meta. Some code
depends on this. The test is buried in the table creation to save on array comparison
when we're creating a standard table object that will be in the cache.public static TableName valueOf(String name)
IllegalArgumentException
- if fullName equals old root or old meta. Some code
depends on this.public static TableName valueOf(byte[] namespace, byte[] qualifier)
public static TableName valueOf(ByteBuffer namespace, ByteBuffer qualifier)
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public int compareTo(TableName tableName)
compareTo
in interface Comparable<TableName>
public KeyValue.KVComparator getRowComparator()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |