Define getImplementedInterface name in BindingMapping 68/77868/1
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 16 Nov 2018 06:34:37 +0000 (07:34 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Fri, 16 Nov 2018 06:44:12 +0000 (07:44 +0100)
This moves the definition from LazyDataObject to a common place,
so we have one place which defines it. Also remove unused Throwable
declaration.

Change-Id: Icfbc861419fca3b207e9aebfc2b00ddf8a1fc38f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/LazyDataObject.java
binding/mdsal-binding-spec-util/src/main/java/org/opendaylight/mdsal/binding/spec/naming/BindingMapping.java

index 4b8da65f937dec47e5217acfefed44f79fecbbe4..4437c00772f869d08073286433b1dc17961c6072 100644 (file)
@@ -9,6 +9,8 @@ package org.opendaylight.mdsal.binding.dom.codec.impl;
 
 import static com.google.common.base.Preconditions.checkArgument;
 import static java.util.Objects.requireNonNull;
+import static org.opendaylight.mdsal.binding.spec.naming.BindingMapping.AUGMENTABLE_AUGMENTATION_NAME;
+import static org.opendaylight.mdsal.binding.spec.naming.BindingMapping.DATA_CONTAINER_GET_IMPLEMENTED_INTERFACE_NAME;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.base.MoreObjects.ToStringHelper;
@@ -24,7 +26,6 @@ import java.util.Optional;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.atomic.AtomicReferenceFieldUpdater;
 import org.opendaylight.mdsal.binding.dom.codec.util.AugmentationReader;
-import org.opendaylight.mdsal.binding.spec.naming.BindingMapping;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
 import org.opendaylight.yangtools.yang.binding.Augmentable;
 import org.opendaylight.yangtools.yang.binding.Augmentation;
@@ -38,7 +39,6 @@ import org.slf4j.LoggerFactory;
 class LazyDataObject<D extends DataObject> implements InvocationHandler, AugmentationReader {
 
     private static final Logger LOG = LoggerFactory.getLogger(LazyDataObject.class);
-    private static final String GET_IMPLEMENTED_INTERFACE = "getImplementedInterface";
     private static final String TO_STRING = "toString";
     private static final String EQUALS = "equals";
     private static final String HASHCODE = "hashCode";
@@ -62,10 +62,10 @@ class LazyDataObject<D extends DataObject> implements InvocationHandler, Augment
     }
 
     @Override
-    public Object invoke(final Object proxy, final Method method, final Object[] args) throws Throwable {
+    public Object invoke(final Object proxy, final Method method, final Object[] args) {
         if (method.getParameterTypes().length == 0) {
             final String name = method.getName();
-            if (GET_IMPLEMENTED_INTERFACE.equals(name)) {
+            if (DATA_CONTAINER_GET_IMPLEMENTED_INTERFACE_NAME.equals(name)) {
                 return context.getBindingClass();
             } else if (TO_STRING.equals(name)) {
                 return bindingToString();
@@ -75,7 +75,7 @@ class LazyDataObject<D extends DataObject> implements InvocationHandler, Augment
                 return getAugmentationsImpl();
             }
             return getBindingData(method);
-        } else if (BindingMapping.AUGMENTABLE_AUGMENTATION_NAME.equals(method.getName())) {
+        } else if (AUGMENTABLE_AUGMENTATION_NAME.equals(method.getName())) {
             return getAugmentationImpl((Class<?>) args[0]);
         } else if (EQUALS.equals(method.getName())) {
             return bindingEquals(args[0]);
index fdd567cf0b368019d83f6bb137d691378b111710..d02f05f4fffc5a27a57915e68bc2c05f479105bf 100644 (file)
@@ -24,6 +24,7 @@ import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import org.opendaylight.yangtools.yang.binding.Augmentable;
+import org.opendaylight.yangtools.yang.binding.DataContainer;
 import org.opendaylight.yangtools.yang.binding.Identifiable;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -73,6 +74,11 @@ public final class BindingMapping {
      */
     public static final String IDENTIFIABLE_KEY_NAME = "key";
 
+    /**
+     * Name of {@link DataContainer#getImplementedInterface()}.
+     */
+    public static final String DATA_CONTAINER_GET_IMPLEMENTED_INTERFACE_NAME = "getImplementedInterface";
+
     /**
      * Prefix for getter methods working on top of boolean.
      */