org.appfuse.service.impl
Class GenericManagerImpl<T,PK extends java.io.Serializable>

java.lang.Object
  extended by org.appfuse.service.impl.GenericManagerImpl<T,PK>
All Implemented Interfaces:
GenericManager<T,PK>

public class GenericManagerImpl<T,PK extends java.io.Serializable>
extends java.lang.Object
implements GenericManager<T,PK>

This class serves as the Base class for all other Managers - namely to hold common CRUD methods that they might all use. You should only need to extend this class when your require custom CRUD logic.

To register this class in your Spring context file, use the following XML.

     <bean id="userManager" class="org.appfuse.service.impl.GenericManagerImpl">
         <constructor-arg>
             <bean class="org.appfuse.dao.hibernate.GenericDaoHibernate">
                 <constructor-arg value="org.appfuse.model.User"/>
                 <property name="sessionFactory" ref="sessionFactory"/>
             </bean>
         </constructor-arg>
     </bean>
 

If you're using iBATIS instead of Hibernate, use:

     <bean id="userManager" class="org.appfuse.service.impl.GenericManagerImpl">
         <constructor-arg>
             <bean class="org.appfuse.dao.ibatis.GenericDaoiBatis">
                 <constructor-arg value="org.appfuse.model.User"/>
                 <property name="dataSource" ref="dataSource"/>
                 <property name="sqlMapClient" ref="sqlMapClient"/>
             </bean>
         </constructor-arg>
     </bean>
 

Author:
Matt Raible

Field Summary
protected  org.appfuse.dao.GenericDao<T,PK> genericDao
           
protected  org.apache.commons.logging.Log log
           
 
Constructor Summary
GenericManagerImpl(org.appfuse.dao.GenericDao<T,PK> genericDao)
           
 
Method Summary
 boolean exists(PK id)
          Checks for existence of an object of type T using the id arg.
 T get(PK id)
          Generic method to get an object based on class and identifier.
 java.util.List<T> getAll()
          Generic method used to get all objects of a particular type.
 void remove(PK id)
          Generic method to delete an object based on class and id
 T save(T object)
          Generic method to save an object - handles both update and insert.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected final org.apache.commons.logging.Log log

genericDao

protected org.appfuse.dao.GenericDao<T,PK extends java.io.Serializable> genericDao
Constructor Detail

GenericManagerImpl

public GenericManagerImpl(org.appfuse.dao.GenericDao<T,PK> genericDao)
Method Detail

getAll

public java.util.List<T> getAll()
Description copied from interface: GenericManager
Generic method used to get all objects of a particular type. This is the same as lookup up all rows in a table.

Specified by:
getAll in interface GenericManager<T,PK extends java.io.Serializable>
Returns:
List of populated objects

get

public T get(PK id)
Description copied from interface: GenericManager
Generic method to get an object based on class and identifier. An ObjectRetrievalFailureException Runtime Exception is thrown if nothing is found.

Specified by:
get in interface GenericManager<T,PK extends java.io.Serializable>
Parameters:
id - the identifier (primary key) of the object to get
Returns:
a populated object
See Also:
org.springframework.orm.ObjectRetrievalFailureException

exists

public boolean exists(PK id)
Description copied from interface: GenericManager
Checks for existence of an object of type T using the id arg.

Specified by:
exists in interface GenericManager<T,PK extends java.io.Serializable>
Returns:
- true if it exists, false if it doesn't

save

public T save(T object)
Description copied from interface: GenericManager
Generic method to save an object - handles both update and insert.

Specified by:
save in interface GenericManager<T,PK extends java.io.Serializable>
Parameters:
object - the object to save

remove

public void remove(PK id)
Description copied from interface: GenericManager
Generic method to delete an object based on class and id

Specified by:
remove in interface GenericManager<T,PK extends java.io.Serializable>
Parameters:
id - the identifier (primary key) of the object to remove


Copyright © 2003-2007. All Rights Reserved.