Migrate mdsal-binding-dom-adapter to JDT annotations 54/76754/16
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 8 Oct 2018 13:29:40 +0000 (15:29 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 9 Oct 2018 08:12:10 +0000 (10:12 +0200)
This removes the use of javax.annotation nullable annotations
to remove import-package.

Change-Id: I220ed55636d3a4a4bc3e4c39a6169541f89cf283
JIRA: MDSAL-373
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
18 files changed:
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/AdapterLoader.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMCursorAwareWriteTransactionAdapter.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMNotificationListenerAdapter.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcImplementationAdapter.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingToNormalizedNodeCodec.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/ContextReferenceExtractor.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LazyDOMRpcResultFuture.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/invoke/AbstractMappedRpcInvoker.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/invoke/NotificationListenerInvoker.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/invoke/RpcServiceInvoker.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMAdapterLoaderTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMTransactionChainAdapterTest.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/invoke/AbstractMappedRpcInvokerTest.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/AbstractBigRangeGenerator.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/AbstractPrimitiveRangeGenerator.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/AbstractRangeGenerator.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/LengthGenerator.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/TypeUtils.java

index ef126d7ff49a2e15599d39d74512fa534dac94f6..6265f9a52cfc34bccda1e622ebf35873f44c7b9a 100644 (file)
@@ -9,8 +9,8 @@ package org.opendaylight.mdsal.binding.dom.adapter;
 
 import com.google.common.cache.CacheLoader;
 import java.util.Optional;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 
 public abstract class AdapterLoader<T, D> extends CacheLoader<Class<? extends T>, Optional<T>> {
 
@@ -29,9 +29,7 @@ public abstract class AdapterLoader<T, D> extends CacheLoader<Class<? extends T>
         return Optional.of(builder.build());
     }
 
-    @Nullable
-    protected abstract D getDelegate(Class<? extends D> reqDeleg);
+    protected abstract @Nullable D getDelegate(Class<? extends D> reqDeleg);
 
-    @Nonnull
-    protected abstract AdapterBuilder<? extends T, D> createBuilder(Class<? extends T> key);
+    protected abstract @NonNull AdapterBuilder<? extends T, D> createBuilder(Class<? extends T> key);
 }
index 22ffdbff9211a9a1e0160748dfe99fadb88332c8..59ddbdc00cc9fe795cb954b283948cdad71aeb47 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.mdsal.binding.dom.adapter;
 
 import com.google.common.util.concurrent.FluentFuture;
-import javax.annotation.Nullable;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.api.CursorAwareWriteTransaction;
 import org.opendaylight.mdsal.binding.api.DataTreeIdentifier;
@@ -27,7 +26,6 @@ public class BindingDOMCursorAwareWriteTransactionAdapter<T extends DOMDataTreeC
         super(codec, delegate);
     }
 
