2 * ============LICENSE_START========================================================================
3 * ONAP : ccsdk feature sdnr wt
4 * =================================================================================================
5 * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6 * =================================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8 * in compliance with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software distributed under the License
13 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14 * or implied. See the License for the specific language governing permissions and limitations under
16 * ============LICENSE_END==========================================================================
22 package org.onap.ccsdk.features.sdnr.wt.devicemanager.impl.util;
25 import org.eclipse.jdt.annotation.Nullable;
26 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.SeverityType;
28 public enum InternalSeverity {
30 NonAlarmed, Warning, Minor, Major, Critical;
32 public boolean isNoAlarmIndication() {
33 return this == NonAlarmed;
36 public String getValueAsString() {
41 public String toString() {
45 public String toNetconfString() {
58 return "not-specified";
61 public SeverityType toDataProviderSeverityType() {
64 return SeverityType.NonAlarmed;
66 return SeverityType.Warning;
68 return SeverityType.Minor;
70 return SeverityType.Major;
72 return SeverityType.Critical;
74 return null; //Should never happen
78 // * convert ONF 1.2 Severity
79 // * @param severity as input
80 // * @return String with related output
82 public static InternalSeverity valueOf(
83 org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType severity) {
86 return InternalSeverity.NonAlarmed;
88 return InternalSeverity.Warning;
90 return InternalSeverity.Minor;
92 return InternalSeverity.Major;
94 return InternalSeverity.Critical;
100 public static org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType toYang(
101 InternalSeverity severity) {
104 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.NonAlarmed;
106 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Warning;
108 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Minor;
110 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Major;
112 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Critical;
116 public static org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType toYang(
117 @Nullable SeverityType severity) {
120 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.NonAlarmed;
122 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Warning;
124 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Minor;
126 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Major;
128 return org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.devicemanager.rev190109.SeverityType.Critical;
134 // * convert ONF 1.2.1.1 Severity
135 // * @param severity as input
136 // * @return String with related output
138 // public static InternalSeverity valueOf(org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.SeverityType severity ) {
139 // switch( severity ) {
141 // return InternalSeverity.NonAlarmed;
143 // return InternalSeverity.Warning;
145 // return InternalSeverity.Minor;
147 // return InternalSeverity.Major;
149 // return InternalSeverity.Critical;
155 // * convert ONF 1.2.1.1p Severity
156 // * @param severity as input
157 // * @return String with related output
159 // public static InternalSeverity valueOf(org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev181010.SeverityType severity ) {
160 // switch( severity ) {
162 // return InternalSeverity.NonAlarmed;
164 // return InternalSeverity.Warning;
166 // return InternalSeverity.Minor;
168 // return InternalSeverity.Major;
170 // return InternalSeverity.Critical;
178 * convert a text string into Severity
180 * @param severityString with textes: warning minor major critical non[-]alarmed. (Capital or lowercase)
181 * @return related enum. Unknown oe illegal are converted to NonAlarm
183 public static @Nullable InternalSeverity valueOfString(String severityString) {
185 switch (severityString.toLowerCase().trim()) {
187 return InternalSeverity.Warning;
189 return InternalSeverity.Minor;
191 return InternalSeverity.Major;
193 return InternalSeverity.Critical;
195 return InternalSeverity.NonAlarmed;
200 * Convert to InternalSeverity
202 * @param severity to be converted
203 * @return InternalSeverity, null converted to NonAlarmed
205 public static InternalSeverity valueOf(@org.eclipse.jdt.annotation.Nullable SeverityType severity) {
206 if (severity != null) {
209 return InternalSeverity.NonAlarmed;
211 return InternalSeverity.Warning;
213 return InternalSeverity.Minor;
215 return InternalSeverity.Major;
217 return InternalSeverity.Critical;
220 return InternalSeverity.NonAlarmed;