|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectit.amattioli.dominate.hibernate.AbstractHibernateRepository<I,T>
public abstract class AbstractHibernateRepository<I extends Serializable,T extends Entity<I>>
Abstract class that implements basic methods for a repository whose content is persisted on a relational database using Hibernate.
That sort of repository needs a Session object to do its job.
To retrieve such an object it will use a HibernateSessionManager
that must be injected in the repository. After the injection the repository
can use getHibernateSession() to retrieve the session from the
session manager. If no HibernateSessionManager has been injected
the SessionManagerRegistry will be used to get one.
| Constructor Summary | |
|---|---|
AbstractHibernateRepository()
|
|
| Method Summary | |
|---|---|
void |
addOrder(String property,
boolean reverse)
Add an order property for the lists retrieved using Repository.list() and Repository.list(Specification). |
protected AbstractHibernateRepository<I,T> |
clone()
|
T |
getByPropertyValue(String propertyName,
Object value)
Retrieves the object contained in this repository that has a specified property equals to a certain value. |
int |
getFirst()
Retrieves the index of the first object that will be retrieved by Repository.list() e Repository.list(Filter). |
org.hibernate.Session |
getHibernateSession()
Retrieves a Hibernate session |
protected String |
getHqlOrder()
Builds the "order by" clause of an HQL query using the informations set with setOrder(String, boolean). |
int |
getLast()
Retrieves the index of the last object that will be retrieved by Repository.list() e Repository.list(Specification). |
String |
getOrderProperty()
Retrieves the name of the property used for ordering the result of the Repository.list() and Repository.list(Specification) methods. |
protected List<Order> |
getOrders()
|
SessionManager |
getSessionManager()
Retrieves the session manager set by #setSessionManager(HibernateSessionManager). |
boolean |
isReverseOrder()
Returns true if the order of the result of the Repository.list() and
Repository.list(Specification) methods is ascending, false otherwise. |
void |
removeLastOrder()
Remove the last added order property. |
void |
setFirst(int first)
Set the index of the first object that will be retrieved by Repository.list() and Repository.list(Filter) when value 0 has been
set for 'first' in the filter. |
void |
setLast(int last)
Set the index of the last object that will be retrieved by Repository.list() e Repository.list(Filter) when value 0 has been
set for 'first' in the filter. |
void |
setOrder(String property,
boolean reverse)
Set the order for the lists retrieved using Repository.list() and Repository.list(Specification). |
void |
setSessionManager(SessionManager newSessionMgr)
Set the session manager that will be used by getHibernateSession(). |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface it.amattioli.dominate.Repository |
|---|
fillCollection, fillCollection, get, getDetailRepository, isRemoveAllowed, list, list, list, put, refresh, refresh, remove, remove |
| Constructor Detail |
|---|
public AbstractHibernateRepository()
| Method Detail |
|---|
public void setFirst(int first)
RepositoryRepository.list() and Repository.list(Filter) when value 0 has been
set for 'first' in the filter.The value in the filter, if different than 0, will always superseed this value.
setFirst in interface Repository<I extends Serializable,T extends Entity<I>>first - the index of the first object that will be retrieved by
Repository.list() e Repository.list(Filter)public int getFirst()
RepositoryRepository.list() e Repository.list(Filter).
getFirst in interface Repository<I extends Serializable,T extends Entity<I>>Repository.list() e Repository.list(Filter)public void setLast(int last)
RepositoryRepository.list() e Repository.list(Filter) when value 0 has been
set for 'first' in the filter.The value in the filter, if different than 0, will always superseed this value.
If the repository contains less objects than the indicated index, all the objects will be retrieved.
setLast in interface Repository<I extends Serializable,T extends Entity<I>>last - the index of the last object that will be retrieved by
Repository.list() and Repository.list(Specification)public int getLast()
RepositoryRepository.list() e Repository.list(Specification).
This method will retrieve the same number that has been set using
Repository.setLast(int) independently of the repository content size.
getLast in interface Repository<I extends Serializable,T extends Entity<I>>Repository.list() and Repository.list(Filter)
public void setOrder(String property,
boolean reverse)
RepositoryRepository.list() and Repository.list(Specification).
If a previous order property was set it will be replaced.
setOrder in interface Repository<I extends Serializable,T extends Entity<I>>property - the name of the property that will be used to order
the listsreverse - if this parameter is true the order will be ascendant,
otherwise it will be descendant
public void addOrder(String property,
boolean reverse)
RepositoryRepository.list() and Repository.list(Specification).
If a previous order property was set it will remain in place
and the new property will be added to the list.
addOrder in interface Repository<I extends Serializable,T extends Entity<I>>property - the name of the property that will be used to order
the listsreverse - if this parameter is true the order will be ascendant,
otherwise it will be descendantpublic void removeLastOrder()
Repository
removeLastOrder in interface Repository<I extends Serializable,T extends Entity<I>>public String getOrderProperty()
RepositoryRepository.list() and Repository.list(Specification) methods.
getOrderProperty in interface Repository<I extends Serializable,T extends Entity<I>>public boolean isReverseOrder()
RepositoryRepository.list() and
Repository.list(Specification) methods is ascending, false otherwise.
isReverseOrder in interface Repository<I extends Serializable,T extends Entity<I>>protected List<Order> getOrders()
protected String getHqlOrder()
setOrder(String, boolean).
Subclasses can use this method in Repository.list() and
Repository#list(it.maticasrl.appctrl.persistence.Filter) if they
need to implement them using HQL.
public void setSessionManager(SessionManager newSessionMgr)
getHibernateSession().
newSessionMgr - the session manager that will be used by getHibernateSession()public SessionManager getSessionManager()
#setSessionManager(HibernateSessionManager).
If no session manager has been set an instance of SessionManagerRegistry
will be used to get one.
public org.hibernate.Session getHibernateSession()
protected AbstractHibernateRepository<I,T> clone()
throws CloneNotSupportedException
clone in class ObjectCloneNotSupportedException
public T getByPropertyValue(String propertyName,
Object value)
RepositoryThis method makes sense only if the specified property has distinct values for each entity.
If there is no entity in this repository that has the specified value, null is returned.
if there is more than one entity in this repository that has the specified value, one of them is returned.
getByPropertyValue in interface Repository<I extends Serializable,T extends Entity<I>>propertyName - the name of the propertyvalue - the property value
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||