org.iternine.jeppetto.dao.hibernate
Class HibernateQueryModelDAO<T,ID extends Serializable>

java.lang.Object
  extended by org.iternine.jeppetto.dao.hibernate.HibernateQueryModelDAO<T,ID>
Type Parameters:
T - persistent class.
ID - ID type for the persistent class.
All Implemented Interfaces:
AccessControlDAO<T,ID>, GenericDAO<T,ID>, QueryModelDAO<T,ID>

public class HibernateQueryModelDAO<T,ID extends Serializable>
extends Object
implements QueryModelDAO<T,ID>, AccessControlDAO<T,ID>

An implementation of the QueryModelDAO interface that supports Hibernate.


Constructor Summary
protected HibernateQueryModelDAO(Class<T> persistentClass, Map<String,Object> daoProperties)
           
protected HibernateQueryModelDAO(Class<T> persistentClass, Map<String,Object> daoProperties, AccessControlContextProvider accessControlContextProvider)
           
 
Method Summary
 Condition buildCondition(String conditionField, ConditionType conditionType, Iterator argsIterator)
           
protected  Condition buildIdCondition(Object argument)
           
 Projection buildProjection(String projectionField, ProjectionType projectionType, Iterator argsIterator)
           
 void delete(T entity)
           
 void deleteById(ID id)
           
 void deleteByIds(ID... ids)
           
 void deleteUsingQueryModel(QueryModel queryModel)
           
 Iterable<T> findAll()
           
 T findById(ID id)
           
 Iterable<T> findByIds(ID... ids)
           
 T findUniqueUsingQueryModel(QueryModel queryModel)
           
 Iterable<T> findUsingQueryModel(QueryModel queryModel)
           
 void flush()
           
 AccessControlContextProvider getAccessControlContextProvider()
           
protected  org.hibernate.Session getCurrentSession()
           
 Map<String,AccessType> getGrantedAccesses(ID id)
           
 Map<String,AccessType> getGrantedAccesses(ID id, AccessControlContext accessControlContext)
           
 void grantAccess(ID id, String accessId, AccessType accessType)
           
 void grantAccess(ID id, String accessId, AccessType accessType, AccessControlContext accessControlContext)
           
 Object projectUsingQueryModel(QueryModel queryModel)
           
 ReferenceSet<T> referenceByIds(ID... ids)
           
 ReferenceSet<T> referenceUsingQueryModel(QueryModel queryModel)
           
 void revokeAccess(ID id, String accessId)
           
 void revokeAccess(ID id, String accessId, AccessControlContext accessControlContext)
           
 void save(T entity)
           
 void save(T object, AccessControlContext accessControlContext)
           
 void updateReferences(ReferenceSet<T> referenceSet, T updateObject)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HibernateQueryModelDAO

protected HibernateQueryModelDAO(Class<T> persistentClass,
                                 Map<String,Object> daoProperties)

HibernateQueryModelDAO

protected HibernateQueryModelDAO(Class<T> persistentClass,
                                 Map<String,Object> daoProperties,
                                 AccessControlContextProvider accessControlContextProvider)
Method Detail

findById

public T findById(ID id)
           throws NoSuchItemException,
                  JeppettoException
Specified by:
findById in interface GenericDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
JeppettoException

findByIds

public Iterable<T> findByIds(ID... ids)
                      throws JeppettoException
Specified by:
findByIds in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

findAll

public Iterable<T> findAll()
                    throws JeppettoException
Specified by:
findAll in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

save

public void save(T entity)
          throws OptimisticLockException,
                 JeppettoException
Specified by:
save in interface GenericDAO<T,ID extends Serializable>
Throws:
OptimisticLockException
JeppettoException

delete

public void delete(T entity)
            throws JeppettoException
Specified by:
delete in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

deleteById

public void deleteById(ID id)
                throws JeppettoException
Specified by:
deleteById in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

deleteByIds

public void deleteByIds(ID... ids)
                 throws JeppettoException
Specified by:
deleteByIds in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

referenceByIds

public ReferenceSet<T> referenceByIds(ID... ids)
Specified by:
referenceByIds in interface GenericDAO<T,ID extends Serializable>

