public abstract class AbstractDomainObject<T> extends java.lang.Object implements DomainObject<T>
Modifier and Type | Field and Description |
---|---|
protected boolean |
displayInternalMethods |
protected java.util.Map<java.lang.String,java.lang.String> |
displayValues |
protected long |
domainFactoryId |
protected static java.lang.Object[] |
EMPTY_ARG |
protected boolean |
enhanced |
protected int |
internalId |
protected java.util.List<java.lang.String> |
internalMethods
Methods to skip while building toString()
|
protected boolean |
loaded |
protected boolean |
loading |
protected boolean |
modified |
protected DataHolder |
originalValues |
protected java.beans.PropertyChangeSupport |
pcs |
protected PersistentState |
persistentState |
protected java.lang.Object |
uniqueId |
Constructor and Description |
---|
AbstractDomainObject() |
Modifier and Type | Method and Description |
---|---|
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener) |
boolean |
create() |
T |
detach()
See AbstractDomainObjectFactory.detach().
|
java.lang.Object |
getDisplayValue(java.lang.String fieldName) |
java.util.Map<java.lang.String,java.lang.String> |
getDisplayValues() |
long |
getDomainFactoryId() |
int |
getInternalId()
Getter for property internalId.
|
java.util.List<java.lang.String> |
getInternalMethods() |
java.lang.Object |
getOriginalValue(java.lang.String fieldName) |
DataHolder |
getOriginalValues() |
PersistentState |
getPersistentState() |
java.beans.PropertyChangeSupport |
getPropertyChangeSupport() |
<UID> UID |
getUniqueId() |
boolean |
isDisplayInternalMethods() |
boolean |
isEnhanced() |
boolean |
isLoaded()
Getter for property loaded.
|
boolean |
isLoading()
Indicator that this object in process of loading with values from database
|
boolean |
isModified()
Indicator that this object is modified.
|
boolean |
load()
Populate DomainObject with values from originalValues
|
protected java.lang.Object |
readValue(java.lang.reflect.Method method) |
void |
reattach(T instance)
Use case scenario using this method:
1.
|
boolean |
remove() |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener) |
void |
reset()
Make an object "brand-new", however live values intact
|
void |
setDisplayInternalMethods(boolean displayInternalMethods) |
void |
setDisplayValue(java.lang.String field,
java.lang.String displayValue)
Display value for given field.
|
void |
setDisplayValues(java.util.Map<java.lang.String,java.lang.String> displayValues) |
void |
setDomainFactoryId(long domainFactoryId) |
void |
setEnhanced(boolean enhanced) |
void |
setInternalId(int internalId)
Every time DomainObjectFactory is loaded this object is assigned internalId
which is valid only for the same DomainObjectFactory (see domainFactoryId)
if DomainObject used with other DomainObjectFactory it gets new internalId
when used with DomainObjectFactory.[setObject(...), load(), create(), store(), remove()]
|
void |
setInternalMethods(java.util.List<java.lang.String> internalMethods) |
void |
setLoaded(boolean loaded)
Setter for property loaded.
|
void |
setLoading(boolean loading) |
void |
setModified(boolean modified) |
void |
setOriginalValue(java.lang.String fieldName,
java.lang.Object value) |
void |
setOriginalValues(DataHolder originalValues) |
void |
setPersistentState(PersistentState persistentState) |
<UID> void |
setUniqueId(UID uid) |
boolean |
store()
Just a mark for data modification, actual modification done in DomainObjectFactory and DataWriter
normally this methods called from DomainObjectFactory.[create(DomainObject), store(DomainObject), remove(DomainObject)]
|
boolean |
syncOriginal()
Populate originalValues with values from DomainObject
|
java.lang.String |
toString() |
protected void |
writeValue(java.lang.reflect.Method method,
java.lang.Object[] value) |
protected DataHolder originalValues
protected int internalId
protected PersistentState persistentState
protected boolean loaded
protected boolean loading
protected boolean modified
protected java.util.Map<java.lang.String,java.lang.String> displayValues
protected static final java.lang.Object[] EMPTY_ARG
protected long domainFactoryId
protected java.beans.PropertyChangeSupport pcs
protected boolean displayInternalMethods
protected boolean enhanced
protected java.util.List<java.lang.String> internalMethods
protected java.lang.Object uniqueId
public java.lang.String toString()
toString
in class java.lang.Object
public void setOriginalValues(DataHolder originalValues)
setOriginalValues
in interface DomainObject<T>
public DataHolder getOriginalValues()
getOriginalValues
in interface DomainObject<T>
public void setOriginalValue(java.lang.String fieldName, java.lang.Object value)
setOriginalValue
in interface DomainObject<T>
public java.lang.Object getOriginalValue(java.lang.String fieldName)
getOriginalValue
in interface DomainObject<T>
public PersistentState getPersistentState()
getPersistentState
in interface DomainObject<T>
public void setPersistentState(PersistentState persistentState)
setPersistentState
in interface DomainObject<T>
public int getInternalId()
getInternalId
in interface DomainObject<T>
public void setInternalId(int internalId)
setInternalId
in interface DomainObject<T>
public boolean store()
store
in interface DomainObject<T>
public boolean remove()
remove
in interface DomainObject<T>
public boolean create()
create
in interface DomainObject<T>
public boolean syncOriginal()
syncOriginal
in interface DomainObject<T>
public boolean load()
load
in interface DomainObject<T>
public boolean isLoaded()
isLoaded
in interface DomainObject<T>
public void setLoaded(boolean loaded)
setLoaded
in interface DomainObject<T>
loaded
- New value of property loaded.public boolean isLoading()
isLoading
in interface DomainObject<T>
public void setLoading(boolean loading)
setLoading
in interface DomainObject<T>
public boolean isModified()
isModified
in interface DomainObject<T>
public void setModified(boolean modified)
setModified
in interface DomainObject<T>
public void setDisplayValue(java.lang.String field, java.lang.String displayValue)
setDisplayValue
in interface DomainObject<T>
public java.lang.Object getDisplayValue(java.lang.String fieldName)
getDisplayValue
in interface DomainObject<T>
public void setDomainFactoryId(long domainFactoryId)
setDomainFactoryId
in interface DomainObject<T>
public long getDomainFactoryId()
getDomainFactoryId
in interface DomainObject<T>
protected void writeValue(java.lang.reflect.Method method, java.lang.Object[] value) throws java.lang.Throwable
java.lang.Throwable
protected java.lang.Object readValue(java.lang.reflect.Method method) throws java.lang.Throwable
java.lang.Throwable
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
addPropertyChangeListener
in interface DomainObject<T>
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
removePropertyChangeListener
in interface DomainObject<T>
public java.beans.PropertyChangeSupport getPropertyChangeSupport()
getPropertyChangeSupport
in interface DomainObject<T>
public void reset()
reset
in interface DomainObject<T>
public java.util.Map<java.lang.String,java.lang.String> getDisplayValues()
getDisplayValues
in interface DomainObject<T>
public void setDisplayValues(java.util.Map<java.lang.String,java.lang.String> displayValues)
setDisplayValues
in interface DomainObject<T>
public boolean isDisplayInternalMethods()
isDisplayInternalMethods
in interface DomainObject<T>
public void setDisplayInternalMethods(boolean displayInternalMethods)
setDisplayInternalMethods
in interface DomainObject<T>
public java.util.List<java.lang.String> getInternalMethods()
getInternalMethods
in interface DomainObject<T>
public void setInternalMethods(java.util.List<java.lang.String> internalMethods)
setInternalMethods
in interface DomainObject<T>
public void reattach(T instance)
reattach
in interface DomainObject<T>
public T detach()
detach
in interface DomainObject<T>
public <UID> UID getUniqueId()
getUniqueId
in interface DomainObject<T>
public <UID> void setUniqueId(UID uid)
setUniqueId
in interface DomainObject<T>
public void setEnhanced(boolean enhanced)
setEnhanced
in interface DomainObject<T>
public boolean isEnhanced()
isEnhanced
in interface DomainObject<T>