Class AbstractInvocationHandler

java.lang.Object
com.google.common.reflect.AbstractInvocationHandler
All Implemented Interfaces:
InvocationHandler

@Beta @Deprecated(since="2022-12-01") public abstract class AbstractInvocationHandler extends Object implements InvocationHandler
Deprecated.
The Google Guava Core Libraries are deprecated and will not be part of the AEM SDK after April 2023
Abstract implementation of InvocationHandler that handles Object.equals(java.lang.Object), Object.hashCode() and Object.toString(). For example:
  class Unsupported extends AbstractInvocationHandler {
    protected Object handleInvocation(
        Object proxy, Method method, Object[] args) {
      throw new UnsupportedOperationException();
    }
  }

  CharSequence unsupported = Reflection.newProxy(CharSequence.class, new Unsupported());
  
Since:
12.0
  • Constructor Details

    • AbstractInvocationHandler

      public AbstractInvocationHandler()
      Deprecated.
  • Method Details

    • invoke

      public final Object invoke(Object proxy, Method method, @Nullable Object[] args) throws Throwable
      Deprecated.

      • proxy.hashCode() delegates to hashCode()
      • proxy.toString() delegates to toString()
      • proxy.equals(argument) returns true if:
      • other method calls are dispatched to handleInvocation(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]).
      Specified by:
      invoke in interface InvocationHandler
      Throws:
      Throwable
    • equals

      public boolean equals(Object obj)
      Deprecated.
      By default delegates to Object.equals(java.lang.Object) so instances are only equal if they are identical. proxy.equals(argument) returns true if:
      • proxy and argument are of the same type
      • and this method returns true for the InvocationHandler of argument

      Subclasses can override this method to provide custom equality.

      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Deprecated.
      By default delegates to Object.hashCode(). The dynamic proxies' hashCode() will delegate to this method. Subclasses can override this method to provide custom equality.
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Deprecated.
      By default delegates to Object.toString(). The dynamic proxies' toString() will delegate to this method. Subclasses can override this method to provide custom string representation for the proxies.
      Overrides:
      toString in class Object