Class DAO<E extends Entity,​P>

  • Type Parameters:
    E - the type of entity
    P - Type de la clef primaire.

    public class DAO<E extends Entity,​P>
    extends Object
    Classe utilitaire pour accéder au Broker.
    Author:
    cgodard
    • Constructor Detail

      • DAO

        public DAO​(Class<? extends Entity> entityClass,
                   EntityStoreManager entityStoreManager,
                   TaskManager taskManager,
                   SmartTypeManager smartTypeManager)
        Contructeur.
        Parameters:
        entityClass - Définition du DtObject associé à ce DAO
        entityStoreManager - Manager de gestion de la persistance
        taskManager - Manager de gestion des tâches
    • Method Detail

      • getTaskManager

        protected final TaskManager getTaskManager()
      • save

        public final E save​(E entity)
        Saves an object and returns the saved object
        Parameters:
        entity - Object to save
        Returns:
        the saved entity
      • create

        public final E create​(E entity)
        Creates an object.
        Parameters:
        entity - Object to create
        Returns:
        the created entity
      • update

        public final void update​(E entity)
        Update an object.
        Parameters:
        entity - Object to update
      • reloadAndMerge

        public final E reloadAndMerge​(Fragment<E> fragment)
        Reloads entity from fragment, and keep fragment modifications.
        Parameters:
        fragment - merged from datastore and input
        Returns:
        merged root entity merged with the fragment
      • delete

        public final void delete​(UID<E> uid)
        Suppression d'un objet persistant par son UID.
        Parameters:
        uid - UID de l'objet à supprimer
      • delete

        public final void delete​(P id)
        Suppression d'un objet persistant par son identifiant.
        Cette méthode est utile uniquement dans les cas où l'identifiant est un identifiant technique (ex: entier calculé via une séquence).
        Parameters:
        id - identifiant de l'objet persistant à supprimer
      • get

        public final E get​(UID<E> uid)
        Récupération d'un objet persistant par son URI. L'objet doit exister.
        Parameters:
        uid - UID de l'objet à récupérer
        Returns:
        D Object recherché
      • getFragment

        public final <F extends Fragment<E>> F getFragment​(UID<E> uid,
                                                           Class<F> fragmentClass)
        Récupération d'un fragment persistant par son URI. L'objet doit exister.
        Parameters:
        uid - UID de l'objet à récupérer
        fragmentClass - Fragment class
        Returns:
        F Fragment recherché
      • get

        public final E get​(P id)
        Récupération d'un objet persistant par son identifiant.
        Cette méthode est utile uniquement dans les cas où l'identifiant est un identifiant technique (ex: entier calculé via une séquence).
        Parameters:
        id - identifiant de l'objet persistant recherché
        Returns:
        D Object objet recherché
      • get

        public final <F extends Fragment<E>> F get​(P id,
                                                   Class<F> fragmentClass)
        Récupération d'un fragment persistant par son identifiant.
        Parameters:
        id - identifiant de l'objet persistant recherché
        fragmentClass - Fragment class
        Returns:
        D Fragment recherché
      • createDtObjectUID

        protected final UID<E> createDtObjectUID​(P id)
        Retourne l'URI de DtObject correspondant à une URN de définition et une valeur d'UID donnés.
        Parameters:
        id - identifiant de l'objet persistant recherché
        Returns:
        UID recherchée
      • getListByDtFieldName

        public final DtList<E> getListByDtFieldName​(DtFieldName dtFieldName,
                                                    Serializable value,
                                                    DtListState dtListState)
        Parameters:
        dtFieldName - de l'object à récupérer NOT NULL
        value - de l'object à récupérer NOT NULL
        dtListState - Etat de la liste : Sort, top, offset
        Returns:
        DtList récupéré NOT NUL
      • find

        public final E find​(Criteria<E> criteria)
        Find one and only one object matching the criteria. If there are many results or no result an exception is thrown
        Parameters:
        criteria - the filter criteria
        Returns:
        the result
      • findOptional

        public final Optional<E> findOptional​(Criteria<E> criteria)
        Find one or zero object matching the criteria. If there are many results an exception is thrown
        Parameters:
        criteria - the filter criteria
        Returns:
        the optional result
      • findAll

        public final DtList<E> findAll​(Criteria<E> criteria,
                                       DtListState dtListState)
        Parameters:
        criteria - The criteria
        dtListState - Etat de la liste : Sort, top, offset
        Returns:
        DtList result NOT NULL