From e887a0c6c415a00888e17d1bbfe4acf548a2cfa5 Mon Sep 17 00:00:00 2001 From: Jim Hahn Date: Fri, 17 Apr 2020 15:09:21 -0400 Subject: Add PNF support to new CDS actor Made the following updates: - added new A&AI get-PNF Operation by refactoring AaiGetOperation, separating out Tenant and PNF operations - added PNF support to the CDS actor - added logging to the CDS Handler - added get-pnf to the A&AI simulator Issue-ID: POLICY-2505 Change-Id: Iff140e7c864f762790d8e2ecaba62c161c859e6e Signed-off-by: Jim Hahn --- .../onap/policy/simulators/AaiSimulatorJaxRs.java | 23 ++++++++++++++++++++-- .../policy/simulators/aai/AaiGetPnfResponse.json | 12 +++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiGetPnfResponse.json (limited to 'models-interactions/model-simulators/src/main') diff --git a/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/AaiSimulatorJaxRs.java b/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/AaiSimulatorJaxRs.java index 8c96ee533..8a3d6a803 100644 --- a/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/AaiSimulatorJaxRs.java +++ b/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/AaiSimulatorJaxRs.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * simulators * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017-2018, 2020 AT&T Intellectual Property. All rights reserved. * Modifications Copyright (C) 2019 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); @@ -51,7 +51,7 @@ public class AaiSimulatorJaxRs { @Path("/v8/network/generic-vnfs/generic-vnf/{vnfId}") @Consumes(MediaType.APPLICATION_JSON) @Produces("application/json") - public String aaiGetQuery(@PathParam("vnfID") final String vnfId) { + public String aaiGetQuery(@PathParam("vnfId") final String vnfId) { return "{\"relationship-list\": {\"relationship\":[{\"related-to-property\": [{\"property-key\": " + "\"service-instance.service-instance-name\"}]},{\"related-to-property\": [ {\"property-key\": " + "\"vserver.vserver-name\",\"property-value\": \"USUCP0PCOIL0110UJZZ01-vsrx\" }]} ]}}"; @@ -95,6 +95,25 @@ public class AaiSimulatorJaxRs { StandardCharsets.UTF_8); } + /** + * A&AI get PNF query. + * + * @return the result + * @throws IOException if a response file cannot be read + */ + @GET + @Path("/v16/network/pnfs/pnf/{pnfName}") + @Consumes(MediaType.APPLICATION_JSON) + @Produces("application/json") + public String aaiGetPnfQuery(@PathParam("pnfName") final String pnfName) throws IOException { + if (GETFAIL.equals(pnfName)) { + throw new IllegalArgumentException("query failed, as requested"); + } + + return IOUtils.toString(getClass().getResource("aai/AaiGetPnfResponse.json"), + StandardCharsets.UTF_8); + } + /** * Get by VNF name. * diff --git a/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiGetPnfResponse.json b/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiGetPnfResponse.json new file mode 100644 index 000000000..ce8eb75a7 --- /dev/null +++ b/models-interactions/model-simulators/src/main/resources/org/onap/policy/simulators/aai/AaiGetPnfResponse.json @@ -0,0 +1,12 @@ +{ + "equip-vendor":"Vendor-A", + "ipaddress-v4-oam":"10.10.10.10", + "in-maint":false, + "pnf-ipv4-address":"3.3.3.3", + "resource-version":"1570746989505", + "nf-role":"ToR DC101", + "equip-type":"Router", + "equip-model":"model-123456", + "frame-id":"3", + "pnf-name":"demo-pnf" +} -- cgit 1.2.3-korg