Class GenericDao<M extends ItemModel>

  • All Implemented Interfaces:
    Dao

    @Deprecated(since="4.4",
                forRemoval=true)
    public abstract class GenericDao<M extends ItemModel>
    extends java.lang.Object
    implements Dao
    Deprecated, for removal: This API element is subject to removal in a future version.
    Since 4.4. User DefaultGenericDao

    Generic DAO to provide generic functionality common to all DAOs.

    Just extend from this class providing the generated hybris Item class I and the Model class M.

    • Constructor Summary

      Constructors 
      Constructor Description
      GenericDao()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Instantiates a new generic dao.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      M copyDirtyAttributes​(M source, M target)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Copies dirty attributes from source model to the target.
      java.lang.Integer countAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs, boolean excludeSubtypes)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Counts models matching the given attribute map.
      M deepClone​(M model, java.lang.String... excludeAttributesFromCopy)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Copies all attributes that are marked as loaded from model into a new copy of the same ItemModel type.
      java.util.List<M> findAll​(int count, int start)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds all models.
      java.util.List<M> findAllByAttribute​(java.lang.String attributeName, java.lang.Object attributeValue)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute.
      java.util.List<M> findAllByAttribute​(java.lang.String attributeName, java.lang.Object attributeValue, int count, int start)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute.
      java.util.List<M> findAllByAttribute​(java.lang.String attributeName, java.lang.Object attributeValue, java.util.Map<java.lang.String,​java.lang.Boolean> orderBy, int count, int start)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute.
      java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute map.
      java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs, int count, int start)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute map.
      java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs, java.util.Map<java.lang.String,​java.lang.Boolean> orderByMap, int count, int start)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute map.
      java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs, java.util.Map<java.lang.String,​java.lang.Boolean> orderByMap, int count, int start, boolean excludeSubtypes)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds models matching the given attribute map.
      M findFirstByAttribute​(java.lang.String attributeName, java.lang.Object attributeValue, java.util.Map<java.lang.String,​java.lang.Boolean> orderBy)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds a model matching the given attribute.
      M findFirstByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs, java.util.Map<java.lang.String,​java.lang.Boolean> orderBy)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds a model matching the given attributes.
      M findUniqueByAttribute​(java.lang.String attributeName, java.lang.Object attributeValue)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds a model matching the given attribute.
      M findUniqueByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Finds a model matching the given attributes.
      BaseDao getBaseDao()
      Deprecated, for removal: This API element is subject to removal in a future version.
       
      FlexibleSearchService getFlexibleSearchService()
      Deprecated, for removal: This API element is subject to removal in a future version.
       
      void save​(M model)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Persists the model.
      void saveAll​(java.util.Collection<M> models)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Save all.
      void setBaseDao​(BaseDao baseDao)
      Deprecated, for removal: This API element is subject to removal in a future version.
       
      void setFlexibleSearchService​(FlexibleSearchService flexibleSearchService)
      Deprecated, for removal: This API element is subject to removal in a future version.
       
      • Methods inherited from class java.lang.Object

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

      • GenericDao

        public GenericDao()
        Deprecated, for removal: This API element is subject to removal in a future version.
        Instantiates a new generic dao.
    • Method Detail

      • findAll

        public java.util.List<M> findAll​(int count,
                                         int start)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Finds all models.
        Parameters:
        count - The max. number of models returned.
        start - The number of the first record.
        Returns:
        A list of models.
      • findUniqueByAttribute

        public M findUniqueByAttribute​(java.lang.String attributeName,
                                       java.lang.Object attributeValue)
                                throws AmbiguousIdentifierException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds a model matching the given attribute. If the query returns more than one model a AmbiguousIdentifierException is thrown. If no model was found null is returned.

        Parameters:
        attributeName - The name of the attribute.
        attributeValue - The value of the attribute
        Returns:
        A list of models.
        Throws:
        AmbiguousIdentifierException - If more than one model was found.
      • findUniqueByAttributes

        public M findUniqueByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs)
                                 throws AmbiguousIdentifierException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds a model matching the given attributes. If the query returns more than one model a AmbiguousIdentifierException is thrown. If no model was found null is returned.

        Parameters:
        attribs - A map of attribute names and values
        Returns:
        A list of models.
        Throws:
        AmbiguousIdentifierException - If more than one model was found.
      • findFirstByAttribute

        public M findFirstByAttribute​(java.lang.String attributeName,
                                      java.lang.Object attributeValue,
                                      java.util.Map<java.lang.String,​java.lang.Boolean> orderBy)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds a model matching the given attribute. If the query returns more than one model the first model is returned. If no model was found null is returned.

        Parameters:
        attributeName - The name of the attribute.
        attributeValue - The value of the attribute
        orderBy - Map providing attribute names that will be included in the order by clause . The boolean value determines whether the sort order should be ascending (true) or descending ( false).
        Returns:
        A list of models.
      • findFirstByAttributes

        public M findFirstByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs,
                                       java.util.Map<java.lang.String,​java.lang.Boolean> orderBy)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds a model matching the given attributes. If the query returns more than one model the first model is returned. If no model was found null is returned.

        Parameters:
        attribs - A map of attribute names and values
        orderBy - Map providing attribute names that will be included in the order by clause. The boolean value determines whether the sort order should be ascending (true) or descending ( false).
        Returns:
        A list of models.
      • findAllByAttribute

        public java.util.List<M> findAllByAttribute​(java.lang.String attributeName,
                                                    java.lang.Object attributeValue)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute.

        Parameters:
        attributeName - The name of the attribute.
        attributeValue - The value of the attribute
        Returns:
        A list of models.
      • findAllByAttribute

        public java.util.List<M> findAllByAttribute​(java.lang.String attributeName,
                                                    java.lang.Object attributeValue,
                                                    int count,
                                                    int start)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute.

        Parameters:
        attributeName - The name of the attribute.
        attributeValue - The value of the attribute
        count - The max. number of models returned.
        start - The number of the first record.
        Returns:
        A list of models.
      • findAllByAttribute

        public java.util.List<M> findAllByAttribute​(java.lang.String attributeName,
                                                    java.lang.Object attributeValue,
                                                    java.util.Map<java.lang.String,​java.lang.Boolean> orderBy,
                                                    int count,
                                                    int start)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute.

        Parameters:
        attributeName - The name of the attribute.
        attributeValue - The value of the attribute
        orderBy - Map providing attribute names that will be included in the order by clause . The boolean value determines whether the sort order should be ascending (true) or descending ( false).
        count - The max. number of models returned.
        start - The number of the first record.
        Returns:
        A list of models.
      • findAllByAttributes

        public java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute map.

        Parameters:
        attribs - Map providing attribute names and values that will be included in the where clause or null. The value can be an ItemModel .
        Returns:
        the list< m>
      • findAllByAttributes

        public java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs,
                                                     int count,
                                                     int start)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute map.

        Parameters:
        attribs - Map providing attribute names and values that will be included in the where clause or null. The value can be an ItemModel.
        count - The max. number of models returned.
        start - The number of the first record.
        Returns:
        A list of models.
      • findAllByAttributes

        public java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs,
                                                     java.util.Map<java.lang.String,​java.lang.Boolean> orderByMap,
                                                     int count,
                                                     int start)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute map.

        Parameters:
        attribs - Map providing attribute names and values that will be included in the where clause or null. The value can be an ItemModel.
        orderByMap - Map providing attribute names that will be included in the order by clause. The boolean value determines whether the sort order should be ascending (true) or descending ( false).
        count - The max. number of models returned.
        start - The number of the first record.
        Returns:
        A list of models.
      • findAllByAttributes

        public java.util.List<M> findAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs,
                                                     java.util.Map<java.lang.String,​java.lang.Boolean> orderByMap,
                                                     int count,
                                                     int start,
                                                     boolean excludeSubtypes)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Finds models matching the given attribute map.

        Parameters:
        attribs - Map providing attribute names and values that will be included in the where clause or null. The value can be an ItemModel.
        orderByMap - Map providing attribute names that will be included in the order by clause. The boolean value determines whether the sort order should be ascending (true) or descending ( false).
        count - The max. number of models returned.
        start - The number of the first record.
        excludeSubtypes - Use if you want to exclude the subtyps so in the case of a Product no Color- or SizeVariants will be given back.
        Returns:
        A list of models.
      • countAllByAttributes

        public java.lang.Integer countAllByAttributes​(java.util.Map<java.lang.String,​java.lang.Object> attribs,
                                                      boolean excludeSubtypes)
        Deprecated, for removal: This API element is subject to removal in a future version.

        Counts models matching the given attribute map.

        Parameters:
        attribs - Map providing attribute names and values that will be included in the where clause or null. The value can be an ItemModel .
        excludeSubtypes - Use if you want to exclude the subtyps so in the case of a Product no Color- or SizeVariants will be given back.
        Returns:
        A list of models.
      • save

        public void save​(M model)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Persists the model.
        Parameters:
        model - the model to save
        Throws:
        ModelSavingException - if the save operation failed
        See Also:
        ModelService.save(java.lang.Object)
      • saveAll

        public void saveAll​(java.util.Collection<M> models)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Save all.
        Parameters:
        models - the models
      • copyDirtyAttributes

        public M copyDirtyAttributes​(M source,
                                     M target)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Copies dirty attributes from source model to the target.
        Parameters:
        source - A model to read dirty attributes from.
        target - A model to updated with dirty values of the source.
        Returns:
        An updated target model.
      • deepClone

        public M deepClone​(M model,
                           java.lang.String... excludeAttributesFromCopy)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Copies all attributes that are marked as loaded from model into a new copy of the same ItemModel type. Note that both models are detached from the ModelContext when using this method you should explicitly call ModelService.attach(Object)

         The following attributes will not be copied.
         Item.CREATION_TIME
         Item.MODIFIED_TIME
         Item.PK
         Item.OWNER
         assignedCockpitItemTemplates
         allDocuments
         synchronizationSources
         synchronizedCopies
         savedValues
         valueHistory
        
         
        Parameters:
        model - A model to copy
        excludeAttributesFromCopy - the exclude attributes from copy
        Returns:
        A copy of a model.
      • setBaseDao

        public void setBaseDao​(BaseDao baseDao)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Parameters:
        baseDao - the baseDao to set
      • getBaseDao

        public BaseDao getBaseDao()
        Deprecated, for removal: This API element is subject to removal in a future version.
      • getFlexibleSearchService

        public FlexibleSearchService getFlexibleSearchService()
        Deprecated, for removal: This API element is subject to removal in a future version.
      • setFlexibleSearchService

        public void setFlexibleSearchService​(FlexibleSearchService flexibleSearchService)
        Deprecated, for removal: This API element is subject to removal in a future version.