Revision a1439def
Added by Andreas Müller over 8 years ago
cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/DescriptionServiceImpl.java | ||
---|---|---|
146 | 146 |
} |
147 | 147 |
|
148 | 148 |
|
149 |
|
|
150 |
/* (non-Javadoc) |
|
151 |
* @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache(java.lang.Integer, eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy) |
|
152 |
*/ |
|
153 | 149 |
@Override |
154 | 150 |
@Transactional(readOnly = false) |
155 | 151 |
public void updateTitleCache(Class<? extends DescriptionBase> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<DescriptionBase> cacheStrategy, IProgressMonitor monitor) { |
... | ... | |
179 | 175 |
} |
180 | 176 |
|
181 | 177 |
@Override |
182 |
public Pager<DescriptionElementBase> pageDescriptionElements(DescriptionBase description, Class<? extends DescriptionBase> descriptionType,
|
|
183 |
Set<Feature> features, Class<? extends DescriptionElementBase> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
178 |
public <T extends DescriptionElementBase> Pager<T> pageDescriptionElements(DescriptionBase description, Class<? extends DescriptionBase> descriptionType,
|
|
179 |
Set<Feature> features, Class<T> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
184 | 180 |
|
185 |
List<DescriptionElementBase> results = listDescriptionElements(description, descriptionType, features, type, pageSize, pageNumber, propertyPaths);
|
|
186 |
return new DefaultPagerImpl<DescriptionElementBase>(pageNumber, results.size(), pageSize, results);
|
|
181 |
List<T> results = listDescriptionElements(description, descriptionType, features, type, pageSize, pageNumber, propertyPaths);
|
|
182 |
return new DefaultPagerImpl<T>(pageNumber, results.size(), pageSize, results);
|
|
187 | 183 |
} |
188 | 184 |
|
189 |
/* (non-Javadoc) |
|
190 |
* @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List) |
|
191 |
*/ |
|
192 | 185 |
@Override |
193 | 186 |
@Deprecated |
194 |
public Pager<DescriptionElementBase> getDescriptionElements(DescriptionBase description,
|
|
195 |
Set<Feature> features, Class<? extends DescriptionElementBase> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
187 |
public <T extends DescriptionElementBase> Pager<T> getDescriptionElements(DescriptionBase description,
|
|
188 |
Set<Feature> features, Class<T> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
196 | 189 |
return pageDescriptionElements(description, null, features, type, pageSize, pageNumber, propertyPaths); |
197 | 190 |
} |
198 | 191 |
|
192 |
|
|
193 |
|
|
199 | 194 |
@Override |
200 |
public List<DescriptionElementBase> listDescriptionElements(DescriptionBase description, Class<? extends DescriptionBase> descriptionType, |
|
201 |
Set<Feature> features, Class<? extends DescriptionElementBase> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) { |
|
195 |
public <T extends DescriptionElementBase> List<T> listDescriptionElements(DescriptionBase description, |
|
196 |
Class<? extends DescriptionBase> descriptionType, Set<Feature> features, Class<T> type, Integer pageSize, Integer pageNumber, |
|
197 |
List<String> propertyPaths) { |
|
202 | 198 |
|
203 | 199 |
Integer numberOfResults = dao.countDescriptionElements(description, descriptionType, features, type); |
204 |
List<DescriptionElementBase> results = new ArrayList<DescriptionElementBase>();
|
|
200 |
List<T> results = new ArrayList<T>();
|
|
205 | 201 |
if(AbstractPagerImpl.hasResultsInRange(numberOfResults.longValue(), pageNumber, pageSize)) { |
206 | 202 |
results = dao.getDescriptionElements(description, descriptionType, features, type, pageSize, pageNumber, propertyPaths); |
207 | 203 |
} |
208 | 204 |
return results; |
205 |
|
|
209 | 206 |
} |
210 | 207 |
|
211 |
/* (non-Javadoc) |
|
212 |
* @see eu.etaxonomy.cdm.api.service.IDescriptionService#listDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List) |
|
213 |
*/ |
|
208 |
|
|
214 | 209 |
@Override |
215 | 210 |
@Deprecated |
216 |
public List<DescriptionElementBase> listDescriptionElements(DescriptionBase description,
|
|
217 |
Set<Feature> features, Class<? extends DescriptionElementBase> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
211 |
public <T extends DescriptionElementBase> List<T> listDescriptionElements(DescriptionBase description,
|
|
212 |
Set<Feature> features, Class<T> type, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
|
|
218 | 213 |
|
219 | 214 |
return listDescriptionElements(description, null, features, type, pageSize, pageNumber, propertyPaths); |
220 | 215 |
} |
... | ... | |
825 | 820 |
} |
826 | 821 |
|
827 | 822 |
|
823 |
|
|
828 | 824 |
} |
Also available in: Unified diff
Cleanup description generics (related to #5357)