Project

General

Profile

« Previous | Next » 

Revision d4992817

Added by Andreas Kohlbecker about 13 years ago

splitting PolytomousKeyNodeService from PolytomousKeyService & more methods for IdentificationKeyService

View differences:

cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IdentificationKeyServiceImpl.java
9 9
import org.springframework.transaction.annotation.Transactional;
10 10

  
11 11
import eu.etaxonomy.cdm.api.service.pager.Pager;
12
import eu.etaxonomy.cdm.api.service.pager.impl.AbstractPagerImpl;
12 13
import eu.etaxonomy.cdm.api.service.pager.impl.DefaultPagerImpl;
13 14
import eu.etaxonomy.cdm.model.description.IIdentificationKey;
15
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
14 16
import eu.etaxonomy.cdm.persistence.dao.description.IIdentificationKeyDao;
15 17

  
16 18
@Service
......
34 36
		}
35 37
		return new DefaultPagerImpl<IIdentificationKey>(pageNumber, numberOfResults, pageSize, results);
36 38
	}
39
	
40
	
41
	public <T extends IIdentificationKey> Pager<T> findKeysConvering(TaxonBase taxon,
42
			Class<T> type, Integer pageSize,
43
			Integer pageNumber, List<String> propertyPaths) {
44
		
45
		Integer numberOfResults = dao.countByTaxonomicScope(taxon, type).intValue();
46
		List<T> results = new ArrayList<T>();
47
		if(AbstractPagerImpl.hasResultsInRange(numberOfResults, pageNumber, pageSize)){
48
			results = dao.findByTaxonomicScope(taxon, type, pageSize, pageNumber, propertyPaths);
49
		}
50
		return new DefaultPagerImpl<T>(pageNumber, numberOfResults, pageSize, results);
51
	}
37 52

  
38 53
}

Also available in: Unified diff