public class SchemaObjectDescriptor
extends java.lang.Object
It is also useful for persisting information about an object for later retrieval back from its provider.
Finally it is also useful to use a descriptor when creating collections/maps of objects because the comparison only compares name, schema and type, and doesn't do a costly .equals on the object.
The class allows an extra name for the object to be recorded. This is useful for import processes that include the creation of entities/mappings etc.
Note: this class should now be called SystemObjectDescriptor as it can wrap any SystemObject, not just SchemaObjects.
Constructor and Description |
---|
SchemaObjectDescriptor(java.lang.String name,
java.lang.String type,
java.lang.String schema)
Create a new descriptor for a given object details.
|
SchemaObjectDescriptor(SystemObject obj)
Create a descriptor for the given object.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
copyTo(java.lang.Object obj) |
protected void |
copyToImpl(SchemaObjectDescriptor copy) |
DBObjectCriteria<SystemObject> |
createCriteria()
Creates a DBObejctCriteria that will query the described object from
a DBObjectProvider.
|
static SchemaObjectDescriptor[] |
createDescriptors(DBObjectID[] ids)
Wraps up a set of DBObjectIDs into SchemaObjectDescriptors.
|
static SchemaObjectDescriptor[] |
createDescriptors(SystemObject[] objs)
Wraps up a set of SystemObjects into SchemaObjectDescriptors.
|
static SchemaObjectDescriptor[] |
createDescriptors(SystemObject[] objs,
boolean saveObj)
Wraps up a set of SystemObjects into SchemaObjectDescriptors.
|
boolean |
equals(java.lang.Object obj)
Tests equality with another SchemaObjectDescriptor by comparing the
name, type and schema.
|
boolean |
equals(java.lang.Object obj,
boolean strict)
If strict is false performs a normal comparison of name, type and schema.
|
protected boolean |
equalsImpl(SchemaObjectDescriptor obj,
boolean strict) |
SystemObject |
findObject(DBObjectProvider pro)
Finds the described object in the given DBObjectProvider.
|
SystemObject |
findObject(DBObjectProvider pro,
boolean full)
Finds the described object in the given DBObjectProvider.
|
static SystemObject[] |
findObjects(DBObjectProvider source,
SchemaObjectDescriptor... descs)
Finds the objects for the given descriptors in a DBObjectProvider.
|
java.lang.String |
getDatabaseName()
If this object is qualified by a database name (i.e.
|
java.lang.String |
getName()
Retrieves the name of the object.
|
SystemObject |
getObject()
If this is a wrapper for an existing object, this will return the object.
|
java.lang.String |
getOriginalName()
Deprecated.
- use getName()
|
java.lang.String |
getOtherName()
Gets the other name stored in this descriptor - e.g.
|
java.lang.String |
getSchema()
Get the name of the schema for this schema object.
|
java.lang.String |
getType()
Get the type of this schema object.
|
int |
hashCode()
This hashCode implementation uses the type and name of the object.
|
boolean |
matches(BaseObjectID id)
Test whether this descriptor matches the name/type/schema information
in the given BaseObjectID.
|
void |
setDatabaseName(java.lang.String dbName)
Sets the database name for the object, if it needs to be qualified with
a database (link) name in order to be found.
|
void |
setName(java.lang.String name)
Change the name of this schema object.
|
void |
setOriginalName(java.lang.String name)
Deprecated.
- use setName()
|
void |
setOtherName(java.lang.String name)
Sets the other name stored in this descriptor - e.g.
|
void |
setSchema(java.lang.String schema)
Sets the schema of the object.
|
void |
setType(java.lang.String type)
Sets the type of the object.
|
java.lang.String |
toString()
Uses the original name to provide a meanigful string to display in a
shuttle.
|
SchemaObject |
unwrapDescriptor(DBObjectProvider source)
Deprecated.
replaced by
findObject(DBObjectProvider) |
static SchemaObject[] |
unwrapDescriptors(SchemaObjectDescriptor[] descs,
DBObjectProvider source)
Deprecated.
|
SystemObject |
unwrapSystemObjectDescriptor(DBObjectProvider source)
Deprecated.
replaced by
findObject(DBObjectProvider) |
static SystemObject[] |
unwrapSystemObjectDescriptors(SchemaObjectDescriptor[] descs,
DBObjectProvider source)
Deprecated.
|
public SchemaObjectDescriptor(java.lang.String name, java.lang.String type, java.lang.String schema)
name
- the name of the schema objecttype
- the type of the schema objectschema
- the name of the schema that the object is from, or is
destined to. Can be null for non-schema system objects.public SchemaObjectDescriptor(SystemObject obj)
obj
- the object to describe.public java.lang.String getName()
@Deprecated public java.lang.String getOriginalName()
public java.lang.String getType()
public java.lang.String getSchema()
public java.lang.String getDatabaseName()
public SystemObject getObject()
public java.lang.String getOtherName()
public void setName(java.lang.String name)
public void setDatabaseName(java.lang.String dbName)
@Deprecated public void setOriginalName(java.lang.String name)
public void setType(java.lang.String type)
public void setSchema(java.lang.String schema)
public void setOtherName(java.lang.String name)
public boolean matches(BaseObjectID id)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- the object to compare with thisprotected boolean equalsImpl(SchemaObjectDescriptor obj, boolean strict)
public boolean equals(java.lang.Object obj, boolean strict)
public java.lang.Object copyTo(java.lang.Object obj)
protected void copyToImpl(SchemaObjectDescriptor copy)
public java.lang.String toString()
toString
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public DBObjectCriteria<SystemObject> createCriteria()
public SystemObject findObject(DBObjectProvider pro) throws DBException
pro
- the provider to search inDBException
- from the provider if an error occurs finding the
object.public SystemObject findObject(DBObjectProvider pro, boolean full) throws DBException
pro
- the provider to search infull
- a hint to fully load the object when found (if supported)DBException
- from the provider if an error occurs finding the
object.@Deprecated public SchemaObject unwrapDescriptor(DBObjectProvider source) throws DBException
findObject(DBObjectProvider)
DBException
@Deprecated public SystemObject unwrapSystemObjectDescriptor(DBObjectProvider source) throws DBException
findObject(DBObjectProvider)
DBException
public static SystemObject[] findObjects(DBObjectProvider source, SchemaObjectDescriptor... descs) throws DBException
DBException
- if the provider throws any error resolving the
descriptors.@Deprecated public static SchemaObject[] unwrapDescriptors(SchemaObjectDescriptor[] descs, DBObjectProvider source) throws DBException
DBException
@Deprecated public static SystemObject[] unwrapSystemObjectDescriptors(SchemaObjectDescriptor[] descs, DBObjectProvider source) throws DBException
findObjects(DBObjectProvider,SchemaObjectDescriptor[])
DBException
public static SchemaObjectDescriptor[] createDescriptors(SystemObject[] objs, boolean saveObj)
public static SchemaObjectDescriptor[] createDescriptors(SystemObject[] objs)
public static SchemaObjectDescriptor[] createDescriptors(DBObjectID[] ids)