Class EntityStoreManagerImpl
java.lang.Object
io.vertigo.datastore.impl.entitystore.EntityStoreManagerImpl
- All Implemented Interfaces:
io.vertigo.core.node.component.Activeable,io.vertigo.core.node.component.Component,io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Manager,io.vertigo.core.node.definition.DefinitionProvider,io.vertigo.core.node.definition.SimpleDefinitionProvider,EntityStoreManager
public final class EntityStoreManagerImpl
extends Object
implements EntityStoreManager, io.vertigo.core.node.component.Activeable, io.vertigo.core.node.definition.SimpleDefinitionProvider
Implementation of DataStore.
- Author:
- pchretien, mlaroche, npiedeloup
-
Field Summary
Fields inherited from interface io.vertigo.datastore.entitystore.EntityStoreManager
MAIN_DATA_SPACE_NAME -
Constructor Summary
ConstructorsConstructorDescriptionEntityStoreManagerImpl(CacheManager cacheManager, io.vertigo.commons.transaction.VTransactionManager transactionManager, io.vertigo.commons.eventbus.EventBusManager eventBusManager, io.vertigo.datamodel.task.TaskManager taskManager, List<EntityStorePlugin> entityStorePlugins) Constructor -
Method Summary
Modifier and TypeMethodDescriptionintcount(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition) Nombre d'éléments présents dans le sysème de persistance.<E extends io.vertigo.datamodel.data.model.Entity>
intcount(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria) Count elements identified by criteria<E extends io.vertigo.datamodel.data.model.Entity>
Ecreate(E entity) Create an object.<E extends io.vertigo.datamodel.data.model.Entity>
io.vertigo.datamodel.data.model.DtList<E> createList(io.vertigo.datamodel.data.model.DtList<E> entities) Create a list of object.voiddelete(io.vertigo.datamodel.data.model.UID<? extends io.vertigo.datamodel.data.model.Entity> uri) Destruction d'un objet persistant par son UID.<E extends io.vertigo.datamodel.data.model.Entity>
voiddeleteList(List<io.vertigo.datamodel.data.model.UID<E>> uids) Delete a list of object uids.<E extends io.vertigo.datamodel.data.model.Entity>
io.vertigo.datamodel.data.model.DtList<E> find(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria, io.vertigo.datamodel.data.model.DtListState dtListState) Returns a list identified by criteria<E extends io.vertigo.datamodel.data.model.Entity>
io.vertigo.datamodel.data.model.DtList<E> findAll(io.vertigo.datamodel.data.model.DtListURI uri) Récupération d'une liste identifiée par son UID.Return the a dedicated object that handles NN associationsList<? extends io.vertigo.core.node.definition.Definition> provideDefinitions(io.vertigo.core.node.definition.DefinitionSpace definitionSpace) <E extends io.vertigo.datamodel.data.model.Entity>
EreadOne(io.vertigo.datamodel.data.model.UID<E> uri) Récupération d'un objet persistant par son UID.<E extends io.vertigo.datamodel.data.model.Entity>
EreadOneForUpdate(io.vertigo.datamodel.data.model.UID<E> uri) Loads and marks element for update, and ensure non concurrency.<D extends io.vertigo.datamodel.data.model.DataObject>
io.vertigo.datamodel.data.model.DtList<D> Sorts a list from a column.voidstart()voidstop()voidupdate(io.vertigo.datamodel.data.model.Entity entity) Update an object.<E extends io.vertigo.datamodel.data.model.Entity>
voidupdateList(io.vertigo.datamodel.data.model.DtList<E> entities) Update a list of object.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.vertigo.core.node.definition.DefinitionProvider
addDefinitionResourceConfigMethods inherited from interface io.vertigo.core.node.definition.SimpleDefinitionProvider
get
-
Constructor Details
-
EntityStoreManagerImpl
@Inject public EntityStoreManagerImpl(CacheManager cacheManager, io.vertigo.commons.transaction.VTransactionManager transactionManager, io.vertigo.commons.eventbus.EventBusManager eventBusManager, io.vertigo.datamodel.task.TaskManager taskManager, List<EntityStorePlugin> entityStorePlugins) Constructor- Parameters:
transactionManager- transactionManagereventBusManager- eventBusManagerentityStoreManager- storeManagerdataStoreConfig- dataStoreConfig
-
-
Method Details
-
start
public void start()- Specified by:
startin interfaceio.vertigo.core.node.component.Activeable
-
stop
public void stop()- Specified by:
stopin interfaceio.vertigo.core.node.component.Activeable
-
readOneForUpdate
public <E extends io.vertigo.datamodel.data.model.Entity> E readOneForUpdate(io.vertigo.datamodel.data.model.UID<E> uri) Loads and marks element for update, and ensure non concurrency. Fire an update event for this uid on eventbus after commit.- Specified by:
readOneForUpdatein interfaceEntityStoreManager- Type Parameters:
E- the type of entity- Parameters:
uri- UID of object- Returns:
- object to update
-
create
public <E extends io.vertigo.datamodel.data.model.Entity> E create(E entity) Create an object. No object with the same id must have been created previously.- Specified by:
createin interfaceEntityStoreManager- Parameters:
entity- the entity to create- Returns:
- the created object
-
createList
public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> createList(io.vertigo.datamodel.data.model.DtList<E> entities) Create a list of object. The underlying implementation is performance optimized (like batch mode in SQL) No object with the same id must have been created previously.- Specified by:
createListin interfaceEntityStoreManager- Parameters:
entities- the entity to create- Returns:
- the created objects
-
update
public void update(io.vertigo.datamodel.data.model.Entity entity) Update an object. This object must have an id.- Specified by:
updatein interfaceEntityStoreManager- Parameters:
entity- the entity to update
-
updateList
public <E extends io.vertigo.datamodel.data.model.Entity> void updateList(io.vertigo.datamodel.data.model.DtList<E> entities) Description copied from interface:EntityStoreManagerUpdate a list of object. The underlying implementation is performance optimized (like batch mode in SQL) All objects in the list must have an id- Specified by:
updateListin interfaceEntityStoreManager- Parameters:
entities- the entity to create
-
delete
public void delete(io.vertigo.datamodel.data.model.UID<? extends io.vertigo.datamodel.data.model.Entity> uri) Destruction d'un objet persistant par son UID.- Specified by:
deletein interfaceEntityStoreManager- Parameters:
uri- UID de l'objet à supprimer
-
deleteList
public <E extends io.vertigo.datamodel.data.model.Entity> void deleteList(List<io.vertigo.datamodel.data.model.UID<E>> uids) Description copied from interface:EntityStoreManagerDelete a list of object uids. The underlying implementation is performance optimized (like batch mode in SQL)- Specified by:
deleteListin interfaceEntityStoreManager- Parameters:
uids- the uids to delete
-
readOne
public <E extends io.vertigo.datamodel.data.model.Entity> E readOne(io.vertigo.datamodel.data.model.UID<E> uri) Récupération d'un objet persistant par son UID. Lorsque l'objet est en lecture seule il est possible d'accéder au objets partagés. (Liste de référence par ex) L'objet doit exister.- Specified by:
readOnein interfaceEntityStoreManager- Type Parameters:
E- the type of entity- Parameters:
uri- UID de l'object- Returns:
- object récupéré NOT NULL
-
findAll
public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> findAll(io.vertigo.datamodel.data.model.DtListURI uri) Récupération d'une liste identifiée par son UID.- Specified by:
findAllin interfaceEntityStoreManager- Type Parameters:
E- the type of entity- Parameters:
uri- UID de la collection à récupérer- Returns:
- DtList DTC
-
find
public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> find(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria, io.vertigo.datamodel.data.model.DtListState dtListState) Returns a list identified by criteria- Specified by:
findin interfaceEntityStoreManager- Parameters:
dataDefinition- the list definitioncriteria- criteriadtListState- request state : sort, top, offset- Returns:
- list
-
count
public int count(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition) Nombre d'éléments présents dans le sysème de persistance.- Specified by:
countin interfaceEntityStoreManager- Parameters:
dataDefinition- Définition de DT- Returns:
- Nombre d'éléments.
-
count
public <E extends io.vertigo.datamodel.data.model.Entity> int count(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria) Count elements identified by criteria- Specified by:
countin interfaceEntityStoreManager- Parameters:
dataDefinition- the list definitioncriteria- criteria- Returns:
- count of elements
-
provideDefinitions
public List<? extends io.vertigo.core.node.definition.Definition> provideDefinitions(io.vertigo.core.node.definition.DefinitionSpace definitionSpace) - Specified by:
provideDefinitionsin interfaceio.vertigo.core.node.definition.SimpleDefinitionProvider
-
getBrokerNN
Return the a dedicated object that handles NN associations- Specified by:
getBrokerNNin interfaceEntityStoreManager- Returns:
- the handler for NN Associations
-
getMasterDataConfig
- Specified by:
getMasterDataConfigin interfaceEntityStoreManager
-
getDataStoreConfig
- Specified by:
getDataStoreConfigin interfaceEntityStoreManager- Returns:
- Configuration du StoreManager
-
sort
public <D extends io.vertigo.datamodel.data.model.DataObject> io.vertigo.datamodel.data.model.DtList<D> sort(io.vertigo.datamodel.data.model.DtList<D> list, String fieldName, boolean desc) Sorts a list from a column.- Specified by:
sortin interfaceEntityStoreManager- Parameters:
list- the list to sortfieldName- the field namedesc- if the sotr is desc- Returns:
- the sorted list
-