2 * ============LICENSE_START=======================================================
3 * ONAP : ccsdk features
4 * ================================================================================
5 * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.ccsdk.features.sdnr.wt.dataprovider.setup.data;
24 import org.onap.ccsdk.features.sdnr.wt.common.database.data.AliasesEntry;
25 import org.onap.ccsdk.features.sdnr.wt.common.database.data.EsVersion;
29 EL_ALTO("el alto", "_v1", new EsVersion(2, 2, 0), new EsVersion(2, 2, 0)),
30 FRANKFURT_R1("frankfurt-R1", "-v2", new EsVersion(6, 4, 3), new EsVersion(6, 8, 6)),
31 FRANKFURT_R2("frankfurt-R2", "-v3", new EsVersion(7, 0, 1), new EsVersion(7, 6, 1)),
32 GUILIN_R1("guilin-R1", "-v4", new EsVersion(7,1,1), new EsVersion(7,6,1)),
33 HONOLULU_R1("honolulu-R1", "-v5", new EsVersion(7,1,1), new EsVersion(8,0,0), false);
35 public static final Release CURRENT_RELEASE = Release.HONOLULU_R1;
37 private final String value;
38 private final String dbSuffix;
39 private final EsVersion minDbVersion;
40 private final EsVersion maxDbVersion;
41 private final boolean includeEndVersion;
43 private Release(String s, String dbsuffix, EsVersion minDbVersion, EsVersion maxDbVersion) {
44 this(s, dbsuffix, minDbVersion, maxDbVersion, true);
46 private Release(String s, String dbsuffix, EsVersion minDbVersion, EsVersion maxDbVersion, boolean includeEnd) {
48 this.dbSuffix = dbsuffix;
49 this.minDbVersion = minDbVersion;
50 this.maxDbVersion = maxDbVersion;
51 this.includeEndVersion = includeEnd;
55 public String toString() {
59 public String getValue() {
63 public static Release getValueOf(String s) throws Exception {
64 //s = s.toLowerCase();
65 for (Release p : Release.values()) {
66 if (p.value.equals(s)) {
70 throw new Exception("value not found");
73 public static Release getValueBySuffix(String suffix) {
74 if (!suffix.startsWith("-")) {
75 suffix = "-" + suffix;
77 for (Release r : Release.values()) {
78 if (r.dbSuffix.equals(suffix))
84 public static String getDbSuffix(AliasesEntry entry) throws Exception {
85 ComponentName comp = ComponentName.getValueOf(entry.getAlias());
87 return entry.getIndex().substring(entry.getAlias().length());
92 public String getDBSuffix() {
96 public EsVersion getDBVersion() {
97 return this.minDbVersion;
100 public boolean isDbInRange(EsVersion dbVersion) {
101 if(this.includeEndVersion) {
102 return dbVersion.isNewerOrEqualThan(minDbVersion) && dbVersion.isOlderOrEqualThan(maxDbVersion);
105 return dbVersion.isNewerOrEqualThan(minDbVersion) && dbVersion.isOlderThan(maxDbVersion);