Class HibernateGridDataSource
- java.lang.Object
-
- org.apache.tapestry5.hibernate.web.HibernateGridDataSource
-
- All Implemented Interfaces:
GridDataSource
public class HibernateGridDataSource extends java.lang.Object implements GridDataSource
A simple implementation ofGridDataSource
based on a Hibernate Session and a known entity class. This implementation does support multiplesort constraints
; however it assumes a direct mapping from sort constraint property to Hibernate property. This class is not thread-safe; it maintains internal state. Typically, an instance of this object is created fresh as needed (that is, it is not stored between requests).
-
-
Constructor Summary
Constructors Constructor Description HibernateGridDataSource(org.hibernate.Session session, java.lang.Class entityType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
applyAdditionalConstraints(org.hibernate.Criteria crit)
Invoked after the main criteria has been set up (firstResult, maxResults and any sort contraints).int
getAvailableRows()
Returns the total number of rows for the configured entity type.java.lang.Class
getRowType()
Returns the entity type, as provided via the constructor.java.lang.Object
getRowValue(int index)
Returns a row value at the given index (which must be within the range defined by the call toprepare(int, int, java.util.List)
).void
prepare(int startIndex, int endIndex, java.util.List<SortConstraint> sortConstraints)
Prepares the results, performing a query (applying the sort results, and the provided start and end index).-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.tapestry5.grid.GridDataSource
getAvailableRows, isEmpty
-
-
-
-
Constructor Detail
-
HibernateGridDataSource
public HibernateGridDataSource(org.hibernate.Session session, java.lang.Class entityType)
-
-
Method Detail
-
getAvailableRows
public int getAvailableRows()
Returns the total number of rows for the configured entity type.- Specified by:
getAvailableRows
in interfaceGridDataSource
-
prepare
public void prepare(int startIndex, int endIndex, java.util.List<SortConstraint> sortConstraints)
Prepares the results, performing a query (applying the sort results, and the provided start and end index). The results can later be obtained fromgetRowValue(int)
}.- Specified by:
prepare
in interfaceGridDataSource
- Parameters:
startIndex
- index, from zero, of the first item to be retrievedendIndex
- index, from zero, of the last item to be retrievedsortConstraints
- zero or more constraints used to set the order of the returned values
-
applyAdditionalConstraints
protected void applyAdditionalConstraints(org.hibernate.Criteria crit)
Invoked after the main criteria has been set up (firstResult, maxResults and any sort contraints). This gives subclasses a chance to apply additional constraints before the list of results is obtained from the criteria. This implementation does nothing and may be overridden.
-
getRowValue
public java.lang.Object getRowValue(int index)
Returns a row value at the given index (which must be within the range defined by the call toprepare(int, int, java.util.List)
).- Specified by:
getRowValue
in interfaceGridDataSource
- Parameters:
index
- of object- Returns:
- object at that index
-
getRowType
public java.lang.Class getRowType()
Returns the entity type, as provided via the constructor.- Specified by:
getRowType
in interfaceGridDataSource
- Returns:
- the row type, or null
-
-