1 /*******************************************************************************
3 * Copyright © 2019 AT&T Intellectual Property.
5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
6 * in compliance with the License. You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software distributed under the License
11 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12 * or implied. See the License for the specific language governing permissions and limitations under
16 * Unless otherwise specified, all documentation contained herein is licensed under the Creative
17 * Commons License, Attribution 4.0 Intl. (the "License"); you may not use this documentation except
18 * in compliance with the License. You may obtain a copy of the License at
20 * https://creativecommons.org/licenses/by/4.0/
22 * Unless required by applicable law or agreed to in writing, documentation distributed under the
23 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
24 * express or implied. See the License for the specific language governing permissions and
25 * limitations under the License.
26 ******************************************************************************/
28 package org.onap.optf.cmso.optimizer.clients.topology.models;
30 import com.att.eelf.configuration.EELFLogger;
31 import com.att.eelf.configuration.EELFManager;
32 import com.fasterxml.jackson.core.JsonProcessingException;
33 import com.fasterxml.jackson.databind.ObjectMapper;
34 import io.swagger.annotations.ApiModel;
35 import io.swagger.annotations.ApiModelProperty;
36 import java.io.Serializable;
37 import java.util.ArrayList;
38 import java.util.List;
39 import org.onap.optf.cmso.optimizer.service.rs.models.NameValue;
41 @ApiModel(value = "Topology Related Element", description = "Element Information returned from TopologyRequuest.")
42 public class ReferencedElementInfo implements Serializable {
43 private static final long serialVersionUID = 1L;
44 private static EELFLogger log = EELFManager.getInstance().getLogger(ReferencedElementInfo.class);
46 @ApiModelProperty(value = "Element identifier")
47 private String elementId;
49 @ApiModelProperty(value = "Location information for the element.")
50 private ElementLocation elementLocation;
52 @ApiModelProperty(value = "Related elements only. Element ids of the element(s) ")
53 private List<String> referencingElements;
55 @ApiModelProperty(value = "Implementation specific element data.")
56 public List<NameValue> elementData = new ArrayList<>();
58 public String getElementId() {
62 public void setElementId(String elementId) {
63 this.elementId = elementId;
66 public ElementLocation getElementLocation() {
67 return elementLocation;
70 public void setElementLocation(ElementLocation elementLocation) {
71 this.elementLocation = elementLocation;
75 public List<String> getRelatedElements() {
76 return referencingElements;
79 public void setRelatedElements(List<String> relatedElements) {
80 this.referencingElements = relatedElements;
83 public List<NameValue> getElementData() {
87 public void setElementData(List<NameValue> elementData) {
88 this.elementData = elementData;
92 public String toString() {
93 ObjectMapper mapper = new ObjectMapper();
95 return mapper.writeValueAsString(this);
96 } catch (JsonProcessingException e) {
97 log.debug("Error in toString()", e);