com.atlassian.crowd.util.persistence.hibernate
Class HibernateDao

java.lang.Object
  extended by org.springframework.dao.support.DaoSupport
      extended by org.springframework.orm.hibernate3.support.HibernateDaoSupport
          extended by com.atlassian.crowd.util.persistence.hibernate.HibernateDao
All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean
Direct Known Subclasses:
AliasDAOHibernate, ApplicationDAOHibernate, DirectoryDAOHibernate, GroupDAOHibernate, MembershipDAOHibernate, PropertyDAOHibernate, TokenDAOHibernate, UserDAOHibernate

public abstract class HibernateDao
extends org.springframework.orm.hibernate3.support.HibernateDaoSupport

Generic persistence class for storing Hibernate persistence objects.


Field Summary
protected  BatchFinder batchFinder
           
protected  BatchProcessor batchProcessor
           
protected  org.slf4j.Logger logger
           
 
Constructor Summary
HibernateDao()
           
 
Method Summary
abstract  Class getPersistentClass()
          All subclasses of HibernateDao must implement this method for load(long) to work correctly
<T> T
load(Class<T> persistentClass, long id)
          Loads a persisted entity from the persistence store.
 Object load(long id)
          Loads a persisted entity from the persistence store.
<T> T
loadReference(Class<T> persistentClass, long id)
          This method calls the session.load method to obtain a proxy (or actual instance if the object is in session) by NOT hitting the database immediately.
 Object loadReference(long id)
          This method calls the session.load method to obtain a proxy (or actual instance if the object is in session) by NOT hitting the database immediately.
 void remove(Object persistentObject)
          Removes the DAO object from the persistence store.
 void save(Object persistentObject)
          Saves a new DAO object to the persistence store.
 void saveOrUpdate(Object persistentObject)
          Saves or updates DAO object to the persistence store.
 void setBatchFinder(BatchFinder batchFinder)
           
 void setBatchProcessor(BatchProcessor batchProcessor)
           
 void update(Object persistentObject)
          Updates an existing DAO object, if the object does not exist it will be added to the persistence store.
 
Methods inherited from class org.springframework.orm.hibernate3.support.HibernateDaoSupport
checkDaoConfig, convertHibernateAccessException, createHibernateTemplate, getHibernateTemplate, getSession, getSession, getSessionFactory, releaseSession, setHibernateTemplate, setSessionFactory
 
Methods inherited from class org.springframework.dao.support.DaoSupport
afterPropertiesSet, initDao
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final org.slf4j.Logger logger

batchProcessor

protected BatchProcessor batchProcessor

batchFinder

protected BatchFinder batchFinder
Constructor Detail

HibernateDao

public HibernateDao()
Method Detail

save

public void save(Object persistentObject)
          throws org.springframework.dao.DataAccessException
Saves a new DAO object to the persistence store.

Parameters:
persistentObject - The object to save.
Throws:
org.springframework.dao.DataAccessException - A persistence exception has occurred.

saveOrUpdate

public void saveOrUpdate(Object persistentObject)
                  throws org.springframework.dao.DataAccessException
Saves or updates DAO object to the persistence store.

Parameters:
persistentObject - The object to save or update.
Throws:
org.springframework.dao.DataAccessException - A persistence exception has occurred.

update

public void update(Object persistentObject)
            throws org.springframework.dao.DataAccessException
Updates an existing DAO object, if the object does not exist it will be added to the persistence store.

Parameters:
persistentObject - The object to update.
Throws:
org.springframework.dao.DataAccessException - A persistence exception has occurred.

remove

public void remove(Object persistentObject)
            throws org.springframework.dao.DataAccessException
Removes the DAO object from the persistence store.

Parameters:
persistentObject - The object to remove.
Throws:
org.springframework.dao.DataAccessException - A persistence exception has occurred.

load

public <T> T load(Class<T> persistentClass,
                  long id)
       throws ObjectNotFoundException
Loads a persisted entity from the persistence store.

Parameters:
persistentClass - The entity type to load
id - The unique identifier of the object to load from the persistence store.
Returns:
The populated object from the database.
Throws:
ObjectNotFoundException - when the requested entity is not found.

load

public Object load(long id)
            throws ObjectNotFoundException
Loads a persisted entity from the persistence store.

Parameters:
id - The unique identifier of the object to load from the persistence store.
Returns:
The populated object from the database.
Throws:
ObjectNotFoundException - when the requested entity is not found.

loadReference

public <T> T loadReference(Class<T> persistentClass,
                           long id)
This method calls the session.load method to obtain a proxy (or actual instance if the object is in session) by NOT hitting the database immediately. Do NOT call this method unless you are SURE that the object with the supplied identifier exists.

Parameters:
persistentClass - the type of the entity to load
id - unique identifier to load.
Returns:
a proxy object (or actual instance if the object is in session)

loadReference

public Object loadReference(long id)
This method calls the session.load method to obtain a proxy (or actual instance if the object is in session) by NOT hitting the database immediately. Do NOT call this method unless you are SURE that the object with the supplied identifier exists.

Parameters:
id - unique identifier to load.
Returns:
a proxy object (or actual instance if the object is in session)

getPersistentClass

public abstract Class getPersistentClass()
All subclasses of HibernateDao must implement this method for load(long) to work correctly

Returns:
Class

setBatchProcessor

public void setBatchProcessor(BatchProcessor batchProcessor)

setBatchFinder

public void setBatchFinder(BatchFinder batchFinder)


Copyright © 2013 Atlassian. All Rights Reserved.