protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (CLOSE.equals(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }
protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (isCloseMethod(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }
protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (isCloseMethod(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }
protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (CLOSE.equals(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }
protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (isCloseMethod(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }
protected Object handle(Invocation invocation) { Invokable<?, ?> invokable = invocation.getInvokable(); if (isCloseMethod(invokable)) { try { injector.getInstance(Closer.class).close(); return null; } catch (Throwable e) { throw propagate(e); } } else if (invokable.isAnnotationPresent(Provides.class)) { return lookupValueFromGuice(invokable); } else if (invokable.isAnnotationPresent(Delegate.class)) { return propagateContextToDelegate(invocation); } else { return methodInvoker.apply(invocation); } }