Support for defining attributes on a node_type
[sdc.git] / common-be / src / main / java / org / openecomp / sdc / be / datatypes / elements / MapAttributesDataDefinition.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2020, Nordix Foundation. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.be.datatypes.elements;
22
23
24 import com.fasterxml.jackson.annotation.JsonCreator;
25 import com.fasterxml.jackson.annotation.JsonValue;
26 import java.util.HashMap;
27 import java.util.Map;
28
29 public class MapAttributesDataDefinition extends MapDataDefinition<AttributeDataDefinition> {
30
31     private String parentName;
32
33     public MapAttributesDataDefinition(MapDataDefinition cdt, String parentName) {
34         super(cdt);
35         this.parentName = parentName;
36     }
37
38     @JsonCreator
39     public MapAttributesDataDefinition(Map<String, AttributeDataDefinition> mapToscaDataDefinition) {
40         super(mapToscaDataDefinition);
41     }
42
43     /**
44      * Copy Constructor
45      */
46     public MapAttributesDataDefinition(MapAttributesDataDefinition toBeDeepCopiedMapPropertiesDataDefinition) {
47         this.parentName = toBeDeepCopiedMapPropertiesDataDefinition.parentName;
48         this.toscaPresentation = toBeDeepCopiedMapPropertiesDataDefinition.toscaPresentation == null ? null : new HashMap(toBeDeepCopiedMapPropertiesDataDefinition.toscaPresentation);
49         this.mapToscaDataDefinition = toBeDeepCopiedMapPropertiesDataDefinition.mapToscaDataDefinition == null ? null : new HashMap(toBeDeepCopiedMapPropertiesDataDefinition.mapToscaDataDefinition);
50     }
51
52     public MapAttributesDataDefinition() {
53         super();
54
55     }
56
57     @JsonValue
58     @Override
59     public Map<String, AttributeDataDefinition> getMapToscaDataDefinition() {
60         return mapToscaDataDefinition;
61     }
62
63
64     public void setMapToscaDataDefinition(Map<String, AttributeDataDefinition> mapToscaDataDefinition) {
65         this.mapToscaDataDefinition = mapToscaDataDefinition;
66     }
67
68     public String getParentName() {
69         return parentName;
70     }
71
72     public void setParentName(String parentName) {
73         this.parentName = parentName;
74     }
75
76
77 }