58 lines
2.3 KiB
Plaintext
Executable File
58 lines
2.3 KiB
Plaintext
Executable File
package eu.dnetlib.usagestats.controllers;
|
|
|
|
import eu.dnetlib.usagestats.portal.TotalStats;
|
|
import eu.dnetlib.usagestats.portal.UsageStats;
|
|
|
|
import eu.dnetlib.usagestats.services.UsageStatsService;
|
|
import org.apache.log4j.Logger;
|
|
import org.springframework.web.bind.annotation.CrossOrigin;
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
@RestController
|
|
@CrossOrigin(methods = RequestMethod.GET, origins = "*")
|
|
public class UsageStatsController {
|
|
|
|
private final UsageStatsService usageStatsService;
|
|
|
|
private final Logger log = Logger.getLogger(this.getClass());
|
|
|
|
public UsageStatsController(UsageStatsService usageStatsService) {
|
|
this.usageStatsService = usageStatsService;
|
|
}
|
|
|
|
@RequestMapping(value = "/datasources/{datasourceId}/clicks")
|
|
public UsageStats getDatasourceClicks(@PathVariable(value = "datasourceId") String datasourceId) {
|
|
log.info("stats request for datasource: " + datasourceId);
|
|
return usageStatsService.getDatasourceClicks(datasourceId);
|
|
}
|
|
|
|
@RequestMapping(value = "/projects/{projectId}/clicks")
|
|
public UsageStats getProjectClicks(@PathVariable(value = "projectId") String projectId) {
|
|
log.info("stats request for project: " + projectId);
|
|
return usageStatsService.getProjectClicks(projectId);
|
|
}
|
|
|
|
/*
|
|
@RequestMapping(value = "/organizations/{organizationId}/clicks")
|
|
public UsageStats getOrganizationClicks(@PathVariable(value = "organizationId") String organizationId) {
|
|
log.info("stats request for organization: " + organizationId);
|
|
return usageStatsService.getOrganizationClicks(organizationId);
|
|
}
|
|
*/
|
|
|
|
@RequestMapping(value = "/results/{resultId}/clicks")
|
|
public UsageStats getResultClicks(@PathVariable(value = "resultId") String resultId) {
|
|
log.info("stats request for result: " + resultId);
|
|
return usageStatsService.getResultClicks(resultId);
|
|
}
|
|
@RequestMapping(value = "/totals")
|
|
public TotalStats getTotalStats() {
|
|
log.info("total stats request");
|
|
return usageStatsService.getTotalStats();
|
|
}
|
|
}
|