|
||||||||||
| 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
|
protected java.lang.String |
xmlElement
Name of object XML Element. |
protected java.lang.String |
xmlNamespace
XML namespace. |
| 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 void |
childrenToSax(org.xml.sax.ContentHandler contentHandler)
Outputs child objects to SAX. |
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,
Converter converter)
|
void |
configure(org.w3c.dom.Node configNode,
Context context,
java.lang.ClassLoader classLoader)
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)
|
org.xml.sax.ContentHandler |
getContentHandler(boolean withHolder)
|
int |
getObjectVersion()
|
protected int |
getSqlType(java.lang.String columnName,
int generatedType)
Allows to override generated column types with <class name>.sqltypes resource. |
protected org.xml.sax.ContentHandler |
getSubHandler(java.lang.String uri,
java.lang.String name,
java.lang.String qName)
If database object receives XML event which doesn't map to any column, it invokes this method to obtain sub-handler for an element. |
int |
hashCode()
|
int |
insert(SQLProcessor processor,
java.lang.String tableName)
|
boolean |
isDeleted()
isDeleted flag is cleared when primary key columns are modified |
boolean |
isModified()
|
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. |
void |
toSax(org.xml.sax.ContentHandler contentHandler,
boolean withHolder)
Serializes object to XML events |
java.lang.String |
toString()
|
int |
update(SQLProcessor processor,
java.lang.String tableName)
Updates row in a table by primary key |
static java.lang.String[] |
xmlNames(java.lang.String className)
Converts fully qualified class name to namespace and element name. |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected java.util.Collection columns
protected java.lang.String xmlNamespace
protected java.lang.String xmlElement
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 IDatabaseObjectprocessor - SQLProcessortableName - Target table
java.sql.SQLException
public int delete(SQLProcessor processor,
java.lang.String tableName)
throws java.sql.SQLException
IDatabaseObject
delete in interface IDatabaseObjectprocessor - SQLProcessortableName - Target table
java.sql.SQLException
public int insert(SQLProcessor processor,
java.lang.String tableName)
throws java.sql.SQLException
insert in interface IDatabaseObjectjava.sql.SQLException
public void fromDom(org.w3c.dom.Element holder)
throws ConfigurationException
IDatabaseObject
fromDom in interface IDatabaseObjectConfigurationException - If loading fails
public void fromDom(org.w3c.dom.Element holder,
java.util.Properties nameMap)
throws ConfigurationException
fromDom in interface IDatabaseObjectConfigurationExceptionpublic void toDom(org.w3c.dom.Element holder)
toDom in interface DomSerializablepublic static java.lang.String[] xmlNames(java.lang.String className)
className -
public void toSax(org.xml.sax.ContentHandler contentHandler,
boolean withHolder)
throws org.xml.sax.SAXException
contentHandler - Events receiverwithHolder - If true outputs object XML element, otherwise only nested elements.
org.xml.sax.SAXException
protected void childrenToSax(org.xml.sax.ContentHandler contentHandler)
throws org.xml.sax.SAXException
contentHandler -
org.xml.sax.SAXException
public void toDom(org.w3c.dom.Element holder,
java.util.Properties nameMap,
boolean originals)
IDatabaseObject
toDom in interface IDatabaseObjectholder - Holder elementnameMap - Name maporiginals - Output original values if any.public java.lang.String toString()
toString in class java.lang.Objectpublic void onChange(Column column)
onChange in interface ColumnChangeListenercolumn - Changed columnpublic void setOriginal()
IDatabaseObject
setOriginal in interface IDatabaseObjectpublic boolean isModified()
isModified in interface IDatabaseObjectpublic boolean isDeleted()
IDatabaseObject
isDeleted in interface IDatabaseObjectpublic boolean equals(java.lang.Object otherBean)
equals in class java.lang.ObjectotherBean - 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.Objectjava.lang.CloneNotSupportedExceptionpublic void clear()
IDatabaseObject
clear in interface IDatabaseObject
public void configure(Context context,
Converter converter)
throws ConfigurationException
configure in interface ContextConfigurablecontext - Context to read values fromconverter - Converter to convert values to proper type.
ConfigurationExceptionpublic java.lang.Object get(java.lang.String name)
get in interface Context
public void configure(org.w3c.dom.Node configNode,
Context context,
java.lang.ClassLoader classLoader)
throws ConfigurationException
DomConfigurableNode
configure in interface DomConfigurableclassLoader - ClassLoader
ConfigurationExceptionpublic void copy(DatabaseObject source)
IDatabaseObject
copy in interface IDatabaseObject
public void setAttribute(java.lang.Object key,
java.lang.Object value)
setAttribute in interface Attributablepublic java.lang.Object getAttribute(java.lang.Object key)
getAttribute in interface Attributablepublic 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 Versionedpublic void addObserver(Observer observer)
Observable
addObserver in interface Observablepublic void removeObserver(Observer observer)
Observable
removeObserver in interface Observablepublic org.xml.sax.ContentHandler getContentHandler(boolean withHolder)
withHolder - True if XML events stream contains start/endElement for
this object.
protected org.xml.sax.ContentHandler getSubHandler(java.lang.String uri,
java.lang.String name,
java.lang.String qName)
name - element local nameqName - element qualified name
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||