*/
package org.opendaylight.mdsal.binding.dom.codec.impl;
-import com.google.common.base.Preconditions;
+import static java.util.Objects.requireNonNull;
+
import com.google.common.base.Throwables;
import java.lang.invoke.MethodHandle;
import java.lang.invoke.MethodHandles;
import java.lang.invoke.MethodType;
import java.lang.reflect.Method;
-import org.opendaylight.yangtools.concepts.Codec;
+import org.opendaylight.yangtools.concepts.IllegalArgumentCodec;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static final Logger LOG = LoggerFactory.getLogger(UnionValueOptionContext.class);
private final Class<?> bindingType;
- private final Codec<Object,Object> codec;
+ private final IllegalArgumentCodec<Object,Object> codec;
private final MethodHandle getter;
private final MethodHandle unionCtor;
UnionValueOptionContext(final Class<?> unionType, final Class<?> valueType, final Method getter,
- final Codec<Object, Object> codec) {
- this.bindingType = Preconditions.checkNotNull(valueType);
- this.codec = Preconditions.checkNotNull(codec);
+ final IllegalArgumentCodec<Object, Object> codec) {
+ this.bindingType = requireNonNull(valueType);
+ this.codec = requireNonNull(codec);
try {
this.getter = MethodHandles.publicLookup().unreflect(getter).asType(OBJECT_TYPE);
return getter.invokeExact(input);
} catch (Throwable e) {
Throwables.throwIfUnchecked(e);
- throw new RuntimeException(e);
+ throw new IllegalStateException(e);
}
}