Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.7.0)

E13403-08

oracle.javatools.db
Interface DBObjectBuilder<T extends DBObject>

All Known Implementing Classes:
AbstractDBObjectBuilder, DictionaryDBObjectBuilder

public interface DBObjectBuilder<T extends DBObject>

The 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.

See Also:
DBObjectProvider

Field Summary
static java.lang.String BASE_COMPONENT_KEY
          Deprecated. with no replacement. Property building is done using property names.
 
Method Summary
 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.
 T createObject(java.lang.String name, Schema schema, DBObjectID id)
          Requests the creation of a new SchemaObject of the type built by this DBObjectBuilder instance.
 

Field Detail

BASE_COMPONENT_KEY

@Deprecated
static final java.lang.String BASE_COMPONENT_KEY
Deprecated. with no replacement. Property building is done using property names.
See Also:
Constant Field Values
Method Detail

createObject

T createObject(java.lang.String name,
               Schema schema,
               DBObjectID id)
Requests the creation of a new SchemaObject of the type built by this DBObjectBuilder instance.

Parameters:
name - The name of the new object
schema - The schema containing the new object
id - the DBObjectID for the new object
Returns:
The newly created object

buildObject

void buildObject(T object)
                 throws DBException
Requests that the specified object be completed. The object should be completely initialized after the call completes.

Parameters:
object - The object needing building
Throws:
DBException - if an error occurs trying to build the object

buildObjectComponent

void buildObjectComponent(T object,
                          java.lang.String key)
                          throws DBException
Requests that part of the specified object, signifed by the given key, is built. The object may not be completely initialized after the call completes.

Parameters:
object -
key -
Throws:
DBException

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.7.0)

E13403-08

Copyright © 1997, 2013, Oracle. All rights reserved.