public class ReferenceID extends BaseObjectID implements ColumnConstraintReferenceID
SEPUNSPECIFIED_TYPE| Constructor and Description |
|---|
ReferenceID()
Creates an empty reference ID.
|
ReferenceID(DBObject obj)
Creates a ReferenceID populated with details from the given object (including a parent ID to match the parent of the obj if one exists).
|
ReferenceID(DBObject obj, DBObjectProvider pro)
Creates a ReferenceID to the give object, but sets the new reference up with the given provider.
|
ReferenceID(DBObjectID id)
Creates a ReferenceID to the object that the given id resolves to.
|
ReferenceID(DBObjectID id, DBObjectProvider pro)
Creates a ReferenceID to the object that the given id resolves to, but sets the new reference up with the given provider.
|
ReferenceID(java.lang.String type, DBObjectID parent, java.lang.String name, java.lang.String subtype, java.lang.String[] childObjectNames)
Creates a reference id to a child object that includes child object information (e.g.
|
ReferenceID(java.lang.String type, Schema schema, java.lang.String name)
Creates a new ReferenceID to a SchemaObject with the given type, schema and object name.
|
ReferenceID(java.lang.String type, Schema schema, java.lang.String name, java.lang.String dbName)
Creates a reference ID to a schema object including a database name that the object exists in
|
ReferenceID(java.lang.String type, java.lang.String schemaName, java.lang.String name)
Creates a new ReferenceID to a SchemaObject with the given type, schema and object name.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addChildObjectName(DBObject obj) |
void |
addChildObjectName(DBObjectID id) |
void |
addChildObjectName(java.lang.String name) |
void |
construct(java.lang.String id)
INTERNAL USE ONLY Constructs the ID from the information in the string parameter.
|
java.lang.Object |
copyTo(java.lang.Object target)
Copies the internal state of
this object to the specified copy. |
protected void |
copyToImpl(ReferenceID target) |
protected boolean |
equalsImpl(DBObjectID id, boolean strict)
Subclasses should implement as appropriate to their equals implementation, calling
AbstractDBObjectID.equalsImpl(AbstractDBObjectID) when appropriate. |
protected boolean |
equalsImpl(ReferenceID id) |
java.lang.String[] |
getChildObjectNames() |
java.lang.String[] |
getColumnNames()
Deprecated.
|
java.lang.Object |
getIdentifier()
If this reference ID is refering to an object in a provider that uses IdentifierBasedID object ids then this records the identifier for the referenced object.
|
DBObjectID |
getNewID()
Deprecated.
|
java.lang.String |
getSubType()
Retrieves the sub-type of object referenced by this id.
|
DBObject |
resolveID()
Resolves the id into the object referenced.
|
protected DBObject |
resolveInParentObject(DBObject parent)
Used by resolvefromParent to find the object corresponding to this ID in the given parent object.
|
DBObject |
resolveReference(Database db)
Deprecated.
|
void |
setChildObjectNames(java.lang.String[] names) |
void |
setIdentifier(java.lang.Object obj)
Sets the identifier for the referenced object.
|
void |
setSubType(java.lang.String subType) |
protected java.lang.String |
toStringImpl() |
clearToString, copyToImpl, copyWithNewProvider, createFromString, equalsImpl, getDatabaseName, getName, getProvider, getSchemaName, hasSameObjectName, hasSameProvider, isRecognizedType, resolveFromProvider, resolveIDWithoutType, resolveIDWithoutType, resolveIDWithoutType, setDatabaseName, setName, setParent, setProvider, setProviderImpl, setSchema, setSchemaName, toStringcanEquateWithNullParent, copyToImpl, equals, equals, equalsImpl, getParent, getType, hashCode, hasSameParent, resolveFromParent, setTypeclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetName, getSchemaNameequals, getParent, getTypepublic ReferenceID()
public ReferenceID(DBObjectID id) throws DBException
id - the id of the object to referenceDBExceptionpublic ReferenceID(DBObjectID id, DBObjectProvider pro) throws DBException
id - the id of the object to referencepro - the provider the new ID will be used inDBExceptionpublic ReferenceID(DBObject obj)
obj - the object to referencepublic ReferenceID(DBObject obj, DBObjectProvider pro)
obj - the object to referencepro - the provider the new ID will be used in
public ReferenceID(java.lang.String type,
java.lang.String schemaName,
java.lang.String name)
public ReferenceID(java.lang.String type,
Schema schema,
java.lang.String name)
public ReferenceID(java.lang.String type,
Schema schema,
java.lang.String name,
java.lang.String dbName)
type - object type e.g. Table.TYPEschema - schema the object is inname - name of the objectdbName - a database name for the object - not the provider name, but used for example as a database link name in oracle for synonym reference IDs.
public ReferenceID(java.lang.String type,
DBObjectID parent,
java.lang.String name,
java.lang.String subtype,
java.lang.String[] childObjectNames)
public void construct(java.lang.String id)
construct in class BaseObjectIDid - The ID in string form.public final java.lang.String[] getChildObjectNames()
public final void setChildObjectNames(java.lang.String[] names)
public final java.lang.String getSubType()
DBReferenceIDgetSubType in interface DBReferenceIDpublic final void setSubType(java.lang.String subType)
public final java.lang.Object getIdentifier()
public final void setIdentifier(java.lang.Object obj)
getIdentifier()@Deprecated public final DBObject resolveReference(Database db)
resolveReference in interface DBReferenceID@Deprecated public final DBObjectID getNewID()
DBReferenceIDgetNewID in interface DBReferenceIDDBReferenceID.resolveID()@Deprecated public final java.lang.String[] getColumnNames()
ColumnConstraintReferenceIDgetColumnNames in interface ColumnConstraintReferenceIDprotected boolean equalsImpl(DBObjectID id, boolean strict)
AbstractDBObjectIDAbstractDBObjectID.equalsImpl(AbstractDBObjectID) when appropriate.equalsImpl in class AbstractDBObjectIDprotected boolean equalsImpl(ReferenceID id)
public java.lang.Object copyTo(java.lang.Object target)
Copyablethis object to the specified copy. If copy is null, then this method should create a new instance of this class and proceed to copy the internal state to the newly created object. Generally, only the persistent state of the object should be copied, but whether or not it is appropriate to copy transient properties is at the discretion of the individual implementor.
Regardless of whether the copy occurs to an existing object or to a newly created object, the return value is object to which this object's state was copied.
There is a standard implementation pattern for the copyTo method that helps avoid problems that arise when a Copyable object is subclassed. The pattern is:
public Object copyTo( Object target )
{
final <this_class> copy =
target != null ? (<this_class>) target : new <this_class>();
copyToImpl( copy );
return copy;
}
protected final void copyToImpl( <this_class> copy )
{
super.copyToImpl( copy ); // if necessary
// put code here for copying the properties of <this_class>
}
The parameter passed into the copyToImpl method is the same type of this class. The responsibility of copyToImpl is to copy the state of this class through direct access of the fields. The copyToImpl method should not use getters and setters since these may be overridden, causing the state of this class to be incompletely copied.copyTo in interface Copyabletarget - The target object to which the state of this object should be copied. If target is null, then the copyTo method will return a new instance of this class.this object was copied. If the target was non-null, then the return value is the same as the target object that was passed in; otherwise, the return value is a new instance of this class.protected void copyToImpl(ReferenceID target)
protected java.lang.String toStringImpl()
toStringImpl in class BaseObjectIDpublic DBObject resolveID() throws DBException
DBObjectIDresolveID in interface DBObjectIDresolveID in interface DBReferenceIDresolveID in class BaseObjectIDDBExceptionDBReferenceID.getNewID()public void addChildObjectName(DBObjectID id)
public void addChildObjectName(DBObject obj)
public void addChildObjectName(java.lang.String name)
protected DBObject resolveInParentObject(DBObject parent)
AbstractDBObjectIDresolveInParentObject in class AbstractDBObjectIDparent - the object to look under for an object matching this ID.