Class MorphiaLazyDataModel<T>
- java.lang.Object
-
- javax.faces.model.DataModel<E>
-
- javax.faces.model.ListDataModel<T>
-
- org.primefaces.model.LazyDataModel<T>
-
- org.primefaces.extensions.model.mongo.MorphiaLazyDataModel<T>
-
- Type Parameters:
T- The model class.
- All Implemented Interfaces:
java.io.Serializable,java.lang.Iterable<T>,org.primefaces.model.SelectableDataModel<T>
public class MorphiaLazyDataModel<T> extends org.primefaces.model.LazyDataModel<T> implements java.io.SerializableBasicLazyDataModelimplementation for MongoDB using Morphia.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected org.primefaces.util.SerializableSupplier<dev.morphia.Datastore>dsprotected java.lang.Class<T>entityClassprotected java.lang.StringrowKeyField
-
Constructor Summary
Constructors Constructor Description MorphiaLazyDataModel()For serialization onlyMorphiaLazyDataModel(java.lang.Class<T> entityClass, org.primefaces.util.SerializableSupplier<dev.morphia.Datastore> ds)Constructs a Morphia lazy data model with selection support with the default "id" field being the row key.MorphiaLazyDataModel(java.lang.Class<T> entityClass, org.primefaces.util.SerializableSupplier<dev.morphia.Datastore> ds, java.lang.String rowKeyField)Constructs a Morphia lazy data model with selection support.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description dev.morphia.query.Query<T>applyFilters(dev.morphia.query.Query<T> q, java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> filters)intcount(java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> map)TgetRowData(java.lang.String rowKey)java.lang.StringgetRowKey(T object)protected java.lang.reflect.MethodgetRowKeyGetter()MorphiaLazyDataModel<T>globalFilter(java.util.function.BiConsumer<dev.morphia.query.Query<T>,org.primefaces.model.FilterMeta> consumer)java.util.List<T>load(int first, int pageSize, java.util.Map<java.lang.String,org.primefaces.model.SortMeta> sort, java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> filters)MorphiaLazyDataModel<T>overrideFieldQuery(java.lang.String field, java.util.function.BiConsumer<dev.morphia.query.Query<T>,org.primefaces.model.FilterMeta> consumer)MorphiaLazyDataModel<T>prependQuery(java.util.function.Consumer<dev.morphia.query.Query<T>> consumer)-
Methods inherited from class org.primefaces.model.LazyDataModel
getConverter, getMessage, getPageSize, getRowCount, getRowData, getRowData, getRowIndex, getWrappedData, isRowAvailable, iterator, iterator, recalculateFirst, setConverter, setPageSize, setRowCount, setRowIndex, setWrappedData
-
Methods inherited from class javax.faces.model.DataModel
addDataModelListener, getDataModelListeners, removeDataModelListener
-
-
-
-
Field Detail
-
entityClass
protected java.lang.Class<T> entityClass
-
ds
protected org.primefaces.util.SerializableSupplier<dev.morphia.Datastore> ds
-
rowKeyField
protected java.lang.String rowKeyField
-
-
Constructor Detail
-
MorphiaLazyDataModel
public MorphiaLazyDataModel()
For serialization only
-
MorphiaLazyDataModel
public MorphiaLazyDataModel(java.lang.Class<T> entityClass, org.primefaces.util.SerializableSupplier<dev.morphia.Datastore> ds, java.lang.String rowKeyField)
Constructs a Morphia lazy data model with selection support.- Parameters:
ds- theDatastoreentityClass- The entity classrowKeyField- The name of the rowKey property (e.g. "id")
-
MorphiaLazyDataModel
public MorphiaLazyDataModel(java.lang.Class<T> entityClass, org.primefaces.util.SerializableSupplier<dev.morphia.Datastore> ds)
Constructs a Morphia lazy data model with selection support with the default "id" field being the row key.- Parameters:
ds- theDatastoreentityClass- The entity class
-
-
Method Detail
-
getRowData
public T getRowData(java.lang.String rowKey)
-
getRowKey
public java.lang.String getRowKey(T object)
-
count
public int count(java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> map)
- Specified by:
countin classorg.primefaces.model.LazyDataModel<T>
-
load
public java.util.List<T> load(int first, int pageSize, java.util.Map<java.lang.String,org.primefaces.model.SortMeta> sort, java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> filters)
- Specified by:
loadin classorg.primefaces.model.LazyDataModel<T>
-
applyFilters
public dev.morphia.query.Query<T> applyFilters(dev.morphia.query.Query<T> q, java.util.Map<java.lang.String,org.primefaces.model.FilterMeta> filters)
-
prependQuery
public MorphiaLazyDataModel<T> prependQuery(java.util.function.Consumer<dev.morphia.query.Query<T>> consumer)
-
globalFilter
public MorphiaLazyDataModel<T> globalFilter(java.util.function.BiConsumer<dev.morphia.query.Query<T>,org.primefaces.model.FilterMeta> consumer)
-
overrideFieldQuery
public MorphiaLazyDataModel<T> overrideFieldQuery(java.lang.String field, java.util.function.BiConsumer<dev.morphia.query.Query<T>,org.primefaces.model.FilterMeta> consumer)
-
getRowKeyGetter
protected java.lang.reflect.Method getRowKeyGetter()
-
-