Class SchemaDescriptor
- java.lang.Object
-
- org.apache.derby.iapi.sql.dictionary.TupleDescriptor
-
- org.apache.derby.iapi.sql.dictionary.UniqueTupleDescriptor
-
- org.apache.derby.iapi.sql.dictionary.SchemaDescriptor
-
- All Implemented Interfaces:
Dependable
,Provider
public final class SchemaDescriptor extends UniqueTupleDescriptor implements Provider
This class represents a schema descriptor- Version:
- 0.1
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
aid
private int
collationType
For system schemas, the only possible value for collation type is UCS_BASIC.static java.lang.String
DEFAULT_SCHEMA_UUID
static java.lang.String
DEFAULT_USER_NAME
static java.lang.String
IBM_SYSTEM_CAT_SCHEMA_NAME
static java.lang.String
IBM_SYSTEM_FUN_SCHEMA_NAME
static java.lang.String
IBM_SYSTEM_NULLID_SCHEMA_NAME
static java.lang.String
IBM_SYSTEM_PROC_SCHEMA_NAME
static java.lang.String
IBM_SYSTEM_SCHEMA_NAME
static java.lang.String
IBM_SYSTEM_STAT_SCHEMA_NAME
private boolean
isSYSIBM
private boolean
isSystem
private java.lang.String
name
the public interface for this system: public String getSchemaName(); public String getAuthorizationId(); public void setUUID(UUID uuid); public boolean isSystemSchema();static java.lang.String
NULLID_SCHEMA_UUID
private UUID
oid
static java.lang.String
SA_USER_NAME
static java.lang.String
SQLJ_SCHEMA_UUID
static java.lang.String
STD_DECLARED_GLOBAL_TEMPORARY_TABLES_SCHEMA_NAME
static java.lang.String
STD_DEFAULT_SCHEMA_NAME
STD_DEFAULT_SCHEMA_NAME is the name of the default schema in databases that use ANSI standard identifier casing.static java.lang.String
STD_SQLJ_SCHEMA_NAME
This schema is used for jar handling procedures.static java.lang.String
STD_SYSTEM_DIAG_SCHEMA_NAME
This schema is for Derby specific system diagnostic procedures and functions which are not available in DB2.static java.lang.String
STD_SYSTEM_SCHEMA_NAME
STD_SYSTEM_SCHEMA_NAME is the name of the system schema in databases that use ANSI standard identifier casing.static java.lang.String
STD_SYSTEM_UTIL_SCHEMA_NAME
This schema is for Derby specific system diagnostic procedures and functions which are not available in DB2.static java.lang.String
SYSCAT_SCHEMA_UUID
UUID's used as key's in the SYSSCHEMA catalog for the system schema'sstatic java.lang.String
SYSCS_DIAG_SCHEMA_UUID
static java.lang.String
SYSCS_UTIL_SCHEMA_UUID
static java.lang.String
SYSFUN_SCHEMA_UUID
static java.lang.String
SYSIBM_SCHEMA_UUID
static java.lang.String
SYSPROC_SCHEMA_UUID
static java.lang.String
SYSSTAT_SCHEMA_UUID
static java.lang.String
SYSTEM_SCHEMA_UUID
-
Fields inherited from interface org.apache.derby.catalog.Dependable
ACTIVATION, ALIAS, COLUMNS_IN_TABLE, COLUMNS_PERMISSION, CONGLOMERATE, CONSTRAINT, DEFAULT, FILE, HEAP, INDEX, PERM, PREPARED_STATEMENT, ROLE_GRANT, ROUTINE_PERMISSION, SCHEMA, SEQUENCE, STORED_PREPARED_STATEMENT, TABLE, TABLE_PERMISSION, TRIGGER, VIEW
-
-
Constructor Summary
Constructors Constructor Description SchemaDescriptor(DataDictionary dataDictionary, java.lang.String name, java.lang.String aid, UUID oid, boolean isSystem)
Constructor for a SchemaDescriptor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
drop(LanguageConnectionContext lcc, Activation activation)
Drop this schema.boolean
equals(java.lang.Object otherObject)
Determine if two SchemaDescriptors are the same.java.lang.String
getAuthorizationId()
Gets the authorization id of the schemajava.lang.String
getClassType()
Get the provider's type.int
getCollationType()
Returns the collation type associated with this schemaDependableFinder
getDependableFinder()
Get an object which can be written to disk and which, when read from disk, will find or reconstruct this in-memory Dependable.java.lang.String
getDescriptorName()
java.lang.String
getDescriptorType()
Each descriptor must identify itself with its type; i.e index, check constraint whatever.UUID
getObjectID()
Get the provider's UUIDjava.lang.String
getObjectName()
Return the name of this Provider.java.lang.String
getSchemaName()
Gets the name of the schemaUUID
getUUID()
Gets the oid of the schemaint
hashCode()
Get a hashcode for this SchemaDescriptorboolean
isSchemaWithGrantableRoutines()
Indicate whether this is a system schema with grantable routinesboolean
isSYSIBM()
boolean
isSystemSchema()
Indicate whether this is a system schema or not Examples of system schema's include: SYS, SYSIBM, SYSCAT, SYSFUN, SYSPROC, SYSSTAT, and SYSCS_DIAGvoid
setAuthorizationId(java.lang.String newAuthorizationID)
Sets the authorization id of the schema.void
setUUID(UUID oid)
Sets the oid of the schemajava.lang.String
toString()
Prints the contents of the SchemaDescriptor-
Methods inherited from class org.apache.derby.iapi.sql.dictionary.TupleDescriptor
getColumnDependableFinder, getDataDictionary, getDependableFinder, isPersistent, setDataDictionary
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.derby.catalog.Dependable
isPersistent
-
-
-
-
Field Detail
-
STD_SYSTEM_SCHEMA_NAME
public static final java.lang.String STD_SYSTEM_SCHEMA_NAME
STD_SYSTEM_SCHEMA_NAME is the name of the system schema in databases that use ANSI standard identifier casing. See org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext#getSystemSchemaName- See Also:
- Constant Field Values
-
IBM_SYSTEM_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_SCHEMA_NAME
- See Also:
- Constant Field Values
-
IBM_SYSTEM_CAT_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_CAT_SCHEMA_NAME
- See Also:
- Constant Field Values
-
IBM_SYSTEM_FUN_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_FUN_SCHEMA_NAME
- See Also:
- Constant Field Values
-
IBM_SYSTEM_PROC_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_PROC_SCHEMA_NAME
- See Also:
- Constant Field Values
-
IBM_SYSTEM_STAT_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_STAT_SCHEMA_NAME
- See Also:
- Constant Field Values
-
IBM_SYSTEM_NULLID_SCHEMA_NAME
public static final java.lang.String IBM_SYSTEM_NULLID_SCHEMA_NAME
- See Also:
- Constant Field Values
-
STD_SQLJ_SCHEMA_NAME
public static final java.lang.String STD_SQLJ_SCHEMA_NAME
This schema is used for jar handling procedures.- See Also:
- Constant Field Values
-
STD_SYSTEM_DIAG_SCHEMA_NAME
public static final java.lang.String STD_SYSTEM_DIAG_SCHEMA_NAME
This schema is for Derby specific system diagnostic procedures and functions which are not available in DB2.- See Also:
- Constant Field Values
-
STD_SYSTEM_UTIL_SCHEMA_NAME
public static final java.lang.String STD_SYSTEM_UTIL_SCHEMA_NAME
This schema is for Derby specific system diagnostic procedures and functions which are not available in DB2.- See Also:
- Constant Field Values
-
STD_DEFAULT_SCHEMA_NAME
public static final java.lang.String STD_DEFAULT_SCHEMA_NAME
STD_DEFAULT_SCHEMA_NAME is the name of the default schema in databases that use ANSI standard identifier casing. See org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext#getDefaultSchemaName- See Also:
- Constant Field Values
-
SYSCAT_SCHEMA_UUID
public static final java.lang.String SYSCAT_SCHEMA_UUID
UUID's used as key's in the SYSSCHEMA catalog for the system schema's- See Also:
- Constant Field Values
-
SYSFUN_SCHEMA_UUID
public static final java.lang.String SYSFUN_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSPROC_SCHEMA_UUID
public static final java.lang.String SYSPROC_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSSTAT_SCHEMA_UUID
public static final java.lang.String SYSSTAT_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSCS_DIAG_SCHEMA_UUID
public static final java.lang.String SYSCS_DIAG_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSCS_UTIL_SCHEMA_UUID
public static final java.lang.String SYSCS_UTIL_SCHEMA_UUID
- See Also:
- Constant Field Values
-
NULLID_SCHEMA_UUID
public static final java.lang.String NULLID_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SQLJ_SCHEMA_UUID
public static final java.lang.String SQLJ_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSTEM_SCHEMA_UUID
public static final java.lang.String SYSTEM_SCHEMA_UUID
- See Also:
- Constant Field Values
-
SYSIBM_SCHEMA_UUID
public static final java.lang.String SYSIBM_SCHEMA_UUID
- See Also:
- Constant Field Values
-
DEFAULT_SCHEMA_UUID
public static final java.lang.String DEFAULT_SCHEMA_UUID
- See Also:
- Constant Field Values
-
STD_DECLARED_GLOBAL_TEMPORARY_TABLES_SCHEMA_NAME
public static final java.lang.String STD_DECLARED_GLOBAL_TEMPORARY_TABLES_SCHEMA_NAME
- See Also:
- Constant Field Values
-
DEFAULT_USER_NAME
public static final java.lang.String DEFAULT_USER_NAME
- See Also:
- Constant Field Values
-
SA_USER_NAME
public static final java.lang.String SA_USER_NAME
- See Also:
- Constant Field Values
-
name
private final java.lang.String name
the public interface for this system:- public String getSchemaName();
- public String getAuthorizationId();
- public void setUUID(UUID uuid);
- public boolean isSystemSchema();
-
oid
private UUID oid
-
aid
private java.lang.String aid
-
isSystem
private final boolean isSystem
-
isSYSIBM
private final boolean isSYSIBM
-
collationType
private int collationType
For system schemas, the only possible value for collation type is UCS_BASIC. For user schemas, the collation type can be UCS_BASIC or TERRITORY_BASED.
-
-
Constructor Detail
-
SchemaDescriptor
public SchemaDescriptor(DataDictionary dataDictionary, java.lang.String name, java.lang.String aid, UUID oid, boolean isSystem)
Constructor for a SchemaDescriptor.- Parameters:
dataDictionary
-name
- The schema descriptor for this table.aid
- The authorization idoid
- The object idisSystem
- boolean, true iff this is a system schema, like SYS, SYSIBM, SYSCAT, SYSFUN, ....
-
-
Method Detail
-
getSchemaName
public java.lang.String getSchemaName()
Gets the name of the schema- Returns:
- The schema name
-
getAuthorizationId
public java.lang.String getAuthorizationId()
Gets the authorization id of the schema- Returns:
- Authorization id lives in.
-
setAuthorizationId
public void setAuthorizationId(java.lang.String newAuthorizationID)
Sets the authorization id of the schema. This is only used by the DataDictionary during boot in order to patch up the authorization ids on system schemas.- Parameters:
newAuthorizationID
- What is is
-
getUUID
public UUID getUUID()
Gets the oid of the schema- Specified by:
getUUID
in classUniqueTupleDescriptor
- Returns:
- An oid
-
setUUID
public void setUUID(UUID oid)
Sets the oid of the schema- Parameters:
oid
- The object id
-
getCollationType
public int getCollationType()
Returns the collation type associated with this schema- Returns:
- collation type
-
getDependableFinder
public DependableFinder getDependableFinder()
Description copied from interface:Dependable
Get an object which can be written to disk and which, when read from disk, will find or reconstruct this in-memory Dependable.- Specified by:
getDependableFinder
in interfaceDependable
- Returns:
- the stored form of this provider
- See Also:
Dependable.getDependableFinder()
-
getObjectName
public java.lang.String getObjectName()
Return the name of this Provider. (Useful for errors.)- Specified by:
getObjectName
in interfaceDependable
- Returns:
- String The name of this provider.
-
getObjectID
public UUID getObjectID()
Get the provider's UUID- Specified by:
getObjectID
in interfaceDependable
- Returns:
- String The provider's UUID
-
getClassType
public java.lang.String getClassType()
Get the provider's type.- Specified by:
getClassType
in interfaceDependable
- Returns:
- String The provider's type.
-
toString
public java.lang.String toString()
Prints the contents of the SchemaDescriptor- Overrides:
toString
in classjava.lang.Object
- Returns:
- The contents as a String
-
equals
public boolean equals(java.lang.Object otherObject)
Determine if two SchemaDescriptors are the same.- Overrides:
equals
in classjava.lang.Object
- Parameters:
otherObject
- other schemadescriptor- Returns:
- true if they are the same, false otherwise
-
isSystemSchema
public boolean isSystemSchema()
Indicate whether this is a system schema or not Examples of system schema's include: SYS, SYSIBM, SYSCAT, SYSFUN, SYSPROC, SYSSTAT, and SYSCS_DIAG- Returns:
- true/false
-
isSchemaWithGrantableRoutines
public boolean isSchemaWithGrantableRoutines()
Indicate whether this is a system schema with grantable routines- Returns:
- true/false
-
isSYSIBM
public boolean isSYSIBM()
-
hashCode
public int hashCode()
Get a hashcode for this SchemaDescriptor- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashcode
-
getDescriptorName
public java.lang.String getDescriptorName()
- Overrides:
getDescriptorName
in classTupleDescriptor
- See Also:
TupleDescriptor.getDescriptorName()
-
getDescriptorType
public java.lang.String getDescriptorType()
Description copied from class:TupleDescriptor
Each descriptor must identify itself with its type; i.e index, check constraint whatever.- Overrides:
getDescriptorType
in classTupleDescriptor
- See Also:
TupleDescriptor.getDescriptorType()
-
drop
public void drop(LanguageConnectionContext lcc, Activation activation) throws StandardException
Drop this schema. Drops the schema if it is empty. If the schema was the current default then the current default will be reset through the language connection context.- Throws:
StandardException
- Schema could not be dropped.
-
-