|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbiz.hammurapi.sql.DatabaseObject
public class DatabaseObject
SQLC-generated interface implementations implement this method to achieve differential update functionality - inserting and updating only modified fields.
Field Summary | |
---|---|
protected java.util.Collection |
columns
|
protected int |
objectVersion
Subclasses can choose to read object version from the database. |
protected int |
originalVersion
|
Constructor Summary | |
---|---|
DatabaseObject()
Default constructor |
|
DatabaseObject(boolean force)
|
Method Summary | |
---|---|
protected void |
addColumn(Column column)
|
void |
addObserver(Observer observer)
Adds observer to a collection of observers. |
protected RelationshipList |
addRelationship(java.lang.String name,
java.lang.String itemName,
Relationship relationship)
|
void |
clear()
Sets all columns to default values and clears modified and deleted flags. |
java.lang.Object |
clone()
Clones object, clears columns collection, clears isDeleted and isModified flags. |
void |
configure(Context context,
CompositeConverter converter)
|
void |
configure(org.w3c.dom.Node configNode,
Context context)
Reads configuration from Node |
void |
copy(DatabaseObject source)
Copies values from source object to this object |
int |
delete(SQLProcessor processor,
java.lang.String tableName)
Deletes row in a table by primary key. |
boolean |
equals(java.lang.Object otherBean)
Two objects are considered equal and all their fields are equal. |
void |
fromDom(org.w3c.dom.Element holder)
Loads columns from XML element |
void |
fromDom(org.w3c.dom.Element holder,
java.util.Properties nameMap)
|
java.lang.Object |
get(java.lang.String name)
|
java.lang.Object |
getAttribute(java.lang.Object key)
|
protected Column |
getColumn(java.lang.String name)
|
java.lang.Object |
getColumnAttribute(java.lang.String columnName,
java.lang.Object key)
|
int |
getObjectVersion()
|
protected RelationshipList |
getRelationship(java.lang.String name)
|
protected int |
getSqlType(java.lang.String columnName,
int generatedType)
Allows to override generated column types with <class name>.sqltypes resource. |
int |
hashCode()
|
int |
insert(SQLProcessor processor,
java.lang.String tableName)
|
boolean |
isDeleted()
isDeleted flag is cleared when primary key columns are modified |
boolean |
isModified()
|
protected void |
loadRelationships(SQLProcessor processor)
Use this method to eagerly load relationships in constructors. |
void |
onChange(Column column)
Sets modified flag to true and increments version number. |
java.lang.Object |
removeAttribute(java.lang.Object key)
|
java.lang.Object |
removeColumnAttribute(java.lang.String columnName,
java.lang.Object key)
|
void |
removeObserver(Observer observer)
Removes observer from observers collection. |
void |
setAttribute(java.lang.Object key,
java.lang.Object value)
|
void |
setColumnAttribute(java.lang.String columnName,
java.lang.Object key,
java.lang.Object value)
|
void |
setOriginal()
Sets current values as original values in primary key columns. |
void |
toDom(org.w3c.dom.Element holder)
|
void |
toDom(org.w3c.dom.Element holder,
java.util.Properties nameMap,
boolean originals)
Serializes to DOM. |
java.lang.String |
toString()
|
int |
update(SQLProcessor processor,
java.lang.String tableName)
Updates row in a table by primary key |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected java.util.Collection columns
protected int objectVersion
protected int originalVersion
Constructor Detail |
---|
public DatabaseObject()
public DatabaseObject(boolean force)
force
- Forces columns to be marked as
modified if setter method is invoked even if value being set equals to existing column
value. Useful during inserts with non-nullable columns which map to primitive
types and as such have default values.Method Detail |
---|
protected Column getColumn(java.lang.String name)
protected void addColumn(Column column)
public int update(SQLProcessor processor, java.lang.String tableName) throws java.sql.SQLException
IDatabaseObject
update
in interface IDatabaseObject
processor
- SQLProcessortableName
- Target table
java.sql.SQLException
public int delete(SQLProcessor processor, java.lang.String tableName) throws java.sql.SQLException
IDatabaseObject
delete
in interface IDatabaseObject
processor
- SQLProcessortableName
- Target table
java.sql.SQLException
public int insert(SQLProcessor processor, java.lang.String tableName) throws java.sql.SQLException
insert
in interface IDatabaseObject
java.sql.SQLException
public void fromDom(org.w3c.dom.Element holder) throws ConfigurationException
IDatabaseObject
fromDom
in interface IDatabaseObject
ConfigurationException
- If loading failspublic void fromDom(org.w3c.dom.Element holder, java.util.Properties nameMap) throws ConfigurationException
fromDom
in interface IDatabaseObject
ConfigurationException
public void toDom(org.w3c.dom.Element holder)
toDom
in interface DomSerializable
public void toDom(org.w3c.dom.Element holder, java.util.Properties nameMap, boolean originals)
IDatabaseObject
toDom
in interface IDatabaseObject
holder
- Holder elementnameMap
- Name maporiginals
- Output original values if any.public java.lang.String toString()
toString
in class java.lang.Object
public void onChange(Column column)
onChange
in interface ColumnChangeListener
column
- Changed columnpublic void setOriginal()
IDatabaseObject
setOriginal
in interface IDatabaseObject
public boolean isModified()
isModified
in interface IDatabaseObject
public boolean isDeleted()
IDatabaseObject
isDeleted
in interface IDatabaseObject
public boolean equals(java.lang.Object otherBean)
equals
in class java.lang.Object
otherBean
- Other object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
public void clear()
IDatabaseObject
clear
in interface IDatabaseObject
public void configure(Context context, CompositeConverter converter) throws ConfigurationException
configure
in interface ContextConfigurable
context
- Context to read values fromconverter
- Converter to convert values to proper type.
ConfigurationException
public java.lang.Object get(java.lang.String name)
get
in interface Context
public void configure(org.w3c.dom.Node configNode, Context context) throws ConfigurationException
DomConfigurable
Node
configure
in interface DomConfigurable
ConfigurationException
protected RelationshipList getRelationship(java.lang.String name)
protected RelationshipList addRelationship(java.lang.String name, java.lang.String itemName, Relationship relationship)
name
- Name for composite relationships to render in XML, null for shared relationships.itemName
- name of item element in XML.itemClass
- item class. This class shall have constructor from Element,boolean in order to load from
XML docs.relationship
- protected void loadRelationships(SQLProcessor processor) throws java.sql.SQLException
processor
-
java.sql.SQLException
public void copy(DatabaseObject source)
IDatabaseObject
copy
in interface IDatabaseObject
public void setAttribute(java.lang.Object key, java.lang.Object value)
setAttribute
in interface Attributable
public java.lang.Object getAttribute(java.lang.Object key)
getAttribute
in interface Attributable
public java.lang.Object removeAttribute(java.lang.Object key)
removeAttribute
in interface Attributable
public void setColumnAttribute(java.lang.String columnName, java.lang.Object key, java.lang.Object value)
setColumnAttribute
in interface IDatabaseObject
public java.lang.Object getColumnAttribute(java.lang.String columnName, java.lang.Object key)
getColumnAttribute
in interface IDatabaseObject
public java.lang.Object removeColumnAttribute(java.lang.String columnName, java.lang.Object key)
removeColumnAttribute
in interface IDatabaseObject
protected int getSqlType(java.lang.String columnName, int generatedType)
columnName
- generatedType
-
public int getObjectVersion()
getObjectVersion
in interface Versioned
public void addObserver(Observer observer)
Observable
addObserver
in interface Observable
public void removeObserver(Observer observer)
Observable
removeObserver
in interface Observable
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |