Add alternative enum assigned name mapping
[mdsal.git] / binding / mdsal-binding-dom-codec / src / main / java / org / opendaylight / mdsal / binding / dom / codec / impl / IdentifiableItemCodec.java
index 0fdbceee688ce114d9d9443c44e2ba642d8452fb..57b45a2d7199e1efec7f590dbb64cfa710165eaa 100644 (file)
@@ -34,7 +34,7 @@ final class IdentifiableItemCodec implements Codec<NodeIdentifierWithPredicates,
     private final MethodHandle ctorInvoker;
     private final MethodHandle ctor;
 
-    public IdentifiableItemCodec(final ListSchemaNode schema, final Class<? extends Identifier<?>> keyClass,
+    IdentifiableItemCodec(final ListSchemaNode schema, final Class<? extends Identifier<?>> keyClass,
             final Class<?> identifiable, final Map<QName, ValueContext> keyValueContexts) {
         this.schema = schema;
         this.identifiable = identifiable;
@@ -42,7 +42,7 @@ final class IdentifiableItemCodec implements Codec<NodeIdentifierWithPredicates,
         try {
             ctor = MethodHandles.publicLookup().unreflectConstructor(getConstructor(keyClass));
         } catch (IllegalAccessException e) {
-            throw new IllegalArgumentException("Missing construct in class " + keyClass);
+            throw new IllegalArgumentException("Missing constructor in class " + keyClass, e);
         }
         final MethodHandle inv = MethodHandles.spreadInvoker(ctor.type(), 0);
         this.ctorInvoker = inv.asType(inv.type().changeReturnType(Identifier.class));
@@ -85,6 +85,7 @@ final class IdentifiableItemCodec implements Codec<NodeIdentifierWithPredicates,
     }
 
     @Override
+    @SuppressWarnings("checkstyle:illegalCatch")
     public IdentifiableItem<?, ?> deserialize(final NodeIdentifierWithPredicates input) {
         final Object[] bindingValues = new Object[keysInBindingOrder.size()];
         int offset = 0;