Use a switch expression to get validator 87/104387/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 14 Feb 2023 09:45:28 +0000 (10:45 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 14 Feb 2023 11:30:09 +0000 (12:30 +0100)
We are looking at an enumeration, hence we can use switch expression
exhaustiveness to eliminate an ISE.

Change-Id: Iebfd1b7f8d5ea19a5c7508c5f1a4f3d69074ab84
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 444398f5b137cb9f8f12cd451f7e3059260e8611)

parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java

index d6903c5d6e66e2516a600191a84c465706342e0f..b38119df7fffd9af2332a93ef7285fb312051057 100644 (file)
@@ -215,19 +215,12 @@ abstract class AbstractDeviateStatementSupport
     }
 
     protected SubstatementValidator getSubstatementValidatorForDeviate(final DeviateKind deviateKind) {
-        switch (deviateKind) {
-            case NOT_SUPPORTED:
-                return DEVIATE_NOT_SUPPORTED_SUBSTATEMENT_VALIDATOR;
-            case ADD:
-                return DEVIATE_ADD_SUBSTATEMENT_VALIDATOR;
-            case REPLACE:
-                return DEVIATE_REPLACE_SUBSTATEMENT_VALIDATOR;
-            case DELETE:
-                return DEVIATE_DELETE_SUBSTATEMENT_VALIDATOR;
-            default:
-                throw new IllegalStateException(String.format(
-                        "Substatement validator for deviate %s has not been defined.", deviateKind));
-        }
+        return switch (deviateKind) {
+            case NOT_SUPPORTED -> DEVIATE_NOT_SUPPORTED_SUBSTATEMENT_VALIDATOR;
+            case ADD -> DEVIATE_ADD_SUBSTATEMENT_VALIDATOR;
+            case REPLACE -> DEVIATE_REPLACE_SUBSTATEMENT_VALIDATOR;
+            case DELETE -> DEVIATE_DELETE_SUBSTATEMENT_VALIDATOR;
+        };
     }
 
     private static boolean isDeviationSupported(