public abstract class DerivedPropertyBuilder<T extends AbstractBuildableObject> extends AbstractDBObjectBuilder<T>
PropertyBuilder annotation to facilitate building.AbstractDBObjectBuilder.PropertyBuilderBASE_COMPONENT_KEY| Constructor and Description |
|---|
DerivedPropertyBuilder(AbstractDBObjectProvider pro, java.lang.String type)
Creates a new derived property builder.
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
canBuildComponents()
Returns false by default.
|
java.util.Collection<java.lang.String> |
clearDerivedProperties(T obj, java.lang.String property, DBObjectChange change)
Clears the properties that are derived from the given property and that need resetting given the new value for the source property.
|
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. |
protected void |
registerObject(T object)
Shared between buildObject and buildObjects to perform any post-build tasks that are needed (e.g.
|
buildObject, buildObjectComponent, canBuildEditableObject, ensureComponent, fillInObject, fillInObjectComponent, findObjectInProviderCache, findObjectInProviderCache, getBuiltProperties, getDerivedProperties, getLogger, getObjectType, getProvider, getSchema, isBuildableProperty, markAsBuilt, markAsBuilt, needsBuilding, needsBuilding, newObject, newObject, updateTimestamp, updateTimestamppublic DerivedPropertyBuilder(AbstractDBObjectProvider pro, java.lang.String type)
pro - the containing providertype - the type of object that is built by this builder (e.g. Table.TYPE)public java.util.Collection<java.lang.String> clearDerivedProperties(T obj, java.lang.String property, DBObjectChange change)
obj - the object the property is being changed onproperty - the property being changedchange - the overall change that is occuringprotected final boolean canBuildComponents()
AbstractDBObjectBuilderAbstractDBObjectBuilder.PropertyBuilder annotation.canBuildComponents in class AbstractDBObjectBuilder<T extends AbstractBuildableObject>public final T createObject(java.lang.String name, Schema schema, DBObjectID id)
DBObjectBuilderDBObjectBuilder instance.createObject in interface DBObjectBuilder<T extends AbstractBuildableObject>createObject in class AbstractDBObjectBuilder<T extends AbstractBuildableObject>name - The name of the new objectschema - The schema containing the new objectid - the DBObjectID for the new objectprotected void registerObject(T object) throws DBException
AbstractDBObjectBuilderregisterObject in class AbstractDBObjectBuilder<T extends AbstractBuildableObject>DBException