From 9bc44f8f978667a3d0cc62c5123d6277b7cc9aa5 Mon Sep 17 00:00:00 2001 From: "ioannis.diplas" Date: Fri, 27 Sep 2019 09:46:21 +0000 Subject: [PATCH] Usage summary custom return object with PiwikInfo and MetricsInfo --- .../controllers/DashboardController.java | 8 +++- .../repo/manager/domain/UsageSummary.java | 39 +++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 src/main/java/eu/dnetlib/repo/manager/domain/UsageSummary.java diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java index dab397b..2a948b6 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java @@ -2,6 +2,7 @@ package eu.dnetlib.repo.manager.controllers; import eu.dnetlib.repo.manager.domain.BrokerSummary; import eu.dnetlib.repo.manager.domain.RepositorySummaryInfo; +import eu.dnetlib.repo.manager.domain.UsageSummary; import eu.dnetlib.repo.manager.service.BrokerService; import eu.dnetlib.repo.manager.service.DashboardService; import eu.dnetlib.repo.manager.service.PiWikService; @@ -33,6 +34,9 @@ public class DashboardController { @Autowired private BrokerService brokerService; + @Autowired + private PiWikService piWikService; + @RequestMapping(value = "/getRepositoriesSummary/{userEmail}/{page}/{size}" , method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE) @ResponseBody @@ -57,9 +61,9 @@ public class DashboardController { produces = MediaType.APPLICATION_JSON_VALUE) @ResponseBody @PreAuthorize("hasRole('ROLE_USER')") - public MetricsInfo getUsageSummary( + public UsageSummary getUsageSummary( @PathVariable("repoId") String repoId) throws RepositoryServiceException { - return repositoryService.getMetricsInfoForRepository(repoId); + return new UsageSummary(repositoryService.getMetricsInfoForRepository(repoId), piWikService.getPiwikSiteForRepo(repoId)); } @RequestMapping(value = "/brokerSummary/{email}/{ds_name}" , method = RequestMethod.GET, diff --git a/src/main/java/eu/dnetlib/repo/manager/domain/UsageSummary.java b/src/main/java/eu/dnetlib/repo/manager/domain/UsageSummary.java new file mode 100644 index 0000000..9327109 --- /dev/null +++ b/src/main/java/eu/dnetlib/repo/manager/domain/UsageSummary.java @@ -0,0 +1,39 @@ +package eu.dnetlib.repo.manager.domain; + +import eu.dnetlib.domain.data.PiwikInfo; +import eu.dnetlib.repo.manager.shared.MetricsInfo; +import eu.dnetlib.repo.manager.shared.broker.BrowseEntry; +import eu.dnetlib.repo.manager.shared.broker.SimpleSubscriptionDesc; + +import java.util.List; +import java.util.Map; + +public class UsageSummary { + private MetricsInfo metricsInfo; + + private PiwikInfo piwikInfo; + + public UsageSummary() { + } + + public UsageSummary(MetricsInfo metricsInfo, PiwikInfo piwikInfo) { + this.metricsInfo = metricsInfo; + this.piwikInfo = piwikInfo; + } + + public MetricsInfo getMetricsInfo() { + return metricsInfo; + } + + public void setMetricsInfo(MetricsInfo metricsInfo) { + this.metricsInfo = metricsInfo; + } + + public PiwikInfo getPiwikInfo() { + return piwikInfo; + } + + public void setPiwikInfo(PiwikInfo piwikInfo) { + this.piwikInfo = piwikInfo; + } +}