Project

General

Profile

Download (1.76 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.remote.controller.oaipmh;
2

    
3
import java.util.ArrayList;
4
import java.util.HashSet;
5
import java.util.List;
6
import java.util.Set;
7

    
8
import org.springframework.beans.factory.annotation.Autowired;
9
import org.springframework.stereotype.Controller;
10
import org.springframework.web.bind.annotation.RequestMapping;
11
import org.springframework.web.servlet.ModelAndView;
12

    
13
import eu.etaxonomy.cdm.api.service.ITaxonService;
14
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
15
import eu.etaxonomy.cdm.remote.controller.AbstractOaiPmhController;
16
import eu.etaxonomy.cdm.remote.dto.oaipmh.SetSpec;
17

    
18
@Controller
19
@RequestMapping(value = "/taxon/oai", params = "verb")
20
public class TaxonOaiPmhController extends AbstractOaiPmhController<TaxonBase, ITaxonService> {
21

    
22
	@Override
23
	protected List<String> getPropertyPaths() {
24
		List<String> propertyPaths = new ArrayList<String>();
25
		propertyPaths.add("createdBy");
26
		propertyPaths.add("updatedBy");
27
		propertyPaths.add("name");
28
		propertyPaths.add("sec");
29
		propertyPaths.add("relationsToThisTaxon");
30
		propertyPaths.add("relationsToThisTaxon.fromTaxon");
31
		propertyPaths.add("relationsToThisTaxon.toTaxon");
32
		propertyPaths.add("relationsToThisTaxon.type");
33
		propertyPaths.add("synonymRelations");
34
		propertyPaths.add("synonymRelations.synonym");
35
		propertyPaths.add("synonymRelations.type");
36
		propertyPaths.add("descriptions");
37
		return propertyPaths;
38
	}
39
    
40
    @Override
41
    protected void addSets(ModelAndView modelAndView) {
42
    	Set<SetSpec> sets = new HashSet<SetSpec>();
43
    	sets.add(SetSpec.TAXON);
44
    	sets.add(SetSpec.SYNONYM);
45
    	modelAndView.addObject("sets",sets);
46
    }
47
	
48
    @Override
49
    @Autowired
50
	public void setService(ITaxonService service) {
51
		this.service = service;
52
	}
53
}
    (1-1/1)