Class EntityQueryWrapper<R>

  • All Implemented Interfaces:
    javax.persistence.Query, javax.persistence.TypedQuery<R>, org.hibernate.BasicQueryContract<org.hibernate.query.CommonQueryContract>, org.hibernate.Query<R>, org.hibernate.query.CommonQueryContract, org.hibernate.query.Query<R>

    public class EntityQueryWrapper<R>
    extends QueryWrapper<R>
    Wraps a hibernate query and adds checks so that unsaved items aren't added to the query as parameters. This is normally not detected until the query is executed. By wrapping a query with this class the same situation is detected immediately when adding the parameter to the query, which makes it easier to find problems.
    Version:
    2.5
    Author:
    nicklas
    Last modified
    $Date: 2018-11-06 15:50:29 +0100 (ti, 06 nov 2018) $
    • Constructor Detail

      • EntityQueryWrapper

        public EntityQueryWrapper​(org.hibernate.query.Query<R> query)
    • Method Detail

      • setEntity

        @Deprecated
        public org.hibernate.query.Query<R> setEntity​(int position,
                                                      Object val)
        Deprecated.
        Specified by:
        setEntity in interface org.hibernate.Query<R>
        Specified by:
        setEntity in interface org.hibernate.query.Query<R>
        Overrides:
        setEntity in class QueryWrapper<R>
      • setEntity

        @Deprecated
        public org.hibernate.query.Query<R> setEntity​(String name,
                                                      Object val)
        Deprecated.
        Specified by:
        setEntity in interface org.hibernate.Query<R>
        Specified by:
        setEntity in interface org.hibernate.query.Query<R>
        Overrides:
        setEntity in class QueryWrapper<R>
      • setParameter

        public org.hibernate.query.Query<R> setParameter​(int position,
                                                         Object val)
                                                  throws org.hibernate.HibernateException
        Specified by:
        setParameter in interface javax.persistence.Query
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Specified by:
        setParameter in interface javax.persistence.TypedQuery<R>
        Overrides:
        setParameter in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameter

        public org.hibernate.query.Query<R> setParameter​(String name,
                                                         Object val)
                                                  throws org.hibernate.HibernateException
        Specified by:
        setParameter in interface javax.persistence.Query
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Specified by:
        setParameter in interface javax.persistence.TypedQuery<R>
        Overrides:
        setParameter in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameter

        public org.hibernate.query.Query<R> setParameter​(int position,
                                                         Object val,
                                                         org.hibernate.type.Type type)
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Overrides:
        setParameter in class QueryWrapper<R>
      • setParameter

        public org.hibernate.query.Query<R> setParameter​(String name,
                                                         Object val,
                                                         org.hibernate.type.Type type)
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Overrides:
        setParameter in class QueryWrapper<R>
      • setParameterList

        public org.hibernate.query.Query<R> setParameterList​(String name,
                                                             Collection vals)
                                                      throws org.hibernate.HibernateException
        Specified by:
        setParameterList in interface org.hibernate.Query<R>
        Specified by:
        setParameterList in interface org.hibernate.query.Query<R>
        Overrides:
        setParameterList in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameterList

        public org.hibernate.query.Query<R> setParameterList​(String name,
                                                             Object[] vals)
                                                      throws org.hibernate.HibernateException
        Specified by:
        setParameterList in interface org.hibernate.Query<R>
        Specified by:
        setParameterList in interface org.hibernate.query.Query<R>
        Overrides:
        setParameterList in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameterList

        public org.hibernate.query.Query<R> setParameterList​(String name,
                                                             Collection vals,
                                                             org.hibernate.type.Type type)
                                                      throws org.hibernate.HibernateException
        Specified by:
        setParameterList in interface org.hibernate.Query<R>
        Specified by:
        setParameterList in interface org.hibernate.query.Query<R>
        Overrides:
        setParameterList in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameterList

        public org.hibernate.query.Query<R> setParameterList​(String name,
                                                             Object[] vals,
                                                             org.hibernate.type.Type type)
                                                      throws org.hibernate.HibernateException
        Specified by:
        setParameterList in interface org.hibernate.Query<R>
        Specified by:
        setParameterList in interface org.hibernate.query.Query<R>
        Overrides:
        setParameterList in class QueryWrapper<R>
        Throws:
        org.hibernate.HibernateException
      • setParameter

        public <T> org.hibernate.query.Query<R> setParameter​(javax.persistence.Parameter<T> param,
                                                             T val)
        Specified by:
        setParameter in interface javax.persistence.Query
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Specified by:
        setParameter in interface javax.persistence.TypedQuery<R>
        Overrides:
        setParameter in class QueryWrapper<R>
      • setParameter

        public <P> org.hibernate.query.Query<R> setParameter​(org.hibernate.query.QueryParameter<P> param,
                                                             P val,
                                                             org.hibernate.type.Type type)
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Overrides:
        setParameter in class QueryWrapper<R>
      • setParameter

        public <T> org.hibernate.query.Query<R> setParameter​(org.hibernate.query.QueryParameter<T> param,
                                                             T val)
        Specified by:
        setParameter in interface org.hibernate.Query<R>
        Specified by:
        setParameter in interface org.hibernate.query.Query<R>
        Overrides:
        setParameter in class QueryWrapper<R>
      • setParameterList

        public <P> org.hibernate.query.Query<R> setParameterList​(org.hibernate.query.QueryParameter<P> param,
                                                                 Collection<P> values)
        Specified by:
        setParameterList in interface org.hibernate.Query<R>
        Specified by:
        setParameterList in interface org.hibernate.query.Query<R>
        Overrides:
        setParameterList in class QueryWrapper<R>
      • checkEntityCollection

        private void checkEntityCollection​(Collection<?> values)
      • checkEntityArray

        private void checkEntityArray​(Object[] values)