Project

General

Profile

1
package eu.dnetlib.administration.uis.modules.datasources;
2

    
3
import java.util.List;
4
import java.util.Map;
5

    
6
import org.apache.commons.lang3.StringUtils;
7
import org.springframework.beans.factory.annotation.Autowired;
8
import org.springframework.web.bind.annotation.RequestMapping;
9
import org.springframework.web.bind.annotation.RequestParam;
10
import org.springframework.web.bind.annotation.ResponseBody;
11

    
12
import com.google.gson.Gson;
13

    
14
import eu.dnetlib.clients.dsManager.BrowseTerm;
15
import eu.dnetlib.clients.dsManager.DatasourcePoint;
16
import eu.dnetlib.clients.dsManager.DsManagerClient;
17

    
18
public class RepoInternalController {
19

    
20
	// TO DELETE/REPLACE
21

    
22
	@Autowired
23
	private DsManagerClient dsManager;
24

    
25
	@RequestMapping(value = "/ui/browseRepoField.do")
26
	public @ResponseBody List<BrowseTerm> browseRepoField(@RequestParam(value = "field", required = true) final String field) throws Exception {
27
		return dsManager.browseField(field);
28
	}
29

    
30
	@RequestMapping(value = "/ui/listRepositories.map")
31
	public @ResponseBody List<DatasourcePoint> listRepositories_asMap() throws Exception {
32
		return dsManager.getRepositoryMap();
33
	}
34

    
35
	@SuppressWarnings("unchecked")
36
	@RequestMapping("/ui/repo/repoApi.update")
37
	public @ResponseBody boolean updateRepoApi(
38
			@RequestParam(value = "id", required = true) final String repoId,
39
			@RequestParam(value = "iface", required = true) final String ifaceId,
40
			@RequestParam(value = "accessParams", required = true) final String accessParamsJson) throws Exception {
41
		if (!StringUtils.isEmpty(accessParamsJson)) {
42
			dsManager.bulkUpdateApiAccessParams(repoId, ifaceId, new Gson().fromJson(accessParamsJson, Map.class));
43
		}
44
		return true;
45
	}
46

    
47
}
(10-10/12)