\r
@Override\r
@Transactional(readOnly = false)\r
- public UUID delete(T persistentObject) throws ReferencedObjectUndeletableException {\r
- return dao.delete(persistentObject);\r
+ public String delete(T persistentObject) {\r
+ return dao.delete(persistentObject).toString();\r
}\r
\r
@Override\r
\r
@Override\r
@Transactional(readOnly = true)\r
- public List<T> list(Class<? extends T> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths){\r
+ public <S extends T> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths){\r
return dao.list(type,limit, start, orderHints,propertyPaths);\r
}\r
\r
\r
@Override\r
@Transactional(readOnly = true)\r
- public Pager<T> page(Class<? extends T> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths){\r
+ public <S extends T> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths){\r
Integer numberOfResults = dao.count(type);\r
- List<T> results = new ArrayList<T>();\r
+ List<S> results = new ArrayList<S>();\r
pageNumber = pageNumber == null ? 0 : pageNumber;\r
if(numberOfResults > 0) { // no point checking again //TODO use AbstractPagerImpl.hasResultsInRange(numberOfResults, pageNumber, pageSize)\r
Integer start = pageSize == null ? 0 : pageSize * pageNumber;\r
results = dao.list(type, pageSize, start, orderHints,propertyPaths);\r
}\r
- return new DefaultPagerImpl<T>(pageNumber, numberOfResults, pageSize, results);\r
+ return new DefaultPagerImpl<S>(pageNumber, numberOfResults, pageSize, results);\r
}\r
\r
@Override\r
public List<T> list(T example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {\r
return dao.list(example, includeProperties, limit, start, orderHints, propertyPaths);\r
}\r
+ \r
+ \r
\r
}\r