Package org.iworkz.habitat.dao
Class GenericDao
java.lang.Object
org.iworkz.habitat.dao.EntityDao
org.iworkz.habitat.dao.GenericDao
- Direct Known Subclasses:
DefaultDao
@Singleton public abstract class GenericDao extends EntityDao
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classGenericDao.CommandCustomizer -
Field Summary
Fields Modifier and Type Field Description protected org.iworkz.common.helper.CloneHelperbeanHelperprotected Map<String,CommandMetaData>commandMetaDataMapprotected DeleteExecutordeleteExecutorprotected ExceptionFactoryexceptionFactoryprotected FindExecutorfindExecutorprotected InsertExecutorinsertExecutorprotected LoadExecutorloadExecutorSyncnronizedValueAcess<CommandMetaData>metaDataAccessprotected org.iworkz.common.helper.ReflectionHelperreflectionHelperprotected SelectExecutorselectExecutorprotected UpdateExecutorupdateExecutorFields inherited from class org.iworkz.habitat.dao.EntityDao
entityDefinitionCreator -
Constructor Summary
Constructors Constructor Description GenericDao()Constructor. -
Method Summary
Modifier and Type Method Description <T> Tcreate(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, T obj)Insert a data and return the created object<T> Tcreate(T obj)Insert a data and return the created objectvoiddelete(Object... key)protected voiddelete(String criteriaString, Object... criterias)voiddelete(ConnectionProvider connectionProvider, Object... key)voiddeleteObject(Object obj)<T> Collection<T>find(Class<T> objectClass, String criteriaString, String orderByString, Object... criterias)<T> Collection<T>findAll(Class<T> objectClass)<T> Collection<T>findWithPaging(Class<T> objectClass, String criteriaString, String orderByString, int page, int pageSize, Object... criterias)<T> Collection<T>findWithPaging(ConnectionProvider connectionProvider, Class<T> objectClass, String criteriaString, String orderByString, int page, int pageSize, Object... criterias)ConnectiongetConnection()ConnectionProvidergetConnectionProvider()protected ContextAccessgetContextAccess()IdGenerator<?>getIdGenerator()<T> voidinsert(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, T obj)Insert a data (without returning the created object)<T> voidinsert(GenericDao.CommandCustomizer statementAdapter, T obj)<T> voidinsert(T obj)Insert a data (without returning the created object)<T> voidinsertAll(Collection<T> objects)<T> voidinsertAll(Collection<T> objects, Integer maxBatchSize)<T> voidinsertAll(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, Collection<T> objects, Integer maxBatchSize)<T> Tload(Class<T> objectClass, Object... key)protected <T> Tload(GenericDao.CommandCustomizer statementAdapter, Class<T> objectClass, Object... key)protected <T> voidload(GenericDao.CommandCustomizer statementAdapter, T obj, Object... key)<T> voidload(T object, Object... key)protected <T> Collection<T>select(Class<T> objectClass, String selectSQL, Object... parameters)protected <T> Collection<T>selectWithPaging(Class<T> objectClass, String insertTableSQL, int page, int pageSize, Object... parameters)voidsetIdGenerator(IdGenerator idGenerator)<T> Tupdate(GenericDao.CommandCustomizer statementAdapter, T obj)<T> Tupdate(T obj)Methods inherited from class org.iworkz.habitat.dao.EntityDao
createEntityDefinition, getEntityDefinition
-
Field Details
-
commandMetaDataMap
-
metaDataAccess
-
reflectionHelper
@Inject protected org.iworkz.common.helper.ReflectionHelper reflectionHelper -
exceptionFactory
-
beanHelper
@Inject protected org.iworkz.common.helper.CloneHelper beanHelper -
insertExecutor
-
updateExecutor
-
deleteExecutor
-
loadExecutor
-
findExecutor
-
selectExecutor
-
-
Constructor Details
-
GenericDao
public GenericDao()Constructor. Reads the entity definition.
-
-
Method Details
-
setIdGenerator
-
getIdGenerator
-
getConnectionProvider
-
getConnection
-
create
public <T> T create(T obj)Insert a data and return the created object- Parameters:
obj-
-
create
public <T> T create(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, T obj)Insert a data and return the created object- Parameters:
connectionProvider-obj-
-
insert
public <T> void insert(T obj)Insert a data (without returning the created object)- Parameters:
obj-
-
insert
-
insert
public <T> void insert(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, T obj)Insert a data (without returning the created object)- Parameters:
connectionProvider-obj-
-
insertAll
-
insertAll
-
insertAll
public <T> void insertAll(ConnectionProvider connectionProvider, GenericDao.CommandCustomizer statementAdapter, Collection<T> objects, Integer maxBatchSize) -
update
public <T> T update(T obj) -
update
-
delete
-
delete
-
deleteObject
-
delete
-
load
-
load
-
load
protected <T> T load(GenericDao.CommandCustomizer statementAdapter, Class<T> objectClass, Object... key) -
load
-
findAll
-
find
public <T> Collection<T> find(Class<T> objectClass, String criteriaString, String orderByString, Object... criterias) -
findWithPaging
public <T> Collection<T> findWithPaging(Class<T> objectClass, String criteriaString, String orderByString, int page, int pageSize, Object... criterias) -
findWithPaging
public <T> Collection<T> findWithPaging(ConnectionProvider connectionProvider, Class<T> objectClass, String criteriaString, String orderByString, int page, int pageSize, Object... criterias) -
select
-
selectWithPaging
protected <T> Collection<T> selectWithPaging(Class<T> objectClass, String insertTableSQL, int page, int pageSize, Object... parameters) -
getContextAccess
-