Class DelegatesToInvocationFunction<S,F extends com.google.common.base.Function<Invocation,Object>>

java.lang.Object
org.jclouds.rest.internal.DelegatesToInvocationFunction<S,F>
Type Parameters:
S - The enclosing type of the interface that a dynamic proxy like this implements
F - The function that implements this dynamic proxy
All Implemented Interfaces:
InvocationHandler

@Beta public class DelegatesToInvocationFunction<S,F extends com.google.common.base.Function<Invocation,Object>> extends Object implements InvocationHandler
  • Field Details

    • injector

      protected final com.google.inject.Injector injector
    • ownerType

      protected final com.google.common.reflect.TypeToken<S> ownerType
    • setCaller

      protected final SetCaller setCaller
    • optionalConverter

      protected final com.google.common.base.Function<InvocationSuccess,com.google.common.base.Optional<Object>> optionalConverter
    • methodInvoker

      protected final F extends com.google.common.base.Function<Invocation,Object> methodInvoker
  • Method Details

    • invoke

      public final Object invoke(Object proxy, Method invoked, @Nullable Object[] argv) throws Throwable

      • proxy.hashCode() delegates to
        invalid reference
        AbstractInvocationHandler#hashCode
      • proxy.toString() delegates to
        invalid reference
        AbstractInvocationHandler#toString
      • proxy.equals(argument) returns true if:
        • proxy and argument are of the same type
        • and
          invalid reference
          AbstractInvocationHandler#equals
          returns true for the InvocationHandler of argument
      • other method calls are dispatched to
        invalid reference
        #handleInvocation
        .
      Specified by:
      invoke in interface InvocationHandler
      Throws:
      Throwable
    • handle

      protected Object handle(Invocation invocation)
    • methodInvokerFor

      protected com.google.inject.Key<?> methodInvokerFor(Class<?> returnType)
      attempts to guess the generic type params for the delegate's invocation function based on the supplied type
    • toString

      public String toString()
      Overrides:
      toString in class Object