aboutsummaryrefslogtreecommitdiffstats
path: root/vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java
diff options
context:
space:
mode:
authorWojciech Sliwka <wojciech.sliwka@nokia.com>2019-04-09 14:57:02 +0200
committerWojciech Sliwka <wojciech.sliwka@nokia.com>2019-04-09 14:57:02 +0200
commit86683c58addadfeabe12d10c2fa26cfead22c2fe (patch)
tree12b8eb0918439c87145d112c1cf05593cc85f3b5 /vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java
parent2e77a83940fbe63305045ae8712404e38e8be185 (diff)
Support for swagger
API definitions available under /vid/v2/api-docs Change-Id: Ie7e63bfbdb8d41c43bc04ca13351dba533776a8a Issue-ID: VID-377 Signed-off-by: Wojciech Sliwka <wojciech.sliwka@nokia.com>
Diffstat (limited to 'vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java')
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java135
1 files changed, 0 insertions, 135 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java b/vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java
deleted file mode 100644
index 04d5babcc..000000000
--- a/vid-app-common/src/main/java/org/onap/vid/controller/HealthCheckController.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * VID
- * ================================================================================
- * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * 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.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.vid.controller;
-
-import org.onap.portalsdk.core.controller.UnRestrictedBaseController;
-import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
-import org.onap.portalsdk.core.util.SystemProperties;
-import org.onap.vid.dao.FnAppDoaImpl;
-import org.onap.vid.model.GitRepositoryState;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.MediaType;
-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;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.Properties;
-
-import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
-import static org.springframework.http.HttpStatus.OK;
-
-/**
- * Controller for user profile view. The view is restricted to authenticated
- * users. The view name resolves to page user_profile.jsp which uses Angular.
- */
-
-@RestController
-@RequestMapping("/")
-public class HealthCheckController extends UnRestrictedBaseController {
-
- private static final EELFLoggerDelegate LOGGER = EELFLoggerDelegate.getLogger(HealthCheckController.class);
- private static final DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss:SSSS");
- private static final String GIT_PROPERTIES_FILENAME = "git.properties";
- private FnAppDoaImpl fnAppDoaImpl;
-
- @Autowired
- public HealthCheckController(FnAppDoaImpl fnAppDoaImpl) {
- this.fnAppDoaImpl = fnAppDoaImpl;
- }
-
- /**
- * Obtain the HealthCheck Status from the System.Properties file.
- * Used by IDNS for redundancy
- *
- * @return ResponseEntity The response entity
- */
- @RequestMapping(value = "/healthCheck", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
- public HealthStatus getHealthCheckStatusForIDNS() {
- return createCorrespondingStatus();
- }
-
- /**
- * Obtain the HealthCheck Status from the System.Properties file.
- *
- * @return ResponseEntity The response entity
- */
- @RequestMapping(value = "rest/healthCheck/{User-Agent}/{X-ECOMP-RequestID}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
- public HealthStatus getHealthCheck(
- @PathVariable("User-Agent") String UserAgent,
- @PathVariable("X-ECOMP-RequestID") String ECOMPRequestID) {
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "User-Agent ", UserAgent);
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "X-ECOMP-RequestID ", ECOMPRequestID);
- return createCorrespondingStatus();
- }
-
- @RequestMapping(value = "/commitInfo", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
- public GitRepositoryState getCommitInfo() throws IOException {
- Properties properties = new Properties();
- properties.load(getClass().getClassLoader().getResourceAsStream(GIT_PROPERTIES_FILENAME));
- return new GitRepositoryState(properties);
- }
-
- private HealthStatus createCorrespondingStatus() {
- logData();
- try {
- int count = fnAppDoaImpl.getProfileCount(getUrl(), getUsername(), getPassword());
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "count:::", count);
- return okStatus();
- } catch (Exception ex) {
- String errorMsg = ex.getMessage();
- LOGGER.error(EELFLoggerDelegate.errorLogger, errorMsg);
- return errorStatus(errorMsg);
- }
- }
-
- private void logData() {
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "Performing health check");
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "URL::", getUrl());
- LOGGER.debug(EELFLoggerDelegate.debugLogger, "username::", getUsername());
- }
-
- private HealthStatus okStatus() {
- return new HealthStatus(OK, dateFormat.format(new Date()), "health check succeeded");
- }
-
- private HealthStatus errorStatus(String msg) {
- return new HealthStatus(INTERNAL_SERVER_ERROR, dateFormat.format(
- new Date()), "health check failed: " + msg);
- }
-
- private String getUrl() {
- return SystemProperties.getProperty("db.connectionURL");
- }
-
- private String getUsername() {
- return SystemProperties.getProperty("db.userName");
- }
-
- private String getPassword() {
- return SystemProperties.getProperty("db.password");
- }
-}
-