From 7679a6f8177d47116aa8dbae0b38f8b0a8174dc5 Mon Sep 17 00:00:00 2001 From: wasala Date: Tue, 7 Aug 2018 13:40:42 +0200 Subject: Fix corrections in code *FindBugs scan fixed errors *Checkstyle fixed errors Change-Id: I8553a56859de91f8886fc1518ff26e7b16c5c1d6 Issue-ID: DCAEGEN2-606 Signed-off-by: wasala --- .gitignore | 15 ++++++++ .gitlab-ci.yml | 24 ------------- .../prh/exceptions/AaiRequestException.java | 3 -- .../services/prh/service/AaiReactiveWebClient.java | 2 +- .../producer/AaiProducerReactiveHttpClient.java | 30 +++++++++------- .../AaiProducerReactiveHttpClientTest.java | 21 +++++------ .../services/prh/configuration/PrhAppConfig.java | 3 +- .../prh/service/DmaapConsumerJsonParser.java | 4 +-- .../services/prh/tasks/ScheduledTasks.java | 1 - .../org/onap/dcaegen2/services/prh/tasks/Task.java | 42 ---------------------- .../prh/configuration/PrhAppConfigTest.java | 6 ++-- 11 files changed, 52 insertions(+), 99 deletions(-) delete mode 100644 .gitlab-ci.yml delete mode 100644 prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java diff --git a/.gitignore b/.gitignore index 691c9f04..37f2c431 100644 --- a/.gitignore +++ b/.gitignore @@ -13,7 +13,11 @@ # Package Files # *.jar *.war +*.nar *.ear +*.zip +*.tar.gz +*.rar # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* @@ -22,7 +26,18 @@ hs_err_pid* .idea *.iml +# Maven target +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties +.mvn/wrapper/maven-wrapper.jar # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index dc36ce75..00000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,24 +0,0 @@ -image: archive.docker-registry.eecloud.nsn-net.net/imp/matryoshka:18.02.0 - -stages: - - build - - publish - -build: - stage: build - script: - - mvn -e clean install -T2 docker:build - artifacts: - expire_in: 5 days - paths: - - prh-commons/target/site/jacoco - - prh-aai-client/target/site/jacoco - - prh-dmaap-client/target/site/jacoco - - prh-app-server/target/site/jacoco -publish: - stage: publish - only: - - master - script: - - docker login $DOCKER_REPO_ADDR -u $DOCKER_REPO_USER -p $DOCKER_REPO_PASS - - mvn -e -DskipTests -Ddocker.repo.url="$DOCKER_REPO_ADDR" -Dnexus.staging="true" deploy diff --git a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/exceptions/AaiRequestException.java b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/exceptions/AaiRequestException.java index 33654c73..bd4355cd 100644 --- a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/exceptions/AaiRequestException.java +++ b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/exceptions/AaiRequestException.java @@ -21,9 +21,6 @@ package org.onap.dcaegen2.services.prh.exceptions; public class AaiRequestException extends Exception { - public AaiRequestException() { - super(); - } public AaiRequestException(String message) { super(message); diff --git a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/AaiReactiveWebClient.java b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/AaiReactiveWebClient.java index f3b511a7..2b156936 100644 --- a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/AaiReactiveWebClient.java +++ b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/AaiReactiveWebClient.java @@ -40,7 +40,7 @@ public class AaiReactiveWebClient { private Map aaiHeaders; /** - * Creating AaiReactiveWebClient + * Creating AaiReactiveWebClient. * @param configuration - configuration object * @return AaiReactiveWebClient */ diff --git a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClient.java b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClient.java index 55475902..b43c2164 100644 --- a/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClient.java +++ b/prh-aai-client/src/main/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClient.java @@ -43,7 +43,7 @@ public class AaiProducerReactiveHttpClient { /** - * Constructor + * Constructor of AaiProducerReactiveHttpClient. * * @param configuration - AAI producer configuration object */ @@ -55,7 +55,7 @@ public class AaiProducerReactiveHttpClient { } /** - * Function for calling AAI Http producer - patch request to AAI database + * Function for calling AAI Http producer - patch request to AAI database. * * @param consumerDmaapModelMono - object which will be sent to AAI database * @return status code of operation @@ -72,12 +72,16 @@ public class AaiProducerReactiveHttpClient { private Mono patchAaiRequest(ConsumerDmaapModel dmaapModel) { try { return webClient.patch() - .uri(getUri(dmaapModel.getPnfName())) - .body(BodyInserters.fromObject(dmaapModel)) - .retrieve() - .onStatus(HttpStatus::is4xxClientError, clientResponse -> Mono.error(new AaiRequestException("HTTP 400"))) - .onStatus(HttpStatus::is5xxServerError, clientResponse -> Mono.error(new AaiRequestException("HTTP 500"))) - .bodyToMono(Integer.class); + .uri(getUri(dmaapModel.getPnfName())) + .body(BodyInserters.fromObject(dmaapModel)) + .retrieve() + .onStatus( + HttpStatus::is4xxClientError, + clientResponse -> Mono.error(new AaiRequestException("HTTP 400")) + ) + .onStatus(HttpStatus::is5xxServerError, + clientResponse -> Mono.error(new AaiRequestException("HTTP 500"))) + .bodyToMono(Integer.class); } catch (URISyntaxException e) { return Mono.error(e); } @@ -85,10 +89,10 @@ public class AaiProducerReactiveHttpClient { URI getUri(String pnfName) throws URISyntaxException { return new URIBuilder() - .setScheme(aaiProtocol) - .setHost(aaiHost) - .setPort(aaiHostPortNumber) - .setPath(aaiBasePath + "/" + pnfName) - .build(); + .setScheme(aaiProtocol) + .setHost(aaiHost) + .setPort(aaiHostPortNumber) + .setPath(aaiBasePath + "/" + pnfName) + .build(); } } diff --git a/prh-aai-client/src/test/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClientTest.java b/prh-aai-client/src/test/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClientTest.java index 3b6fe4d7..c99deca5 100644 --- a/prh-aai-client/src/test/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClientTest.java +++ b/prh-aai-client/src/test/java/org/onap/dcaegen2/services/prh/service/producer/AaiProducerReactiveHttpClientTest.java @@ -43,7 +43,6 @@ import reactor.core.publisher.Mono; import reactor.test.StepVerifier; - class AaiProducerReactiveHttpClientTest { private static AaiProducerReactiveHttpClient aaiProducerReactiveHttpClient; @@ -75,9 +74,9 @@ class AaiProducerReactiveHttpClientTest { aaiProducerReactiveHttpClient = new AaiProducerReactiveHttpClient(aaiConfigurationMock); webClient = spy(WebClient.builder() - .defaultHeaders(httpHeaders -> httpHeaders.setAll(aaiHeaders)) - .filter(basicAuthentication(aaiConfigurationMock.aaiUserName(), aaiConfigurationMock.aaiUserPassword())) - .build()); + .defaultHeaders(httpHeaders -> httpHeaders.setAll(aaiHeaders)) + .filter(basicAuthentication(aaiConfigurationMock.aaiUserName(), aaiConfigurationMock.aaiUserPassword())) + .build()); requestBodyUriSpec = mock(WebClient.RequestBodyUriSpec.class); responseSpec = mock(ResponseSpec.class); @@ -97,10 +96,10 @@ class AaiProducerReactiveHttpClientTest { //then StepVerifier.create(response).expectSubscription() - .expectNextMatches(results -> { - Assertions.assertEquals(results, expectedResult.block()); - return true; - }).verifyComplete(); + .expectNextMatches(results -> { + Assertions.assertEquals(results, expectedResult.block()); + return true; + }).verifyComplete(); } @Test @@ -113,8 +112,10 @@ class AaiProducerReactiveHttpClientTest { when(aaiProducerReactiveHttpClient.getUri("pnfName")).thenThrow(URISyntaxException.class); //then - StepVerifier.create(aaiProducerReactiveHttpClient.getAaiProducerResponse(Mono.just(dmaapModel))).expectSubscription() - .expectError(Exception.class).verify(); + StepVerifier.create( + aaiProducerReactiveHttpClient.getAaiProducerResponse( + Mono.just(dmaapModel) + )).expectSubscription().expectError(Exception.class).verify(); } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java index a6ed3146..ad040f6e 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java @@ -33,6 +33,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; import java.util.ServiceLoader; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; @@ -119,7 +120,7 @@ public abstract class PrhAppConfig implements Config { } JsonElement getJsonElement(JsonParser parser, InputStream inputStream) { - return parser.parse(new InputStreamReader(inputStream)); + return parser.parse(new InputStreamReader(inputStream, StandardCharsets.UTF_8)); } private T deserializeType(@NotNull GsonBuilder gsonBuilder, @NotNull JsonObject jsonObject, diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java index e46c97a5..1b8aaca3 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java @@ -119,11 +119,11 @@ public class DmaapConsumerJsonParser { private String printMessage(String pnfVendorName, String pnfSerialNumber, String pnfOamIpv4Address, String pnfOamIpv6Address) { - return String.format("\n{" + return String.format("%n{" + "\"pnfVendorName\" : \"%s\"," + "\"pnfSerialNumber\": \"%s\"," + "\"pnfOamIpv4Address\": \"%s\"," + "\"pnfOamIpv6Address\": \"%s\"" - + "\n}", pnfVendorName, pnfSerialNumber, pnfOamIpv4Address, pnfOamIpv6Address); + + "%n}", pnfVendorName, pnfSerialNumber, pnfOamIpv4Address, pnfOamIpv6Address); } } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java index e00a606d..664eb33c 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java @@ -20,7 +20,6 @@ package org.onap.dcaegen2.services.prh.tasks; -import java.util.Optional; import java.util.concurrent.Callable; import org.onap.dcaegen2.services.prh.exceptions.DmaapEmptyResponseException; import org.onap.dcaegen2.services.prh.exceptions.PrhTaskException; diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java deleted file mode 100644 index c26028a7..00000000 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2018 NOKIA 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.dcaegen2.services.prh.tasks; - -import org.onap.dcaegen2.services.prh.exceptions.PrhTaskException; - -/** - * @author Przemysław Wąsala on 4/13/18 - */ - - -public abstract class Task { - - Task taskProcess; - - protected abstract void receiveRequest(R body) throws PrhTaskException; - - protected abstract S execute(R object) throws PrhTaskException; - - protected abstract C resolveConfiguration(); - - void setNext(Task task) { - this.taskProcess = task; - } -} diff --git a/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfigTest.java b/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfigTest.java index 6d1c4b9b..8ad2a94f 100644 --- a/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfigTest.java +++ b/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfigTest.java @@ -53,7 +53,8 @@ class PrhAppConfigTest { + "\"localhost\",\"aaiPort\":8080,\"aaiIgnoreSslCertificateErrors\":true,\"aaiProtocol\":" + "\"https\",\"aaiUserName\":\"admin\",\"aaiUserPassword\":\"admin\",\"aaiBasePath\":\"/aai/v11\"," + "\"aaiPnfPath\":\"/network/pnfs/pnf\",\"aaiHeaders\":{\"X-FromAppId\":\"prh\",\"X-TransactionId\":\"9999\"," - + "\"Accept\":\"application/json\",\"Real-Time\":\"true\",\"Content-Type\":\"application/merge-patch+json\",\"Authorization\":\"Basic QUFJOkFBSQ==\"}}}," + + "\"Accept\":\"application/json\",\"Real-Time\":\"true\",\"Content-Type\":\"application/merge-patch+json\"," + + "\"Authorization\":\"Basic QUFJOkFBSQ==\"}}}," + "\"dmaap\":{\"dmaapConsumerConfiguration\":{\"consumerGroup\":\"other\",\"consumerId\":\"1\"," + "\"dmaapContentType\":\"application/json\",\"dmaapHostName\":\"localhost\",\"dmaapPortNumber\":2222," + "\"dmaapProtocol\":\"http\",\"dmaapTopicName\":\"temp\",\"dmaapUserName\":\"admin\",\"dmaapUserPassword\"" @@ -65,7 +66,8 @@ class PrhAppConfigTest { + "\"localhost\",\"aaiPort\":8080,\"aaiIgnoreSslCertificateErrors\":true,\"aaiProtocol\":\"https\"," + "\"aaiUserName\":\"admin\",\"aaiUserPassword\":\"admin\",\"aaiBasePath\":\"/aai/v11\",\"aaiPnfPath\":" + "\"/network/pnfs/pnf\",\"aaiHeaders\":{\"X-FromAppId\":\"prh\",\"X-TransactionId\":\"9999\",\"Accept\":" - + "\"application/json\",\"Real-Time\":\"true\",\"Content-Type\":\"application/merge-patch+json\",\"Authorization\":\"Basic QUFJOkFBSQ==\"}}},\"dmaap\"" + + "\"application/json\",\"Real-Time\":\"true\",\"Content-Type\":\"application/merge-patch+json\"," + + "\"Authorization\":\"Basic QUFJOkFBSQ==\"}}},\"dmaap\"" + ":{\"dmaapConsumerConfiguration\":{\"consumerGroup\":\"other\",\"consumerId\":\"1\",\"dmaapContentType\"" + ":\"application/json\",\"dmaapHostName\":\"localhost\",\"dmaapPortNumber\":2222,\"dmaapProtocol\":\"http\"" + ",\"dmaapTopicName\":\"temp\",\"dmaapUserName\":\"admin\",\"dmaapUserPassword\":\"admin\",\"messageLimit\"" -- cgit 1.2.3-korg