class DefaultDao implements Dao<ENTITY, ENTITYLIST, KEY> {

	@Override
	public PagedResult<ENTITY> getEntities(final MultiplePagedSearch<ENTITYLIST> pagedSearch) {
		LOG.info("Getting paged result for {}: {}", getEntityClass().getSimpleName(), pagedSearch);
		
		String querySql = queryBuilder.build(pagedSearch);
		Query<ENTITY> queries = new Query<ENTITY>(getEntityClass(), querySql);
		
		MultiplePagedQuerySearch<ENTITY> pagedQuerySearch = new MultiplePagedQuerySearch<ENTITY>(queries, pagedSearch.getOffset(), 
				pagedSearch.getLimit(), pagedSearch.getParameters(), getEntityClass());

		return persistenceManager.search(pagedQuerySearch);
	}

}