Use instanceof patterns in MutableOffsetMap 48/102048/4
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 10 Aug 2022 22:42:19 +0000 (00:42 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 16 Aug 2022 19:19:44 +0000 (21:19 +0200)
We can simplify the code a bit through patterns.

Change-Id: I9fecdeebfa308485bbb57081ced484d4426aa6ab
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
common/util/src/main/java/org/opendaylight/yangtools/util/MutableOffsetMap.java

index 9f755d405907cea3036223ceb675559b25123bee..4a020cca484b008126ecc90fb1add1de83656a0c 100644 (file)
@@ -165,15 +165,13 @@ public abstract class MutableOffsetMap<K, V> extends AbstractMap<K, V> implement
      * @throws NullPointerException if {@code map} is null
      */
     public static <K, V> @NonNull MutableOffsetMap<K, V> orderedCopyOf(final Map<K, V> map) {
-        if (map instanceof Ordered) {
-            return ((Ordered<K, V>) map).clone();
-        }
-        if (map instanceof ImmutableOffsetMap) {
-            final ImmutableOffsetMap<K, V> om = (ImmutableOffsetMap<K, V>) map;
+        if (map instanceof Ordered<K, V> ordered) {
+            return ordered.clone();
+        } else if (map instanceof ImmutableOffsetMap<K, V> om) {
             return new Ordered<>(om.offsets(), om.objects());
+        } else {
+            return new Ordered<>(map);
         }
-
-        return new Ordered<>(map);
     }
 
     /**
@@ -474,15 +472,11 @@ public abstract class MutableOffsetMap<K, V> extends AbstractMap<K, V> implement
             return false;
         }
 
-        if (obj instanceof ImmutableOffsetMap) {
-            final ImmutableOffsetMap<?, ?> om = (ImmutableOffsetMap<?, ?>) obj;
-
+        if (obj instanceof ImmutableOffsetMap<?, ?> om) {
             if (noNewKeys() && offsets.equals(om.offsets())) {
                 return Arrays.deepEquals(objects, om.objects());
             }
-        } else if (obj instanceof MutableOffsetMap) {
-            final MutableOffsetMap<?, ?> om = (MutableOffsetMap<?, ?>) obj;
-
+        } else if (obj instanceof MutableOffsetMap<?, ?> om) {
             if (offsets.equals(om.offsets)) {
                 return Arrays.deepEquals(objects, om.objects) && equalNewKeys(om);
             }