Class SqlEntityStorePlugin

java.lang.Object
io.vertigo.datastore.plugins.entitystore.sql.SqlEntityStorePlugin
All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent, io.vertigo.core.node.component.Plugin, EntityStorePlugin

public final class SqlEntityStorePlugin extends Object implements EntityStorePlugin
This class is the basic implementation of the dataStore in the sql way.
Author:
pchretien
  • Constructor Summary

    Constructors
    Constructor
    Description
    SqlEntityStorePlugin(Optional<String> optDataSpace, Optional<String> optConnectionName, Optional<String> optSequencePrefix, io.vertigo.datamodel.task.TaskManager taskManager, io.vertigo.database.sql.SqlManager sqlManager)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    <E extends io.vertigo.datamodel.data.model.Entity>
    Integer
    countByCriteria(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria)
    Returns the number of elements contained in the definition and matching a criteria.
    <E extends io.vertigo.datamodel.data.model.Entity>
    E
    create(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, E entity)
    Creates 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)
     
    void
    delete(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID uri)
    Deletes an object identified by an uri.
    <E extends io.vertigo.datamodel.data.model.Entity>
    void
    deleteList(List<io.vertigo.datamodel.data.model.UID<E>> uids)
    Deletes a list of entities
    <E extends io.vertigo.datamodel.data.model.Entity>
    io.vertigo.datamodel.data.model.DtList<E>
    findAll(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.definitions.association.DtListURIForNNAssociation dtcUri)
    Récupération d'une liste correspondant à l'URI fournie.
    <E extends io.vertigo.datamodel.data.model.Entity>
    io.vertigo.datamodel.data.model.DtList<E>
    findAll(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.definitions.association.DtListURIForSimpleAssociation dtcUri)
    Récupération d'une liste correspondant à l'URI fournie.
    <E extends io.vertigo.datamodel.data.model.Entity>
    io.vertigo.datamodel.data.model.DtList<E>
    findByCriteria(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria, io.vertigo.datamodel.data.model.DtListState dtListState)
    Finds a list of entities matching a criteria.
    <E extends io.vertigo.datamodel.data.model.Entity>
    E
    readNullable(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID<E> uri)
    Récupération de l'objet correspondant à l'URI fournie.
    <E extends io.vertigo.datamodel.data.model.Entity>
    E
    readNullableForUpdate(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID<?> uri)
    Loads for update.
    void
    update(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.Entity entity)
    Updates an object.
    <E extends io.vertigo.datamodel.data.model.Entity>
    void
    updateList(io.vertigo.datamodel.data.model.DtList<E> entities)
    Update a list of entities

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SqlEntityStorePlugin

      @Inject public SqlEntityStorePlugin(Optional<String> optDataSpace, Optional<String> optConnectionName, Optional<String> optSequencePrefix, io.vertigo.datamodel.task.TaskManager taskManager, io.vertigo.database.sql.SqlManager sqlManager)
      Constructor.
      Parameters:
      optDataSpace - the dataSpace (option)
      optConnectionName - the name of the connection
      optSequencePrefix - the prefix of sequences
      taskManager - the taskManager
      sqlManager - the sqlDataBaseManager
  • Method Details

    • getDataSpace

      public String getDataSpace()
      Specified by:
      getDataSpace in interface EntityStorePlugin
      Returns:
      the dataSpace
    • getConnectionName

      public String getConnectionName()
      Specified by:
      getConnectionName in interface EntityStorePlugin
      Returns:
      the name of the connection
    • readNullable

      public <E extends io.vertigo.datamodel.data.model.Entity> E readNullable(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID<E> uri)
      Récupération de l'objet correspondant à l'URI fournie.
      Specified by:
      readNullable in interface EntityStorePlugin
      Type Parameters:
      E - the type of entity
      Parameters:
      dataDefinition - Definition
      uri - UID de l'objet à charger
      Returns:
      D correspondant à l'URI fournie.
    • findAll

      public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> findAll(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.definitions.association.DtListURIForNNAssociation dtcUri)
      Récupération d'une liste correspondant à l'URI fournie. NOT NULL
      Specified by:
      findAll in interface EntityStorePlugin
      Type Parameters:
      E - the type of entity
      Parameters:
      dataDefinition - Definition
      dtcUri - UID de la collection à charger
      Returns:
      DtList Liste correspondant à l'URI fournie
    • findAll

      public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> findAll(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.definitions.association.DtListURIForSimpleAssociation dtcUri)
      Récupération d'une liste correspondant à l'URI fournie. NOT NULL
      Specified by:
      findAll in interface EntityStorePlugin
      Type Parameters:
      E - the type of entity
      Parameters:
      dataDefinition - Definition
      dtcUri - UID de la collection à charger
      Returns:
      DtList Liste correspondant à l'URI fournie
    • findByCriteria

      public <E extends io.vertigo.datamodel.data.model.Entity> io.vertigo.datamodel.data.model.DtList<E> findByCriteria(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria, io.vertigo.datamodel.data.model.DtListState dtListState)
      Finds a list of entities matching a criteria.
      Specified by:
      findByCriteria in interface EntityStorePlugin
      Parameters:
      dataDefinition - the definition of entities to find
      criteria - the criteria to match
      dtListState - listState of rows to retrieve
      Returns:
      the list
    • countByCriteria

      public <E extends io.vertigo.datamodel.data.model.Entity> Integer countByCriteria(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.criteria.Criteria<E> criteria)
      Returns the number of elements contained in the definition and matching a criteria.
      Specified by:
      countByCriteria in interface EntityStorePlugin
      Parameters:
      dataDefinition - the definition of entities to count
      criteria - the criteria to match
      Returns:
      the number of elements
    • create

      public <E extends io.vertigo.datamodel.data.model.Entity> E create(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, E entity)
      Creates an object. No object with the same id must have been created previously.
      Specified by:
      create in interface EntityStorePlugin
      Parameters:
      dataDefinition - Definition
      entity - Object to create
      Returns:
      the created entity
    • 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)
      Specified by:
      createList in interface EntityStorePlugin
    • update

      public void update(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.Entity entity)
      Updates an object. This object must have an id.
      Specified by:
      update in interface EntityStorePlugin
      Parameters:
      dataDefinition - Definition
      entity - Object 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: EntityStorePlugin
      Update a list of entities
      Specified by:
      updateList in interface EntityStorePlugin
      Parameters:
      entities - entities
    • delete

      public void delete(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID uri)
      Deletes an object identified by an uri.
      Specified by:
      delete in interface EntityStorePlugin
      Parameters:
      dataDefinition - Definition
      uri - UID
    • 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: EntityStorePlugin
      Deletes a list of entities
      Specified by:
      deleteList in interface EntityStorePlugin
      Parameters:
      uids - uids of entities to delete
    • readNullableForUpdate

      public <E extends io.vertigo.datamodel.data.model.Entity> E readNullableForUpdate(io.vertigo.datamodel.data.definitions.DataDefinition dataDefinition, io.vertigo.datamodel.data.model.UID<?> uri)
      Loads for update.
      Specified by:
      readNullableForUpdate in interface EntityStorePlugin
      Type Parameters:
      E - the type of entity
      Parameters:
      dataDefinition - Object's definition
      uri - Object's uid
      Returns:
      D Object value.