From 411e3e86f40b590f130f3379af0ca3df047c99ca Mon Sep 17 00:00:00 2001 From: "Leigh, Phillip (pl876u)" Date: Mon, 25 Feb 2019 15:51:17 -0500 Subject: Add Logical Link to Data Model root level Issue-ID: LOG-767 Change-Id: Ia16c3ec64f203f482b177c05bf154153a90bdd65 Signed-off-by: Leigh, Phillip (pl876u) --- .../onap/pomba/common/datatypes/ModelContext.java | 218 +++++++++++---------- .../org/onap/pomba/common/datatypes/Service.java | 12 -- src/main/resources/commonModel.html | 30 +++ .../pomba/common/datatypes/ModelContextTests.java | 172 ++++++++-------- 4 files changed, 237 insertions(+), 195 deletions(-) diff --git a/src/main/java/org/onap/pomba/common/datatypes/ModelContext.java b/src/main/java/org/onap/pomba/common/datatypes/ModelContext.java index 0564b2f..bcea5c7 100644 --- a/src/main/java/org/onap/pomba/common/datatypes/ModelContext.java +++ b/src/main/java/org/onap/pomba/common/datatypes/ModelContext.java @@ -1,102 +1,116 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2018 Amdocs - * ============================================================================ - * 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.pomba.common.datatypes; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -import java.util.ArrayList; -import java.util.List; - -@ApiModel(value="ModelContext") -public class ModelContext { - - @Expose - @SerializedName("service") - private Service service; - @Expose - @SerializedName("dataQuality") - private DataQuality dataQuality = DataQuality.ok(); - @Expose - @SerializedName("attributeList") - private List attributeList = new ArrayList<>(); - @Expose - @SerializedName("vnfList") - private List vnfList = new ArrayList<>(); - @Expose - @SerializedName("pnfList") - private List pnfList = new ArrayList<>(); - @Expose - @SerializedName("networkList") - private List networkList = new ArrayList<>(); - - @ApiModelProperty(value = "Service object of the model") - public Service getService() { - return service; - } - public void setService(Service service) { - this.service = service; - } - @ApiModelProperty(value = "Data Quality indicator") - public DataQuality getDataQuality() { - return dataQuality; - } - public void setDataQuality(DataQuality dataQuality) { - this.dataQuality = dataQuality; - } - @ApiModelProperty(value = "List of attributes") - public List getAttributes() { - return attributeList; - } - public void setAttributes(List attributeList) { - this.attributeList = attributeList; - } - public void addAttribute(Attribute attribute) { - this.attributeList.add(attribute); - } - @ApiModelProperty(value = "List of VNF associated with the service instance") - public List getVnfs() { - return vnfList; - } - public void setVnfs(List vfList) { - this.vnfList = vfList; - } - public void addVf(VNF vf) { - this.vnfList.add(vf); - } - @ApiModelProperty(value = "List of PNF associated with the service instance") - public List getPnfs() { - return pnfList; - } - public void setPnfs(List pnfList) { - this.pnfList = pnfList; - } - public void addPnf(PNF pnf) { - this.pnfList.add(pnf); - } - @ApiModelProperty(value = "List of networks associated with the service instance") - public List getNetworkList() { return networkList; } - public void setNetworkList(List networkList) { this.networkList = networkList; } - public void addNetwork(Network network) { - this.networkList.add(network); - } - -} +/* + * ============LICENSE_START=================================================== + * Copyright (c) 2018 Amdocs + * ============================================================================ + * 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.pomba.common.datatypes; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.util.ArrayList; +import java.util.List; + +@ApiModel(value="ModelContext") +public class ModelContext { + + @Expose + @SerializedName("service") + private Service service; + @Expose + @SerializedName("dataQuality") + private DataQuality dataQuality = DataQuality.ok(); + @Expose + @SerializedName("attributeList") + private List attributeList = new ArrayList<>(); + @Expose + @SerializedName("vnfList") + private List vnfList = new ArrayList<>(); + @Expose + @SerializedName("pnfList") + private List pnfList = new ArrayList<>(); + @Expose + @SerializedName("networkList") + private List networkList = new ArrayList<>(); + @Expose + @SerializedName("logicalLinkList") + private List logicalLinkList = new ArrayList<>(); + + + @ApiModelProperty(value = "Service object of the model") + public Service getService() { + return service; + } + public void setService(Service service) { + this.service = service; + } + @ApiModelProperty(value = "Data Quality indicator") + public DataQuality getDataQuality() { + return dataQuality; + } + public void setDataQuality(DataQuality dataQuality) { + this.dataQuality = dataQuality; + } + @ApiModelProperty(value = "List of attributes") + public List getAttributes() { + return attributeList; + } + public void setAttributes(List attributeList) { + this.attributeList = attributeList; + } + public void addAttribute(Attribute attribute) { + this.attributeList.add(attribute); + } + @ApiModelProperty(value = "List of VNF associated with the service instance") + public List getVnfs() { + return vnfList; + } + public void setVnfs(List vfList) { + this.vnfList = vfList; + } + public void addVf(VNF vf) { + this.vnfList.add(vf); + } + @ApiModelProperty(value = "List of PNF associated with the service instance") + public List getPnfs() { + return pnfList; + } + public void setPnfs(List pnfList) { + this.pnfList = pnfList; + } + public void addPnf(PNF pnf) { + this.pnfList.add(pnf); + } + + @ApiModelProperty(value = "List of Logical-link associated with the service instance") + public List getLogicalLinkList() { + return logicalLinkList; + } + + public void setLogicalLinkList(List logicalLinkList) { + this.logicalLinkList = logicalLinkList; + } + + @ApiModelProperty(value = "List of networks associated with the service instance") + public List getNetworkList() { return networkList; } + public void setNetworkList(List networkList) { this.networkList = networkList; } + public void addNetwork(Network network) { + this.networkList.add(network); + } + +} diff --git a/src/main/java/org/onap/pomba/common/datatypes/Service.java b/src/main/java/org/onap/pomba/common/datatypes/Service.java index 8a5702b..076f6e3 100644 --- a/src/main/java/org/onap/pomba/common/datatypes/Service.java +++ b/src/main/java/org/onap/pomba/common/datatypes/Service.java @@ -43,10 +43,6 @@ public class Service { @Expose @SerializedName("attributeList") private List attributeList = new ArrayList<>(); - @Expose - @SerializedName("logicalLinkList") - private List logicalLinkList = new ArrayList<>(); - public String getName() { return name; @@ -82,12 +78,4 @@ public class Service { public void setModelInvariantUUID(String modelInvariantUUID) { this.modelInvariantUUID = modelInvariantUUID; } - - public List getLogicalLinkList() { - return logicalLinkList; - } - - public void setLogicalLinkList(List logicalLinkList) { - this.logicalLinkList = logicalLinkList; - } } diff --git a/src/main/resources/commonModel.html b/src/main/resources/commonModel.html index 2654b4c..1e664e0 100644 --- a/src/main/resources/commonModel.html +++ b/src/main/resources/commonModel.html @@ -336,6 +336,21 @@ POMBA Audit Context Builder API + + logicalLinkList + + + + array[LogicalLink] + + + + + optional + - + + + attributes @@ -498,6 +513,21 @@ POMBA Audit Context Builder API + + logicalLinkList + + + + array[LogicalLink] + + + + + optional + - + + + attributes diff --git a/src/test/java/org/onap/pomba/common/datatypes/ModelContextTests.java b/src/test/java/org/onap/pomba/common/datatypes/ModelContextTests.java index b028018..d7c475a 100644 --- a/src/test/java/org/onap/pomba/common/datatypes/ModelContextTests.java +++ b/src/test/java/org/onap/pomba/common/datatypes/ModelContextTests.java @@ -1,81 +1,91 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2018 Amdocs - * ============================================================================ - * 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.pomba.common.datatypes; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.Test; -import org.onap.pomba.common.datatypes.Attribute.Name; -import org.onap.pomba.common.datatypes.DataQuality.Status; - -public class ModelContextTests { - @Test - public void testModelContext() { - ModelContext modelContext = new ModelContext(); - DataQuality dataQuality = new DataQuality(); - dataQuality.setStatus(Status.error); - dataQuality.setErrorText("Test"); - modelContext.setDataQuality(dataQuality); - assertTrue("ModelContext data quality status doesn't match", modelContext.getDataQuality().getStatus().equals(Status.error)); - assertTrue("ModelContext data quality error text doesn't match", modelContext.getDataQuality().getErrorText().equals("Test")); - Attribute attribute = new Attribute(); - attribute.setName(Name.hostName); - modelContext.addAttribute(attribute); - assertTrue("ModelContext attribute name doesn't match", modelContext.getAttributes().get(0).getName().equals(Name.hostName)); - List attributeList = modelContext.getAttributes(); - modelContext.setAttributes(attributeList); - assertEquals(modelContext.getAttributes().size(), 1); - } - - @Test - public void testSetService() { - ModelContext modelContext = new ModelContext(); - Service aService = new Service(); - aService.setName("Service Name"); - modelContext.setService(aService); - assertTrue("ModelContext service name doesn't match", - modelContext.getService().getName().equals("Service Name")); - } - - @Test - public void testSetVf() { - ModelContext modelContext = new ModelContext(); - List vfList = new ArrayList(); - VNF aVF = new VNF(); - aVF.setName("VF name"); - vfList.add(aVF); - modelContext.setVnfs(vfList); - assertEquals(modelContext.getVnfs().size(), 1); - } - - @Test - public void testAddVf() { - ModelContext modelContext = new ModelContext(); - VNF aVF = new VNF(); - aVF.setName("VF name"); - modelContext.addVf(aVF); - assertEquals(modelContext.getVnfs().size(), 1); - assertTrue("ModelContext VF name doesn't match", modelContext.getVnfs().get(0).getName().equals("VF name")); - } - -} +/* + * ============LICENSE_START=================================================== + * Copyright (c) 2018 Amdocs + * ============================================================================ + * 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.pomba.common.datatypes; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.Test; +import org.onap.pomba.common.datatypes.Attribute.Name; +import org.onap.pomba.common.datatypes.DataQuality.Status; + +public class ModelContextTests { + @Test + public void testModelContext() { + ModelContext modelContext = new ModelContext(); + DataQuality dataQuality = new DataQuality(); + dataQuality.setStatus(Status.error); + dataQuality.setErrorText("Test"); + modelContext.setDataQuality(dataQuality); + assertTrue("ModelContext data quality status doesn't match", modelContext.getDataQuality().getStatus().equals(Status.error)); + assertTrue("ModelContext data quality error text doesn't match", modelContext.getDataQuality().getErrorText().equals("Test")); + Attribute attribute = new Attribute(); + attribute.setName(Name.hostName); + modelContext.addAttribute(attribute); + assertTrue("ModelContext attribute name doesn't match", modelContext.getAttributes().get(0).getName().equals(Name.hostName)); + List attributeList = modelContext.getAttributes(); + modelContext.setAttributes(attributeList); + assertEquals(modelContext.getAttributes().size(), 1); + } + + @Test + public void testSetService() { + ModelContext modelContext = new ModelContext(); + Service aService = new Service(); + aService.setName("Service Name"); + modelContext.setService(aService); + assertTrue("ModelContext service name doesn't match", + modelContext.getService().getName().equals("Service Name")); + } + + @Test + public void testSetVf() { + ModelContext modelContext = new ModelContext(); + List vfList = new ArrayList(); + VNF aVF = new VNF(); + aVF.setName("VF name"); + vfList.add(aVF); + modelContext.setVnfs(vfList); + assertEquals(modelContext.getVnfs().size(), 1); + } + + @Test + public void testAddVf() { + ModelContext modelContext = new ModelContext(); + VNF aVF = new VNF(); + aVF.setName("VF name"); + modelContext.addVf(aVF); + assertEquals(modelContext.getVnfs().size(), 1); + assertTrue("ModelContext VF name doesn't match", modelContext.getVnfs().get(0).getName().equals("VF name")); + } + + @Test + public void testLogicalLink() { + ModelContext modelContext = new ModelContext(); + List logicalLinkList = new ArrayList(); + LogicalLink aLogicalLink = new LogicalLink(); + aLogicalLink.setName("Logical-Link name"); + logicalLinkList.add(aLogicalLink); + modelContext.setLogicalLinkList(logicalLinkList); + assertEquals(modelContext.getLogicalLinkList().size(), 1); + } +} -- cgit 1.2.3-korg