@Transactional public abstract class AbstractSearchController<E extends pl.matsuo.core.model.AbstractEntity,P extends pl.matsuo.core.params.IQueryRequestParams> extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractSearchController.EntityNotFoundException |
| Modifier and Type | Field and Description |
|---|---|
protected pl.matsuo.core.service.db.Database |
database |
protected pl.matsuo.core.model.api.Initializer<E>[] |
entityInitializers |
protected Class<E> |
entityType |
protected IFacadeBuilder |
facadeBuilder |
| Constructor and Description |
|---|
AbstractSearchController() |
| Modifier and Type | Method and Description |
|---|---|
protected List<? extends pl.matsuo.core.model.api.Initializer<? super E>> |
entityInitializers() |
protected <F extends pl.matsuo.core.model.AbstractEntity> |
entityQuery(Class<F> entity,
pl.matsuo.core.model.query.condition.Condition... conditions)
Pomocnicza metoda wyszukiwania gdy zapytanie wymaga jedynie przekazania kryteriów.
|
org.springframework.http.HttpEntity<E> |
find(Integer id)
Pobiera pojedynczą encję danego typu po id.
|
protected <F extends pl.matsuo.core.model.AbstractEntity> |
list(Class<F> entity,
P params)
Domyślna metoda listująca elementy według zadanych parametrów.
|
protected List<E> |
list(pl.matsuo.core.model.query.condition.Condition... conditions)
Pomocnicza metoda wyszukiwania gdy zapytanie wymaga jedynie przekazania kryteriów.
|
List<E> |
list(P params)
Domyślna metoda listująca elementy według zadanych parametrów.
|
List<E> |
listByIds(List<Integer> ids)
Pobiera listę encji danego typu po kolekcji identyfikatorów.
|
protected <F extends pl.matsuo.core.model.AbstractEntity> |
listQuery(Class<F> entity,
P params,
pl.matsuo.core.model.query.condition.Condition... additionalConditions) |
protected <F extends pl.matsuo.core.model.AbstractEntity> |
listQuery(Class<F> entity,
P params,
List<Function<F,String>> queryMatchers,
pl.matsuo.core.model.query.condition.Condition... additionalConditions)
Tworzy proste zapytanie na podstawie przekazanej mapy parametrów.
|
protected pl.matsuo.core.model.query.AbstractQuery<E> |
listQuery(P params,
pl.matsuo.core.model.query.condition.Condition... additionalConditions) |
protected List<Function<E,String>> |
queryMatchers()
Lista pól z którymi należy porównywać wartość parametru 'query' z zapytania listującego
elementy.
|
protected <F extends pl.matsuo.core.model.AbstractEntity> |
queryMatchers(Class<F> entity)
Lista pól z którymi należy porównywać wartość parametru 'query' z zapytania listującego
elementy.
|
void |
setDatabase(pl.matsuo.core.service.db.Database database) |
void |
setFacadeBuilder(IFacadeBuilder facadeBuilder) |
@Autowired protected pl.matsuo.core.service.db.Database database
@Autowired protected IFacadeBuilder facadeBuilder
protected final pl.matsuo.core.model.api.Initializer<E extends pl.matsuo.core.model.AbstractEntity>[] entityInitializers
protected <F extends pl.matsuo.core.model.AbstractEntity> List<Function<F,String>> queryMatchers(Class<F> entity)
protected List<Function<E,String>> queryMatchers()
protected <F extends pl.matsuo.core.model.AbstractEntity> pl.matsuo.core.model.query.AbstractQuery<F> listQuery(Class<F> entity, P params, List<Function<F,String>> queryMatchers, pl.matsuo.core.model.query.condition.Condition... additionalConditions)
queryMatchers(Class)
buduje zapytanie wymagające aby każde słowo z 'query' znalazło się w którymś z pól.protected <F extends pl.matsuo.core.model.AbstractEntity> pl.matsuo.core.model.query.AbstractQuery<F> listQuery(Class<F> entity, P params, pl.matsuo.core.model.query.condition.Condition... additionalConditions)
protected pl.matsuo.core.model.query.AbstractQuery<E> listQuery(P params, pl.matsuo.core.model.query.condition.Condition... additionalConditions)
protected <F extends pl.matsuo.core.model.AbstractEntity> List<F> list(Class<F> entity, P params)
@RequestMapping(method=GET) public List<E> list(P params)
protected List<E> list(pl.matsuo.core.model.query.condition.Condition... conditions)
protected <F extends pl.matsuo.core.model.AbstractEntity> pl.matsuo.core.model.query.AbstractQuery<F> entityQuery(Class<F> entity, pl.matsuo.core.model.query.condition.Condition... conditions)
@RequestMapping(value="/list/byIds",
method=GET,
consumes="application/octet-stream")
public List<E> listByIds(@RequestParam(value="ids")
List<Integer> ids)
@RequestMapping(value="/{id}",
method=GET)
public org.springframework.http.HttpEntity<E> find(@PathVariable(value="id")
Integer id)
protected List<? extends pl.matsuo.core.model.api.Initializer<? super E>> entityInitializers()
public void setDatabase(pl.matsuo.core.service.db.Database database)
public void setFacadeBuilder(IFacadeBuilder facadeBuilder)
Copyright © 2015 Matsuo IT. All rights reserved.