updateReferences

public void updateReferences(ReferenceSet<T> referenceSet,
                             T updateObject)
                      throws JeppettoException
Specified by:
updateReferences in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

flush

public void flush()
           throws JeppettoException
Specified by:
flush in interface GenericDAO<T,ID extends Serializable>
Throws:
JeppettoException

findUniqueUsingQueryModel

public T findUniqueUsingQueryModel(QueryModel queryModel)
                            throws NoSuchItemException,
                                   TooManyItemsException,
                                   JeppettoException
Specified by:
findUniqueUsingQueryModel in interface QueryModelDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
TooManyItemsException
JeppettoException

findUsingQueryModel

public Iterable<T> findUsingQueryModel(QueryModel queryModel)
                                throws JeppettoException
Specified by:
findUsingQueryModel in interface QueryModelDAO<T,ID extends Serializable>
Throws:
JeppettoException

projectUsingQueryModel

public Object projectUsingQueryModel(QueryModel queryModel)
                              throws JeppettoException
Specified by:
projectUsingQueryModel in interface QueryModelDAO<T,ID extends Serializable>
Throws:
JeppettoException

deleteUsingQueryModel

public void deleteUsingQueryModel(QueryModel queryModel)
                           throws JeppettoException
Specified by:
deleteUsingQueryModel in interface QueryModelDAO<T,ID extends Serializable>
Throws:
JeppettoException

referenceUsingQueryModel

public ReferenceSet<T> referenceUsingQueryModel(QueryModel queryModel)
                                         throws JeppettoException
Specified by:
referenceUsingQueryModel in interface QueryModelDAO<T,ID extends Serializable>
Throws:
JeppettoException

buildCondition

public Condition buildCondition(String conditionField,
                                ConditionType conditionType,
                                Iterator argsIterator)
Specified by:
buildCondition in interface QueryModelDAO<T,ID extends Serializable>

buildProjection

public Projection buildProjection(String projectionField,
                                  ProjectionType projectionType,
                                  Iterator argsIterator)
Specified by:
buildProjection in interface QueryModelDAO<T,ID extends Serializable>

save

public void save(T object,
                 AccessControlContext accessControlContext)
          throws OptimisticLockException,
                 AccessControlException,
                 JeppettoException
Specified by:
save in interface AccessControlDAO<T,ID extends Serializable>
Throws:
OptimisticLockException
AccessControlException
JeppettoException

grantAccess

public void grantAccess(ID id,
                        String accessId,
                        AccessType accessType)
                 throws NoSuchItemException,
                        AccessControlException
Specified by:
grantAccess in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

grantAccess

public void grantAccess(ID id,
                        String accessId,
                        AccessType accessType,
                        AccessControlContext accessControlContext)
                 throws NoSuchItemException,
                        AccessControlException
Specified by:
grantAccess in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

revokeAccess

public void revokeAccess(ID id,
                         String accessId)
                  throws NoSuchItemException,
                         AccessControlException
Specified by:
revokeAccess in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

revokeAccess

public void revokeAccess(ID id,
                         String accessId,
                         AccessControlContext accessControlContext)
                  throws NoSuchItemException,
                         AccessControlException
Specified by:
revokeAccess in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

getGrantedAccesses

public Map<String,AccessType> getGrantedAccesses(ID id)
                                          throws NoSuchItemException,
                                                 AccessControlException
Specified by:
getGrantedAccesses in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

getGrantedAccesses

public Map<String,AccessType> getGrantedAccesses(ID id,
                                                 AccessControlContext accessControlContext)
                                          throws NoSuchItemException,
                                                 AccessControlException
Specified by:
getGrantedAccesses in interface AccessControlDAO<T,ID extends Serializable>
Throws:
NoSuchItemException
AccessControlException

getAccessControlContextProvider

public AccessControlContextProvider getAccessControlContextProvider()
Specified by:
getAccessControlContextProvider in interface AccessControlDAO<T,ID extends Serializable>

getCurrentSession

protected org.hibernate.Session getCurrentSession()

buildIdCondition

protected Condition buildIdCondition(Object argument)


Copyright © 2012. All Rights Reserved.