public interface DBObjectBuilder<T extends DBObject>
DBObjectBuilder interface provides a mechanism
 for constructing new instances representing database objects.
 
 A DBObjectProvider can use a DBObjectBuilder to construct
 data model instances without needing to know how the data model is
 being determined. For example, a generic JDBC implementation of
 DBObjectBuilder for tables could use the information from
 DatabaseMetaData to create the model; an Oracle specific DBObjectBuilder
 could query the data dictionary directly; and an offline DBObjectBuilder
 could convert an XML file into the table data model.
 
 DBObjectBuilder implementations may implement lazy instantiation of the
 SchemaObject instances they create. A lazily instantiated SchemaObject will
 always have its Schema and Name properties set; however, any additional properties
 may not be initialized until a caller requests them. The DBObjectBuilder should
 set itself as the builder on the lazily instantiated SchemaObject; the SchemaObject
 will call the buildObject method on the DBObjectBuilder to fill
 in the rest of the data. The DBObjectBuilder implementation determines how
 much information is filled in when the SchemaObject is created.
 
 If the DBObjectBuilder implementation does not implement lazy instantiation,
 createObject should return a complete SchemaObject. Calling
 buildObject on a complete SchemaObject should return immediately.
 
DBObjectProvider| Modifier and Type | Field and Description | 
|---|---|
| static java.lang.String | BASE_COMPONENT_KEYDeprecated. 
 with no replacement. Property building is done using property
 names. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | buildObject(T object)Requests that the specified object be completed. | 
| void | buildObjectComponent(T object,
                    java.lang.String key)Requests that part of the specified object, signifed by the given key,
 is built. | 
| boolean | canBuildEditableObject()Tests whether this builder does a complete build of the given object,
 or whether it is only used to create stub objects. | 
| void | cancelCurrentBuild(T object)Cancels any build that is currently in progress. | 
| T | createObject(java.lang.String name,
            Schema schema,
            DBObjectID id)Requests the creation of a new SchemaObject of the type built by this
  DBObjectBuilderinstance. | 
@Deprecated static final java.lang.String BASE_COMPONENT_KEY
T createObject(java.lang.String name, Schema schema, DBObjectID id)
DBObjectBuilder instance.name - The name of the new objectschema - The schema containing the new objectid - the DBObjectID for the new objectvoid buildObject(T object) throws DBException
object - The object needing buildingDBException - if an error occurs trying to build the objectvoid buildObjectComponent(T object, java.lang.String key) throws DBException
object - the object that needs buildingkey - the component to build - in the majority of cases this will
 be a property name.DBException - if an error occurs trying to build the objectboolean canBuildEditableObject()
void cancelCurrentBuild(T object)
object - the object whose build should be cancelled.