diff options
author | ramverma <ram.krishna.verma@ericsson.com> | 2018-08-22 12:13:33 +0100 |
---|---|---|
committer | ramverma <ram.krishna.verma@ericsson.com> | 2018-08-22 12:14:45 +0100 |
commit | 99b3ae8b86863672ebe410303182d21daeabd0d1 (patch) | |
tree | d44ed0437769e4dd951bdeb5dc8dcb8dc425abc5 /policy-endpoints/src | |
parent | b655b67e38d98c3478a3a47407ee90410d4442bb (diff) |
Adding common utility classes to policy/common
* Adding HealthCheckReport class to policy/common for wider use
among all policy modules.
* Adding utility class called ParameterValidationUtils for providing
common validation methods to all policy modules. For now, it has only 3
validation methods but we all can add more in future.
Change-Id: I363fe116ba74f25299fd71211be73505b3164f72
Issue-ID: POLICY-1035
Signed-off-by: ramverma <ram.krishna.verma@ericsson.com>
Diffstat (limited to 'policy-endpoints/src')
2 files changed, 204 insertions, 0 deletions
diff --git a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/report/HealthCheckReport.java b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/report/HealthCheckReport.java new file mode 100644 index 00000000..147dda76 --- /dev/null +++ b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/report/HealthCheckReport.java @@ -0,0 +1,145 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.common.endpoints.report; + +/** + * Class to represent health check report of a service. + * + * @author Ram Krishna Verma (ram.krishna.verma@ericsson.com) + */ +public class HealthCheckReport { + + private String name; + private String url; + private boolean healthy; + private int code; + private String message; + + /** + * Returns the name of this report. + * + * @return the name + */ + public String getName() { + return name; + } + + /** + * Set the name of this report. + * + * @param name the name to set + */ + public void setName(final String name) { + this.name = name; + } + + /** + * Returns the url of this report. + * + * @return the url + */ + public String getUrl() { + return url; + } + + /** + * Set the url of this report. + * + * @param url the url to set + */ + public void setUrl(final String url) { + this.url = url; + } + + /** + * Returns the health status of this report. + * + * @return the healthy + */ + public boolean isHealthy() { + return healthy; + } + + /** + * Set the health status of this report. + * + * @param healthy the healthy to set + */ + public void setHealthy(final boolean healthy) { + this.healthy = healthy; + } + + /** + * Returns the code of this report. + * + * @return the code + */ + public int getCode() { + return code; + } + + /** + * Set the code of this report. + * + * @param code the code to set + */ + public void setCode(final int code) { + this.code = code; + } + + /** + * Returns the message of this report. + * + * @return the message + */ + public String getMessage() { + return message; + } + + /** + * Set the message of this report. + * + * @param message the message to set + */ + public void setMessage(final String message) { + this.message = message; + } + + /** + * {@inheritDoc} + */ + @Override + public String toString() { + final StringBuilder builder = new StringBuilder(); + builder.append("Report [name="); + builder.append(getName()); + builder.append(", url="); + builder.append(getUrl()); + builder.append(", healthy="); + builder.append(isHealthy()); + builder.append(", code="); + builder.append(getCode()); + builder.append(", message="); + builder.append(getMessage()); + builder.append("]"); + return builder.toString(); + } +} diff --git a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/report/TestHealthCheckReport.java b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/report/TestHealthCheckReport.java new file mode 100644 index 00000000..72bae0cf --- /dev/null +++ b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/report/TestHealthCheckReport.java @@ -0,0 +1,59 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.common.endpoints.report; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +/** + * Class to perform unit test of HealthCheckReport. + * + * @author Ram Krishna Verma (ram.krishna.verma@ericsson.com) + */ +public class TestHealthCheckReport { + + @Test + public void testReport() { + final String name = "Policy"; + final String url = "self"; + final boolean healthy = true; + final int code = 200; + final String message = "alive"; + final HealthCheckReport report = new HealthCheckReport(); + report.setName(name); + report.setUrl(url); + report.setHealthy(healthy); + report.setCode(code); + report.setMessage(message); + validateReport(name, url, healthy, code, message, report); + } + + private void validateReport(final String name, final String url, final boolean healthy, final int code, + final String message, final HealthCheckReport report) { + assertEquals(name, report.getName()); + assertEquals(url, report.getUrl()); + assertEquals(healthy, report.isHealthy()); + assertEquals(code, report.getCode()); + assertEquals(message, report.getMessage()); + assertEquals("Report [name=Policy, url=self, healthy=true, code=200, message=alive]", report.toString()); + } +} |