[sdc] docker file fix for cassandra
[sdc.git] / openecomp-be / lib / openecomp-tosca-lib / src / main / java / org / openecomp / sdc / tosca / datatypes / model / Constraint.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. 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.tosca.datatypes.model;
22
23 import java.util.ArrayList;
24 import java.util.List;
25
26 public class Constraint {
27   private Object equal;
28   private Object greater_or_equal;
29   private Object greater_than;
30   private Object less_than;
31   private Object less_or_equal;
32   private Object[] in_range;
33   private List<Object> valid_values;
34   private Integer length;
35   private Integer min_length;
36   private Integer max_length;
37   private Object pattern;
38
39   public Constraint() {
40   }
41
42   public Object getGreater_or_equal() {
43     return greater_or_equal;
44   }
45
46   public void setGreater_or_equal(Object greaterOrEqual) {
47     this.greater_or_equal = greaterOrEqual;
48   }
49
50   public Object getEqual() {
51     return equal;
52   }
53
54   public void setEqual(Object equal) {
55     this.equal = equal;
56   }
57
58   public Object getGreater_than() {
59     return greater_than;
60   }
61
62   public void setGreater_than(Object greaterThan) {
63     this.greater_than = greaterThan;
64   }
65
66   public Object getLess_than() {
67     return less_than;
68   }
69
70   public void setLess_than(Object lessThan) {
71     this.less_than = lessThan;
72   }
73
74   public Object getLess_or_equal() {
75     return less_or_equal;
76   }
77
78   public void setLess_or_equal(Object lessOrEqual) {
79     this.less_or_equal = lessOrEqual;
80   }
81
82   public Object[] getIn_range() {
83     return in_range;
84   }
85
86   /**
87    * Sets in range.
88    *
89    * @param inRange the in range
90    */
91   public void setIn_range(Object[] inRange) {
92     this.in_range = new Object[2];
93     this.in_range[0] = inRange[0];
94     this.in_range[1] = inRange[1];
95   }
96
97   public List<Object> getValid_values() {
98     return valid_values;
99   }
100
101   public void setValid_values(List<Object> validValues) {
102     this.valid_values = validValues;
103   }
104
105   /**
106    * Add valid value.
107    *
108    * @param validValue the valid value
109    */
110   public void addValidValue(Object validValue) {
111     if (this.valid_values == null) {
112       this.valid_values = new ArrayList<>();
113     }
114     valid_values.add(validValue);
115   }
116
117   public Integer getLength() {
118     return length;
119   }
120
121   public void setLength(Integer length) {
122     this.length = length;
123   }
124
125   public Integer getMin_length() {
126     return min_length;
127   }
128
129   public void setMin_length(Integer minLength) {
130     this.min_length = minLength;
131   }
132
133   public Integer getMax_length() {
134     return max_length;
135   }
136
137   public void setMax_length(Integer maxLength) {
138     this.max_length = maxLength;
139   }
140
141   public Object getPattern() {
142     return pattern;
143   }
144
145   public void setPattern(Object pattern) {
146     this.pattern = pattern;
147   }
148
149   @Override
150   public Constraint clone() {
151     Constraint constraint = new Constraint();
152     constraint.setEqual(this.getEqual());
153     constraint.setGreater_or_equal(this.getGreater_or_equal());
154     constraint.setGreater_than(this.getGreater_than());
155     cloneInRange(constraint);
156     constraint.setLength(this.getLength());
157     constraint.setLess_or_equal(this.getLess_or_equal());
158     constraint.setLess_than(this.getLess_than());
159     constraint.setMax_length(this.getMax_length());
160     constraint.setMin_length(this.getMin_length());
161     constraint.setPattern(this.getPattern());
162     cloneValidValues(constraint);
163
164     return constraint;
165   }
166
167   private void cloneInRange(Constraint constraint) {
168     if (this.getIn_range() != null) {
169       constraint.setIn_range(new Object[]{this.getIn_range()[0], this.getIn_range()[1]});
170     }
171   }
172
173   private void cloneValidValues(Constraint constraint) {
174     if (this.getValid_values() != null) {
175       constraint.setValid_values(new ArrayList<>());
176       for (Object entry : this.getValid_values()) {
177         constraint.getValid_values().add(entry);
178       }
179     }
180   }
181 }