X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-backend%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fric%2Fportal%2Fdashboard%2Fcontroller%2FAdminController.java;fp=webapp-backend%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fric%2Fportal%2Fdashboard%2Fcontroller%2FHealthcheckController.java;h=ed4837d8adba98d3416c48b7dd9695658aaa1024;hb=1fde0c3b93c9cf75b9e48382f298f644b03fa249;hp=235bcabd37fc9c44352a3966a1cb2bed363b3ec2;hpb=b7c9d29d2b472e63bbe0331a413da0e7cd492aee;p=portal%2Fric-dashboard.git diff --git a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/HealthcheckController.java b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AdminController.java similarity index 55% rename from webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/HealthcheckController.java rename to webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AdminController.java index 235bcabd..ed4837d8 100644 --- a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/HealthcheckController.java +++ b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AdminController.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -23,7 +23,10 @@ import java.lang.invoke.MethodHandles; import org.oransc.ric.portal.dashboard.DashboardApplication; import org.oransc.ric.portal.dashboard.DashboardConstants; +import org.oransc.ric.portal.dashboard.model.DashboardUser; import org.oransc.ric.portal.dashboard.model.SuccessTransport; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -32,24 +35,46 @@ import org.springframework.web.bind.annotation.RestController; import io.swagger.annotations.ApiOperation; /** - * Answers REST requests for the API service health etc. + * Answers REST requests for admin services like version, health etc. */ @RestController -@RequestMapping(value = DashboardConstants.ENDPOINT_PREFIX + "/dashboard", produces = MediaType.APPLICATION_JSON_VALUE) -public class HealthcheckController { +@RequestMapping(value = DashboardConstants.ENDPOINT_PREFIX + "/admin", produces = MediaType.APPLICATION_JSON_VALUE) +public class AdminController { - @ApiOperation(value = "Checks the health of the application by (TBD).", response = SuccessTransport.class) - @RequestMapping(value = DashboardConstants.HEALTHCHECK_PATH, method = RequestMethod.GET) - public SuccessTransport getDashblardHealth() { - long count = 0; - return new SuccessTransport(200, "(TBD) reports count is " + count); + private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + + private final DashboardUser[] users; + + public AdminController() { + // Mock data + users = new DashboardUser[] { // + new DashboardUser(1, "John", "Doe", "Active"), // + new DashboardUser(2, "Alice", "Nolan", "Active"), // + new DashboardUser(3, "Pierce", "King", "Inactive"), // + new DashboardUser(4, "Paul", "Smith", "Inactive"), // + new DashboardUser(5, "Jack", "Reacher", "Active") }; } @ApiOperation(value = "Gets the Dashboard MANIFEST.MF property Implementation-Version.", response = SuccessTransport.class) @RequestMapping(value = DashboardConstants.VERSION_PATH, method = RequestMethod.GET) - public SuccessTransport getDashboardVersion() { + public SuccessTransport getVersion() { + logger.debug("getVersion"); return new SuccessTransport(200, DashboardApplication.getImplementationVersion(MethodHandles.lookup().lookupClass())); } + @ApiOperation(value = "Checks the health of the application.", response = SuccessTransport.class) + @RequestMapping(value = DashboardConstants.HEALTHCHECK_PATH, method = RequestMethod.GET) + public SuccessTransport getHealth() { + logger.debug("getHealth"); + return new SuccessTransport(200, "Dashboard is healthy!"); + } + + @ApiOperation(value = "Gets the list of application users.", response = DashboardUser.class, responseContainer = "List") + @RequestMapping(value = DashboardConstants.USER_PATH, method = RequestMethod.GET) + public DashboardUser[] getUsers() { + logger.debug("getUsers"); + return users; + } + }