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%2FAppManagerController.java;h=cf267da0fa7de7e7f6c4eb258c56aef8d6f01893;hb=a16f2d04fa1af4fe1ea993133a1d106e7fa1da3d;hp=365a5803c6e1b3b95d29282eb6eb65111a5ae679;hpb=c3b80bfed44dd12cf869d85bcda9c63583b147fb;p=portal%2Fric-dashboard.git diff --git a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AppManagerController.java b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AppManagerController.java index 365a5803..cf267da0 100644 --- a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AppManagerController.java +++ b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AppManagerController.java @@ -2,7 +2,7 @@ * ========================LICENSE_START================================= * O-RAN-SC * %% - * Copyright (C) 2019 AT&T Intellectual Property and Nokia + * Copyright (C) 2019 AT&T Intellectual Property * %% * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,9 +56,12 @@ import org.springframework.web.bind.annotation.RestController; import io.swagger.annotations.ApiOperation; /** - * Proxies calls from the front end to the App Manager API. All methods answer - * 502 on failure:
HTTP server received an invalid response from a - * server it consulted when acting as a proxy or gateway.
+ * Proxies calls from the front end to the App Manager API. + * + * If a method throws RestClientResponseException, it is handled by + * {@link CustomResponseEntityExceptionHandler#handleProxyMethodException(Exception, org.springframework.web.context.request.WebRequest)} + * which returns status 502. All other exceptions are handled by Spring which + * returns status 500. */ @Configuration @RestController @@ -155,7 +158,7 @@ public class AppManagerController { @ApiOperation(value = "Returns a list of deployable xapps.", response = DashboardDeployableXapps.class) @GetMapping(XAPPS_LIST_METHOD) @Secured({ DashboardConstants.ROLE_ADMIN, DashboardConstants.ROLE_STANDARD }) - public Object getAvailableXapps() { + public DashboardDeployableXapps getAvailableXapps() { logger.debug("getAvailableXapps"); AllDeployableXapps appNames = xappApi.listAllDeployableXapps(); // Answer a collection of structure instead of string @@ -197,7 +200,7 @@ public class AppManagerController { public void undeployXapp(@PathVariable("xAppName") String xAppName, HttpServletResponse response) { logger.debug("undeployXapp {}", xAppName); xappApi.undeployXapp(xAppName); - response.setStatus(healthApi.getApiClient().getStatusCode().value()); + response.setStatus(xappApi.getApiClient().getStatusCode().value()); } }