public abstract class AbstractDatasource<T extends Entity> extends java.lang.Object implements Datasource<T>, DatasourceImplementation<T>
Datasource.CommitMode, Datasource.ItemChangeEvent<T extends Entity>, Datasource.ItemChangeListener<T extends Entity>, Datasource.ItemPropertyChangeEvent<T extends Entity>, Datasource.ItemPropertyChangeListener<T extends Entity>, Datasource.State, Datasource.StateChangeEvent<T extends Entity>, Datasource.StateChangeListener<T extends Entity>
Constructor and Description |
---|
AbstractDatasource() |
Modifier and Type | Method and Description |
---|---|
void |
addItemChangeListener(Datasource.ItemChangeListener<T> listener) |
void |
addItemPropertyChangeListener(Datasource.ItemPropertyChangeListener<T> listener) |
void |
addListener(DatasourceListener<T> listener)
Add listener to datasource events.
|
void |
addStateChangeListener(Datasource.StateChangeListener<T> listener) |
void |
clearCommitLists()
Clear new, modified and deleted lists.
|
void |
deleted(T item)
Invoked when the given instance is deleted.
|
boolean |
enableListeners(boolean enable)
Enables or disables datasource listeners.
|
Datasource.CommitMode |
getCommitMode() |
java.lang.String |
getId() |
java.util.Collection<T> |
getItemsToCreate()
New instances to be committed.
|
java.util.Collection<T> |
getItemsToDelete()
Deleted instances to be committed.
|
java.util.Collection<T> |
getItemsToUpdate()
Modified instances to be committed.
|
boolean |
getLoadDynamicAttributes() |
Datasource |
getParent()
Returns parent datasource or null.
|
boolean |
isAllowCommit() |
boolean |
isModified() |
void |
modified(T item)
Invoked when the given instance is modified.
|
void |
removeItemChangeListener(Datasource.ItemChangeListener<T> listener) |
void |
removeItemPropertyChangeListener(Datasource.ItemPropertyChangeListener<T> listener) |
void |
removeListener(DatasourceListener<T> listener)
Remove listener to datasource events
|
void |
removeStateChangeListener(Datasource.StateChangeListener<T> listener) |
void |
setAllowCommit(boolean allowCommit)
Switch on/off ability to commit.
|
void |
setCommitMode(Datasource.CommitMode commitMode)
Sets commit mode explicitly.
|
void |
setLoadDynamicAttributes(boolean value) |
void |
setModified(boolean modified)
Sets "modified" state.
|
void |
setParent(Datasource datasource)
Sets parent datasource.
|
void |
setup(DsContext dsContext,
DataSupplier dataSupplier,
java.lang.String id,
MetaClass metaClass,
View view)
Setup the datasource right after creation.
|
java.lang.String |
toString() |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
committed, initialized, valid
commit, getDataSupplier, getDsContext, getItem, getItemIfValid, getMetaClass, getState, getView, invalidate, refresh, setItem
public void setup(DsContext dsContext, DataSupplier dataSupplier, java.lang.String id, MetaClass metaClass, @Nullable View view)
Datasource
setup
in interface Datasource<T extends Entity>
dsContext
- DsContext instancedataSupplier
- DataSupplier instanceid
- datasource IDmetaClass
- MetaClass of an entity that will be stored in this datasourceview
- a view that will be used to load entities form DB, can be nullpublic java.lang.String getId()
getId
in interface Datasource<T extends Entity>
public boolean isModified()
isModified
in interface Datasource<T extends Entity>
public void setModified(boolean modified)
DatasourceImplementation
setModified
in interface DatasourceImplementation<T extends Entity>
public boolean isAllowCommit()
isAllowCommit
in interface Datasource<T extends Entity>
public void setAllowCommit(boolean allowCommit)
Datasource
Datasource.isModified()
always returns false and Datasource.commit()
has no effect.setAllowCommit
in interface Datasource<T extends Entity>
public java.util.Collection<T> getItemsToCreate()
DatasourceImplementation
getItemsToCreate
in interface DatasourceImplementation<T extends Entity>
public java.util.Collection<T> getItemsToUpdate()
DatasourceImplementation
getItemsToUpdate
in interface DatasourceImplementation<T extends Entity>
public java.util.Collection<T> getItemsToDelete()
DatasourceImplementation
getItemsToDelete
in interface DatasourceImplementation<T extends Entity>
public void modified(T item)
DatasourceImplementation
modified
in interface DatasourceImplementation<T extends Entity>
public void deleted(T item)
DatasourceImplementation
deleted
in interface DatasourceImplementation<T extends Entity>
public boolean enableListeners(boolean enable)
DatasourceImplementation
enableListeners
in interface DatasourceImplementation<T extends Entity>
enable
- true to enable, false to disablepublic Datasource.CommitMode getCommitMode()
getCommitMode
in interface Datasource<T extends Entity>
public void setCommitMode(Datasource.CommitMode commitMode)
DatasourceImplementation
setCommitMode
in interface DatasourceImplementation<T extends Entity>
DatasourceImplementation.setParent(Datasource)
public Datasource getParent()
DatasourceImplementation
If a parent datasource is set, it will receive changed data from the current datasource on commit. Otherwise, the datasource commits to the database.
getParent
in interface DatasourceImplementation<T extends Entity>
public void setParent(Datasource datasource)
DatasourceImplementation
If a parent datasource is set, it will receive changed data from the current datasource on commit. Otherwise, the datasource commits to the database.
setParent
in interface DatasourceImplementation<T extends Entity>
public void addListener(DatasourceListener<T> listener)
Datasource
addListener
in interface Datasource<T extends Entity>
public void removeListener(DatasourceListener<T> listener)
Datasource
removeListener
in interface Datasource<T extends Entity>
public void addItemChangeListener(Datasource.ItemChangeListener<T> listener)
addItemChangeListener
in interface Datasource<T extends Entity>
public void removeItemChangeListener(Datasource.ItemChangeListener<T> listener)
removeItemChangeListener
in interface Datasource<T extends Entity>
public void addItemPropertyChangeListener(Datasource.ItemPropertyChangeListener<T> listener)
addItemPropertyChangeListener
in interface Datasource<T extends Entity>
public void removeItemPropertyChangeListener(Datasource.ItemPropertyChangeListener<T> listener)
removeItemPropertyChangeListener
in interface Datasource<T extends Entity>
public void addStateChangeListener(Datasource.StateChangeListener<T> listener)
addStateChangeListener
in interface Datasource<T extends Entity>
public void removeStateChangeListener(Datasource.StateChangeListener<T> listener)
removeStateChangeListener
in interface Datasource<T extends Entity>
public void clearCommitLists()
DatasourceImplementation
clearCommitLists
in interface DatasourceImplementation<T extends Entity>
public boolean getLoadDynamicAttributes()
getLoadDynamicAttributes
in interface Datasource<T extends Entity>
public void setLoadDynamicAttributes(boolean value)
setLoadDynamicAttributes
in interface Datasource<T extends Entity>
value
- whether to load dynamic attributespublic java.lang.String toString()
toString
in class java.lang.Object