From 880dba137afdf2ddf0693d2290314bf683d7f5d7 Mon Sep 17 00:00:00 2001 From: Michal Kabaj Date: Wed, 27 Nov 2019 10:58:35 +0100 Subject: aaiclient api refactor - removed unused transaction api Issue-ID: DCAEGEN2-1955 Signed-off-by: Michal Kabaj Change-Id: I9e0566b3f6cdf5f0f908254f5823ed86b420cc2d --- .../services/prh/model/queries/NamedNode.java | 34 ----------- .../prh/model/queries/NamedNodeAdapter.java | 71 ---------------------- .../services/prh/model/queries/NamedNodes.java | 40 ------------ .../services/prh/model/queries/PnfQuery.java | 54 ---------------- .../prh/model/utils/PrhModelAwareGsonBuilder.java | 3 - .../services/prh/model/queries/NamedNodesTest.java | 58 ------------------ .../services/prh/model/queries/PnfQueryTest.java | 55 ----------------- 7 files changed, 315 deletions(-) delete mode 100644 prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNode.java delete mode 100644 prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodeAdapter.java delete mode 100644 prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodes.java delete mode 100644 prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/PnfQuery.java delete mode 100644 prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodesTest.java delete mode 100644 prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/PnfQueryTest.java diff --git a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNode.java b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNode.java deleted file mode 100644 index 6329e7e0..00000000 --- a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNode.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import java.util.Map; -import org.immutables.value.Value; - -/** - * @see NamedNodeAdapter - * @see NamedNodes - */ -@Value.Immutable -public interface NamedNode { - String name(); - Map properties(); -} \ No newline at end of file diff --git a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodeAdapter.java b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodeAdapter.java deleted file mode 100644 index be6c8d5b..00000000 --- a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodeAdapter.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import com.google.gson.TypeAdapter; -import com.google.gson.stream.JsonReader; -import com.google.gson.stream.JsonWriter; -import java.io.IOException; -import org.onap.dcaegen2.services.prh.model.queries.ImmutableNamedNode.Builder; - -/** - * @see NamedNode - * @see AAI - * Custom queries - */ -public class NamedNodeAdapter extends TypeAdapter { - - @Override - public void write(JsonWriter jsonWriter, NamedNode namedNode) { - throw new UnsupportedOperationException("This model is read only!"); - } - - @Override - public NamedNode read(JsonReader jsonReader) throws IOException { - jsonReader.beginObject(); - Builder nodeBuilder = ImmutableNamedNode.builder().name(jsonReader.nextName()); - readProperties(jsonReader, nodeBuilder); - jsonReader.endObject(); - - return nodeBuilder.build(); - } - - private void readProperties(JsonReader jsonReader, Builder nodeBuilder) throws IOException { - jsonReader.beginObject(); - while (jsonReader.hasNext()) { - String key = jsonReader.nextName(); - switch (jsonReader.peek()) { - case STRING: - nodeBuilder.putProperties(key, jsonReader.nextString()); - break; - case NUMBER: - nodeBuilder.putProperties(key, jsonReader.nextInt()); - break; - case BOOLEAN: - nodeBuilder.putProperties(key, jsonReader.nextBoolean()); - break; - default: - jsonReader.skipValue(); - } - } - jsonReader.endObject(); - } -} \ No newline at end of file diff --git a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodes.java b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodes.java deleted file mode 100644 index 6a463ddf..00000000 --- a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodes.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import com.google.gson.annotations.SerializedName; -import java.util.List; -import org.immutables.gson.Gson; -import org.immutables.value.Value; - -/** - * @see NamedNode - * @see PnfQuery - * @see AAI - * Custom queries - */ -@Value.Immutable -@Gson.TypeAdapters(fieldNamingStrategy = true) -public interface NamedNodes { - - @SerializedName(value = "results") - List results(); -} \ No newline at end of file diff --git a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/PnfQuery.java b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/PnfQuery.java deleted file mode 100644 index c6909f36..00000000 --- a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/queries/PnfQuery.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import static java.util.Arrays.asList; -import static org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpMethod.PUT; - -import com.google.gson.annotations.SerializedName; -import java.util.List; -import org.onap.dcaegen2.services.sdk.rest.services.aai.client.api.Request; -import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpMethod; - -/** - * @see NamedNodes - * @see AAI - * Custom queries - */ -public class PnfQuery implements Request { - - @SerializedName("start") - private final List startNodes; - - public PnfQuery(String pnfName) { - this.startNodes = asList("/nodes/pnfs/pnf/" + pnfName); - } - - @Override - public HttpMethod method() { - return PUT; - } - - @Override - public String uri() { - return "/query?format=resource&subgraph=star&nodesOnly=true"; - } -} \ No newline at end of file diff --git a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/utils/PrhModelAwareGsonBuilder.java b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/utils/PrhModelAwareGsonBuilder.java index e01711a7..d72cb9e9 100644 --- a/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/utils/PrhModelAwareGsonBuilder.java +++ b/prh-commons/src/main/java/org/onap/dcaegen2/services/prh/model/utils/PrhModelAwareGsonBuilder.java @@ -24,8 +24,6 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.TypeAdapterFactory; import java.util.ServiceLoader; -import org.onap.dcaegen2.services.prh.model.queries.NamedNode; -import org.onap.dcaegen2.services.prh.model.queries.NamedNodeAdapter; public final class PrhModelAwareGsonBuilder { @@ -35,7 +33,6 @@ public final class PrhModelAwareGsonBuilder { public static Gson createGson() { GsonBuilder gsonBuilder = new GsonBuilder(); TYPE_ADAPTER_FACTORIES.forEach(gsonBuilder::registerTypeAdapterFactory); - gsonBuilder.registerTypeAdapter(NamedNode.class, new NamedNodeAdapter()); return gsonBuilder.create(); } } diff --git a/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodesTest.java b/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodesTest.java deleted file mode 100644 index 0991d31f..00000000 --- a/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/NamedNodesTest.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import static java.util.Objects.requireNonNull; -import static org.assertj.core.api.Assertions.assertThat; - -import com.google.gson.Gson; -import java.io.InputStreamReader; -import org.junit.jupiter.api.Test; -import org.onap.dcaegen2.services.prh.model.utils.PrhModelAwareGsonBuilder; - -class NamedNodesTest { - - @Test - void shouldParseJsonToNamedNodes() { - // given - InputStreamReader inputStream = getJsonFromFile("pnf_query_response.json"); - Gson gson = PrhModelAwareGsonBuilder.createGson(); - - // when - NamedNodes nodes = gson.fromJson(inputStream, NamedNodes.class); - - // then - assertThat(nodes.results().size()).isEqualTo(3); - assertThat(nodes.results().get(0)) - .matches(node -> "pnf".equals(node.name())) - .matches(node -> node.properties().get("pnf-name").equals("foo")); - assertThat(nodes.results().get(1)) - .matches(node -> "logical-link".equals(node.name())) - .matches(node -> node.properties().get("link-name").equals("bar")); - assertThat(nodes.results().get(2)) - .matches(node -> "service-instance".equals(node.name())) - .matches(node -> node.properties().get("service-instance-name").equals("baz")); - } - - private InputStreamReader getJsonFromFile(String file) { - return new InputStreamReader(requireNonNull(getClass().getClassLoader().getResourceAsStream(file))); - } -} diff --git a/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/PnfQueryTest.java b/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/PnfQueryTest.java deleted file mode 100644 index 0ab0b17b..00000000 --- a/prh-commons/src/test/java/org/onap/dcaegen2/services/prh/model/queries/PnfQueryTest.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * PNF-REGISTRATION-HANDLER - * ================================================================================ - * Copyright (C) 2019 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.model.queries; - -import static java.util.Objects.requireNonNull; -import static java.util.stream.Collectors.joining; -import static org.assertj.core.api.Assertions.assertThat; - -import com.google.gson.Gson; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import org.junit.jupiter.api.Test; -import org.onap.dcaegen2.services.prh.model.utils.PrhModelAwareGsonBuilder; - -class PnfQueryTest { - - @Test - void shouldParseToCorrectJson() throws IOException { - // given - PnfQuery pnfQuery = new PnfQuery("foo"); - - // when - Gson gson = PrhModelAwareGsonBuilder.createGson(); - - // then - String json = gson.toJson(pnfQuery); - assertThat(json).isEqualToIgnoringWhitespace(getJsonFromFile("pnf_query_request.json")); - } - - private String getJsonFromFile(String file) throws IOException { - try (BufferedReader br = new BufferedReader(new InputStreamReader( - requireNonNull(getClass().getClassLoader().getResourceAsStream(file))))) { - return br.lines().collect(joining(System.lineSeparator())); - } - } -} \ No newline at end of file -- cgit 1.2.3-korg