-    @Nullable
     @Override
     public <P extends DataObject> DataTreeWriteCursor createCursor(final DataTreeIdentifier<P> path) {
         final YangInstanceIdentifier yPath = getCodec().toNormalized(path.getRootIdentifier());
index 1ef252843f42d4c548358cb5fc6715e4edf25366..b04c1990df3c40ed7d53dcfeef141ae6b32c5757 100644 (file)
@@ -14,7 +14,6 @@ import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
-import javax.annotation.Nonnull;
 import org.opendaylight.mdsal.binding.dom.adapter.invoke.NotificationListenerInvoker;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
@@ -39,7 +38,7 @@ class BindingDOMNotificationListenerAdapter implements DOMNotificationListener {
     }
 
     @Override
-    public void onNotification(@Nonnull final DOMNotification notification) {
+    public void onNotification(final DOMNotification notification) {
         final Notification baNotification = deserialize(notification);
         final QName notificationQName = notification.getType().getLastComponent();
         getInvoker(notification.getType()).invokeNotification(delegate, notificationQName, baNotification);
index e421908cf111267413e079f39127200c8456fbcd..8167d36c643a9c5da8c042d9baa01e11d33d074a 100644 (file)
@@ -17,7 +17,6 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.concurrent.ExecutionException;
-import javax.annotation.Nonnull;
 import org.opendaylight.mdsal.binding.dom.adapter.invoke.RpcServiceInvoker;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
@@ -65,14 +64,12 @@ public class BindingDOMRpcImplementationAdapter implements DOMRpcImplementation
         inputQname = YangConstants.operationInputQName(BindingReflections.getQNameModule(type)).intern();
     }
 
-    @Nonnull
     @Override
-    public FluentFuture<DOMRpcResult> invokeRpc(@Nonnull final DOMRpcIdentifier rpc, final NormalizedNode<?, ?> input) {
-
+    public FluentFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode<?, ?> input) {
         final SchemaPath schemaPath = rpc.getType();
         final DataObject bindingInput = input != null ? deserialize(rpc.getType(), input) : null;
         final ListenableFuture<RpcResult<?>> bindingResult = invoke(schemaPath, bindingInput);
-        return transformResult(bindingResult);
+        return LazyDOMRpcResultFuture.create(codec, bindingResult);
     }
 
     @Override
@@ -91,8 +88,4 @@ public class BindingDOMRpcImplementationAdapter implements DOMRpcImplementation
     private ListenableFuture<RpcResult<?>> invoke(final SchemaPath schemaPath, final DataObject input) {
         return invoker.invokeRpc(delegate, schemaPath.getLastComponent(), input);
     }
-
-    private FluentFuture<DOMRpcResult> transformResult(final ListenableFuture<RpcResult<?>> bindingResult) {
-        return LazyDOMRpcResultFuture.create(codec, bindingResult);
-    }
 }
index dbf76b5f4240183747b4ce427e5c6558a1887ad2..7f7a3c205daeaa24db02f6568840435a6c027792 100644 (file)
@@ -28,7 +28,7 @@ import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 import javassist.ClassPool;
-import javax.annotation.Nonnull;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.api.DataTreeIdentifier;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTree;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTreeFactory;
@@ -91,7 +91,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
     private final LoadingCache<InstanceIdentifier<?>, YangInstanceIdentifier> iiCache = CacheBuilder.newBuilder()
             .softValues().build(new CacheLoader<InstanceIdentifier<?>, YangInstanceIdentifier>() {
                 @Override
-                public YangInstanceIdentifier load(@Nonnull final InstanceIdentifier<?> key) {
+                public YangInstanceIdentifier load(final InstanceIdentifier<?> key) {
                     return toYangInstanceIdentifierBlocking(key);
                 }
             });
@@ -147,7 +147,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
     }
 
     @Override
-    public final YangInstanceIdentifier toYangInstanceIdentifier(@Nonnull final InstanceIdentifier<?> binding) {
+    public final YangInstanceIdentifier toYangInstanceIdentifier(final InstanceIdentifier<?> binding) {
         return codecRegistry.toYangInstanceIdentifier(binding);
     }
 
@@ -183,20 +183,18 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
     }
 
     @Override
-    public final Entry<InstanceIdentifier<?>, DataObject> fromNormalizedNode(@Nonnull final YangInstanceIdentifier path,
+    public final Entry<InstanceIdentifier<?>, DataObject> fromNormalizedNode(final YangInstanceIdentifier path,
             final NormalizedNode<?, ?> data) {
         return codecRegistry.fromNormalizedNode(path, data);
     }
 
     @Override
-    public final Notification fromNormalizedNodeNotification(@Nonnull final SchemaPath path,
-            @Nonnull final ContainerNode data) {
+    public final Notification fromNormalizedNodeNotification(final SchemaPath path, final ContainerNode data) {
         return codecRegistry.fromNormalizedNodeNotification(path, data);
     }
 
     @Override
-    public final DataObject fromNormalizedNodeRpcData(@Nonnull final SchemaPath path,
-            @Nonnull final ContainerNode data) {
+    public final DataObject fromNormalizedNodeRpcData(final SchemaPath path, final ContainerNode data) {
         return codecRegistry.fromNormalizedNodeRpcData(path, data);
     }
 
@@ -213,17 +211,17 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
     }
 
     @Override
-    public final InstanceIdentifier<?> fromYangInstanceIdentifier(@Nonnull final YangInstanceIdentifier dom) {
+    public final InstanceIdentifier<?> fromYangInstanceIdentifier(final YangInstanceIdentifier dom) {
         return codecRegistry.fromYangInstanceIdentifier(dom);
     }
 
     @Override
-    public final ContainerNode toNormalizedNodeNotification(@Nonnull final Notification data) {
+    public final ContainerNode toNormalizedNodeNotification(final Notification data) {
         return codecRegistry.toNormalizedNodeNotification(data);
     }
 
     @Override
-    public final ContainerNode toNormalizedNodeRpcData(@Nonnull final DataContainer data) {
+    public final ContainerNode toNormalizedNodeRpcData(final DataContainer data) {
         return codecRegistry.toNormalizedNodeRpcData(data);
     }
 
@@ -269,7 +267,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
     }
 
     public final Optional<Entry<InstanceIdentifier<? extends DataObject>, DataObject>> toBinding(
-            @Nonnull final Entry<YangInstanceIdentifier, ? extends NormalizedNode<?, ?>> normalized)
+            final @NonNull Entry<YangInstanceIdentifier, ? extends NormalizedNode<?, ?>> normalized)
                     throws DeserializationException {
         try {
             /*
@@ -402,8 +400,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
         return codecRegistry.create(context, bindingClasses);
     }
 
-    @Nonnull
-    protected Entry<InstanceIdentifier<?>, BindingCodecTreeNode<?>> getSubtreeCodec(
+    protected @NonNull Entry<InstanceIdentifier<?>, BindingCodecTreeNode<?>> getSubtreeCodec(
             final YangInstanceIdentifier domIdentifier) {
 
         final BindingCodecTree currentCodecTree = codecRegistry.getCodecContext();
index d9b4bf08add6b78dc463a38558a3b9cc2cb16963..f5a98285464abe252e973bbbddab42ca8827e176 100644 (file)
@@ -5,22 +5,20 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.mdsal.binding.dom.adapter;
 
 import com.google.common.cache.CacheBuilder;
 import com.google.common.cache.CacheLoader;
 import com.google.common.cache.LoadingCache;
 import java.lang.reflect.Method;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.binding.annotations.RoutingContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-
 abstract class ContextReferenceExtractor {
 
     private static final Logger LOG = LoggerFactory.getLogger(ContextReferenceExtractor.class);
@@ -40,8 +38,7 @@ abstract class ContextReferenceExtractor {
                     return create(key);
                 }
 
-                @Nonnull
-                private ContextReferenceExtractor create(final Class<?> key) {
+                private @NonNull ContextReferenceExtractor create(final Class<?> key) {
                     final Method contextGetter = getContextGetter(key);
                     if (contextGetter == null) {
                         return NULL_EXTRACTOR;
@@ -84,20 +81,16 @@ abstract class ContextReferenceExtractor {
     }
 
     /**
-     * Extract context-reference (Instance Identifier) from
-     * Binding DataObject.
+     * Extract context-reference (Instance Identifier) from a Binding DataObject.
      *
-     * @param obj DataObject from which context reference
-     *     should be extracted.
+     * @param obj DataObject from which context reference should be extracted.
      *
-     * @return Instance Identifier representing context reference
-     *     or null, if data object does not contain context reference.
+     * @return Instance Identifier representing context reference or null, if data object does not contain a context
+     *         reference.
      */
-    @Nullable
-    abstract InstanceIdentifier<?> extract(DataObject obj);
+    abstract @Nullable InstanceIdentifier<?> extract(DataObject obj);
 
-    @Nullable
-    private static Method findGetValueMethod(final Class<?> type, final Class<?> returnType) {
+    private static @Nullable Method findGetValueMethod(final Class<?> type, final Class<?> returnType) {
         try {
             final Method method = type.getMethod(GET_VALUE_NAME);
             if (returnType.equals(method.getReturnType())) {
index f6356135245c7995fb6ea1e80ebec40f9209fc9a..ad2516e8bb879d5f90672da3cf91b54fb9943a66 100644 (file)
@@ -7,7 +7,8 @@
  */
 package org.opendaylight.mdsal.binding.dom.adapter;
 
-import com.google.common.base.Preconditions;
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.util.concurrent.AbstractFuture;
 import com.google.common.util.concurrent.FluentFuture;
 import com.google.common.util.concurrent.ListenableFuture;
@@ -15,6 +16,7 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Executor;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry;
 import org.opendaylight.mdsal.dom.api.DOMRpcException;
 import org.opendaylight.mdsal.dom.api.DOMRpcResult;
@@ -41,11 +43,11 @@ final class LazyDOMRpcResultFuture extends AbstractFuture<DOMRpcResult> implemen
 
     private LazyDOMRpcResultFuture(final ListenableFuture<RpcResult<?>> delegate,
             final BindingNormalizedNodeCodecRegistry codec) {
-        this.bindingFuture = Preconditions.checkNotNull(delegate, "delegate");
-        this.codec = Preconditions.checkNotNull(codec, "codec");
+        this.bindingFuture = requireNonNull(delegate, "delegate");
+        this.codec = requireNonNull(codec, "codec");
     }
 
-    static FluentFuture<DOMRpcResult> create(final BindingNormalizedNodeCodecRegistry codec,
+    static @NonNull FluentFuture<DOMRpcResult> create(final BindingNormalizedNodeCodecRegistry codec,
             final ListenableFuture<RpcResult<?>> bindingResult) {
         return new LazyDOMRpcResultFuture(bindingResult, codec);
     }
index 50761508ea1cf435b9cf719b25bf59381a06bbb4..78b6f994356b5778ad3ed80da0c7770046bd3f0a 100644 (file)
@@ -7,16 +7,16 @@
  */
 package org.opendaylight.mdsal.binding.dom.adapter.invoke;
 
+import static com.google.common.base.Preconditions.checkArgument;
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.annotations.VisibleForTesting;
-import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableMap.Builder;
 import com.google.common.util.concurrent.ListenableFuture;
 import java.lang.reflect.Method;
 import java.util.Map;
 import java.util.Map.Entry;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.RpcService;
@@ -48,12 +48,12 @@ abstract class AbstractMappedRpcInvoker<T> extends RpcServiceInvoker {
     protected abstract T qnameToKey(QName qname);
 
     @Override
-    public final ListenableFuture<RpcResult<?>> invokeRpc(@Nonnull final RpcService impl, @Nonnull final QName rpcName,
-            @Nullable final DataObject input) {
-        Preconditions.checkNotNull(impl, "Implementation must be supplied");
+    public final ListenableFuture<RpcResult<?>> invokeRpc(final RpcService impl, final QName rpcName,
+            final DataObject input) {
+        requireNonNull(impl, "Implementation must be supplied");
 
         RpcMethodInvoker invoker = map.get(qnameToKey(rpcName));
-        Preconditions.checkArgument(invoker != null, "Supplied RPC is not valid for implementation %s", impl);
+        checkArgument(invoker != null, "Supplied RPC is not valid for implementation %s", impl);
         return invoker.invokeOn(impl, input);
     }
 }
index 5c5dd1dd1c6b3c8155889aed81ac760c335af81d..7d7db49392eaa2d8e360dec9c4dd37c4958f71d7 100644 (file)
@@ -7,7 +7,9 @@
  */
 package org.opendaylight.mdsal.binding.dom.adapter.invoke;
 
-import com.google.common.base.Preconditions;
+import static com.google.common.base.Preconditions.checkArgument;
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.base.Throwables;
 import com.google.common.cache.CacheBuilder;
 import com.google.common.cache.CacheLoader;
@@ -20,8 +22,8 @@ import java.lang.invoke.MethodHandles.Lookup;
 import java.lang.invoke.MethodType;
 import java.lang.reflect.Method;
 import java.util.Map;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
 import org.opendaylight.yangtools.yang.binding.DataContainer;
 import org.opendaylight.yangtools.yang.binding.NotificationListener;
@@ -83,8 +85,8 @@ public final class NotificationListenerInvoker {
      *         supplied RPC type.
      */
     public static NotificationListenerInvoker from(final Class<? extends NotificationListener> type) {
-        Preconditions.checkArgument(type.isInterface());
-        Preconditions.checkArgument(BindingReflections.isBindingClass(type));
+        checkArgument(type.isInterface());
+        checkArgument(BindingReflections.isBindingClass(type));
         return INVOKERS.getUnchecked(type);
     }
 
@@ -96,11 +98,11 @@ public final class NotificationListenerInvoker {
      * @param input Input data for RPC.
      */
     @SuppressWarnings("checkstyle:illegalCatch")
-    public void invokeNotification(@Nonnull final NotificationListener impl, @Nonnull final QName rpcName,
-            @Nullable final DataContainer input) {
-        Preconditions.checkNotNull(impl, "implemetation must be supplied");
+    public void invokeNotification(final @NonNull NotificationListener impl, final @NonNull QName rpcName,
+            final @Nullable DataContainer input) {
+        requireNonNull(impl, "implemetation must be supplied");
         final MethodHandle invoker = methodInvokers.get(rpcName);
-        Preconditions.checkArgument(invoker != null, "Supplied notification is not valid for implementation %s", impl);
+        checkArgument(invoker != null, "Supplied notification is not valid for implementation %s", impl);
         try {
             invoker.invokeExact(impl, input);
         } catch (final Throwable e) {
index 5cbb08c0f0016e31a165f638212e2200b7141391..d88e4d2c49cafe35913ac0f6726373a32fd5cafd 100644 (file)
@@ -7,12 +7,13 @@
  */
 package org.opendaylight.mdsal.binding.dom.adapter.invoke;
 
-import com.google.common.base.Preconditions;
+import static com.google.common.base.Preconditions.checkArgument;
+
 import com.google.common.util.concurrent.ListenableFuture;
 import java.lang.reflect.Method;
 import java.util.Map;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.RpcService;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -48,7 +49,7 @@ public abstract class RpcServiceInvoker {
      * @return An {@link RpcServiceInvoker} instance.
      */
     public static RpcServiceInvoker from(final Map<QName, Method> qnameToMethod) {
-        Preconditions.checkArgument(!qnameToMethod.isEmpty());
+        checkArgument(!qnameToMethod.isEmpty());
         QNameModule module = null;
 
         for (QName qname : qnameToMethod.keySet()) {
@@ -75,6 +76,6 @@ public abstract class RpcServiceInvoker {
      * @param input Input data for RPC.
      * @return Future which will complete once rpc procesing is finished.
      */
-    public abstract ListenableFuture<RpcResult<?>> invokeRpc(@Nonnull RpcService impl, @Nonnull QName rpcName,
+    public abstract ListenableFuture<RpcResult<?>> invokeRpc(@NonNull RpcService impl, @NonNull QName rpcName,
             @Nullable DataObject input);
 }
index f1eb0882270df7eaea42846775b93326386822aa..e346ff6e3b3e7b27b6e1c1f0da64334aca9a38f2 100644 (file)
@@ -14,7 +14,6 @@ import static org.mockito.Mockito.doReturn;
 import static org.mockito.MockitoAnnotations.initMocks;
 
 import com.google.common.collect.ImmutableClassToInstanceMap;
-import javax.annotation.Nullable;
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.Mock;
@@ -43,7 +42,6 @@ public class BindingDOMAdapterLoaderTest {
         bindingDOMAdapterLoader = new BindingDOMAdapterLoader(
                 new BindingToNormalizedNodeCodec(GeneratedClassLoadingStrategy.getTCCLClassLoadingStrategy(),
                         mockCodecRegistry)) {
-            @Nullable
             @Override
             protected DOMService getDelegate(final Class<? extends DOMService> reqDeleg) {
                 return domService;
@@ -69,6 +67,6 @@ public class BindingDOMAdapterLoaderTest {
     public void registerWithException() throws Exception {
         bindingDOMDataBrokerAdapter
                 = (BindingDOMDataBrokerAdapter) bindingDOMAdapterLoader.load(DataBroker.class).get();
-        bindingDOMDataBrokerAdapter.registerDataTreeChangeListener(null,null);
+        bindingDOMDataBrokerAdapter.registerDataTreeChangeListener(null, null);
     }
 }
\ No newline at end of file
index 33c4d1b12ee682f2e2142a9c2bbac98ed7af427c..75fd08ed27df095a9ac397281a42b7c94b707fe8 100644 (file)
@@ -16,7 +16,6 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.MockitoAnnotations.initMocks;
 
 import com.google.common.collect.ImmutableClassToInstanceMap;
-import javax.annotation.Nullable;
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.Mock;
@@ -51,7 +50,6 @@ public class BindingDOMTransactionChainAdapterTest {
         BindingDOMAdapterLoader bindingDOMAdapterLoader = new BindingDOMAdapterLoader(
                 new BindingToNormalizedNodeCodec(GeneratedClassLoadingStrategy.getTCCLClassLoadingStrategy(),
                         mockCodecRegistry)) {
-            @Nullable
             @Override
             protected DOMService getDelegate(final Class<? extends DOMService> reqDeleg) {
                 return domService;
index 2e9d1d1bd00c74d8f376d20b52868f75286279d2..bcd495c24a80a0d511ce5e394a3a42783c5b2eb5 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.mdsal.binding.dom.adapter.invoke;
 
 import static org.junit.Assert.assertEquals;
@@ -19,8 +18,8 @@ import com.google.common.util.concurrent.ListenableFuture;
 import java.lang.reflect.Method;
 import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.RpcService;
@@ -79,7 +78,7 @@ public class AbstractMappedRpcInvokerTest {
         private final RpcService rpcService;
         private final ThreadLocal<Optional<DataObject>> dataObject;
 
-        Crate(@Nonnull final RpcService rpcService, @Nullable final DataObject dataObject) {
+        Crate(final @NonNull RpcService rpcService, final @Nullable DataObject dataObject) {
             this.rpcService = rpcService;
             this.dataObject =
                 ThreadLocal.withInitial(() -> dataObject == null ? Optional.empty() : Optional.of(dataObject));
index c55694048cf994841f2db0a47cd4a7ebd8686a42..0e1394231d28804e7b92ed1301f53a03d924882c 100644 (file)
@@ -11,7 +11,6 @@ import com.google.common.collect.Range;
 import java.lang.reflect.Array;
 import java.util.Set;
 import java.util.function.Function;
-import javax.annotation.Nonnull;
 import org.opendaylight.yangtools.yang.binding.CodeHelpers;
 import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 
@@ -42,7 +41,7 @@ abstract class AbstractBigRangeGenerator<T extends Number & Comparable<T>> exten
 
     @Override
     protected final String generateRangeCheckerImplementation(final String checkerName,
-            @Nonnull final RangeConstraint<?> constraint, final Function<Class<?>, String> classImporter) {
+            final RangeConstraint<?> constraint, final Function<Class<?>, String> classImporter) {
         final Set<? extends Range<? extends Number>> constraints = constraint.getAllowedRanges().asRanges();
         final String fieldName = checkerName.toUpperCase() + "_RANGES";
         final StringBuilder sb = new StringBuilder();
index d57f00daaee50cbe7d131a9b0ccfc8e1ba84a86f..96e02993c8a5f9037a9c8b858cd37f1716c09317 100644 (file)
@@ -7,14 +7,15 @@
  */
 package org.opendaylight.mdsal.binding.java.api.generator;
 
-import com.google.common.base.Preconditions;
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.collect.Range;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Set;
 import java.util.function.Function;
-import javax.annotation.Nonnull;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.binding.CodeHelpers;
 import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 import org.slf4j.Logger;
@@ -26,11 +27,12 @@ abstract class AbstractPrimitiveRangeGenerator<T extends Number & Comparable<T>>
     private final T minValue;
     private final T maxValue;
 
-    protected AbstractPrimitiveRangeGenerator(final Class<T> typeClass, final String primitiveName, final T minValue, final T maxValue) {
+    protected AbstractPrimitiveRangeGenerator(final Class<T> typeClass, final String primitiveName, final T minValue,
+            final T maxValue) {
         super(typeClass);
-        this.primitiveName = Preconditions.checkNotNull(primitiveName);
-        this.minValue = Preconditions.checkNotNull(minValue);
-        this.maxValue = Preconditions.checkNotNull(maxValue);
+        this.primitiveName = requireNonNull(primitiveName);
+        this.minValue = requireNonNull(minValue);
+        this.maxValue = requireNonNull(maxValue);
     }
 
     /**
@@ -38,7 +40,7 @@ abstract class AbstractPrimitiveRangeGenerator<T extends Number & Comparable<T>>
      *
      * @return Primitive type name
      */
-    @Nonnull protected final String getPrimitiveName() {
+    protected final @NonNull String getPrimitiveName() {
         return primitiveName;
     }
 
index e5c09346be472e1a2f7b610ef588130fc83d15ac..45c2973dbdd87c5993f5ef739a9e7cbed196a42d 100644 (file)
@@ -7,12 +7,13 @@
  */
 package org.opendaylight.mdsal.binding.java.api.generator;
 
-import com.google.common.base.Preconditions;
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableMap.Builder;
 import java.util.Map;
 import java.util.function.Function;
-import javax.annotation.Nonnull;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.model.api.ConcreteType;
 import org.opendaylight.mdsal.binding.model.api.Type;
 import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
@@ -23,7 +24,8 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
     private static final Logger LOG = LoggerFactory.getLogger(AbstractRangeGenerator.class);
     private static final Map<String, AbstractRangeGenerator<?>> GENERATORS;
 
-    private static void addGenerator(final Builder<String, AbstractRangeGenerator<?>> b, final AbstractRangeGenerator<?> generator) {
+    private static void addGenerator(final Builder<String, AbstractRangeGenerator<?>> b,
+            final AbstractRangeGenerator<?> generator) {
         b.put(generator.getTypeClass().getCanonicalName(), generator);
     }
 
@@ -41,10 +43,10 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
     private final Class<T> type;
 
     protected AbstractRangeGenerator(final Class<T> typeClass) {
-        this.type = Preconditions.checkNotNull(typeClass);
+        this.type = requireNonNull(typeClass);
     }
 
-    static AbstractRangeGenerator<?> forType(@Nonnull final Type type) {
+    static AbstractRangeGenerator<?> forType(final @NonNull Type type) {
         final ConcreteType javaType = TypeUtils.getBaseYangType(type);
         return GENERATORS.get(javaType.getFullyQualifiedName());
     }
@@ -54,7 +56,7 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
      *
      * @return A class object
      */
-    @Nonnull protected final Class<T> getTypeClass() {
+    protected final @NonNull Class<T> getTypeClass() {
         return type;
     }
 
@@ -63,7 +65,7 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
      *
      * @return Fully-qualified name
      */
-    @Nonnull protected final String getTypeName() {
+    protected final @NonNull String getTypeName() {
         return type.getName();
     }
 
@@ -73,7 +75,7 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
      * @param value Value as a Number
      * @return Value in native format.
      */
-    @Nonnull protected final T getValue(final Number value) {
+    protected final @NonNull T getValue(final Number value) {
         if (type.isInstance(value)) {
             return type.cast(value);
         }
@@ -103,7 +105,7 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
      * @param value Number value
      * @return Java language string representation
      */
-    @Nonnull protected abstract String format(T value);
+    protected abstract @NonNull String format(T value);
 
     /**
      * Generate the checker method source code.
@@ -111,19 +113,19 @@ abstract class AbstractRangeGenerator<T extends Number & Comparable<T>> {
      * @param constraints Restrictions which need to be applied.
      * @return Method source code.
      */
-    @Nonnull protected abstract String generateRangeCheckerImplementation(@Nonnull String checkerName,
-            @Nonnull RangeConstraint<?> constraints, Function<Class<?>, String> classImporter);
+    protected abstract @NonNull String generateRangeCheckerImplementation(@NonNull String checkerName,
+            @NonNull RangeConstraint<?> constraints, Function<Class<?>, String> classImporter);
 
     private static String rangeCheckerName(final String member) {
         return "check" + member + "Range";
     }
 
-    String generateRangeChecker(@Nonnull final String member, @Nonnull final RangeConstraint<?> constraints,
+    String generateRangeChecker(final @NonNull String member, final @NonNull RangeConstraint<?> constraints,
             final JavaFileTemplate template) {
         return generateRangeCheckerImplementation(rangeCheckerName(member), constraints, template::importedName);
     }
 
-    String generateRangeCheckerCall(@Nonnull final String member, @Nonnull final String valueReference) {
+    String generateRangeCheckerCall(final @NonNull String member, final @NonNull String valueReference) {
         return rangeCheckerName(member) + '(' + valueReference + ");\n";
     }
 }
index 0f98ae9472c75b7cd2fee18e4fad49df55b823ed..b465c55873e7b1c596a488775fcebf90c5640ff8 100644 (file)
@@ -11,8 +11,8 @@ import com.google.common.collect.Range;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Set;
-import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.mdsal.binding.model.api.Type;
 import org.opendaylight.yangtools.yang.binding.CodeHelpers;
 import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
@@ -122,7 +122,7 @@ final class LengthGenerator {
                         : generateStringLengthChecker(member, constraint, template);
     }
 
-    static String generateLengthCheckerCall(@Nullable final String member, @Nonnull final String valueReference) {
+    static String generateLengthCheckerCall(final @Nullable String member, final @NonNull String valueReference) {
         return lengthCheckerName(member) + '(' + valueReference + ");\n";
     }
 }
index 251fa48c6fcd380ceacd4c44b21f36c84b88fb07..bbb2d22b62496153d5d4bbdac6523ba2073693d6 100644 (file)
@@ -7,8 +7,9 @@
  */
 package org.opendaylight.mdsal.binding.java.api.generator;
 
-import com.google.common.base.Preconditions;
-import javax.annotation.Nonnull;
+import static com.google.common.base.Preconditions.checkArgument;
+
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.model.api.ConcreteType;
 import org.opendaylight.mdsal.binding.model.api.GeneratedProperty;
 import org.opendaylight.mdsal.binding.model.api.GeneratedTransferObject;
@@ -31,13 +32,13 @@ final class TypeUtils {
      * @param type Input Type object
      * @return Resolved {@link ConcreteType} instance.
      */
-    static ConcreteType getBaseYangType(@Nonnull final Type type) {
+    static ConcreteType getBaseYangType(final @NonNull Type type) {
         // Already the correct type
         if (type instanceof ConcreteType) {
             return (ConcreteType) type;
         }
 
-        Preconditions.checkArgument(type instanceof GeneratedTransferObject, "Unsupported type %s", type);
+        checkArgument(type instanceof GeneratedTransferObject, "Unsupported type %s", type);
 
         // Need to walk up the GTO chain to the root
         GeneratedTransferObject rootGto = (GeneratedTransferObject) type;