|
18 | 18 | import io.vertx.core.Handler; |
19 | 19 | import java.util.function.Consumer; |
20 | 20 | import net.bytebuddy.asm.Advice; |
| 21 | +import net.bytebuddy.asm.Advice.AssignReturned; |
| 22 | +import net.bytebuddy.asm.Advice.AssignReturned.ToArguments.ToArgument; |
21 | 23 | import net.bytebuddy.description.type.TypeDescription; |
22 | 24 | import net.bytebuddy.matcher.ElementMatcher; |
23 | 25 |
|
@@ -50,22 +52,22 @@ public void transform(TypeTransformer transformer) { |
50 | 52 | @SuppressWarnings("unused") |
51 | 53 | public static class ConstructorWithHandlerAdvice { |
52 | 54 |
|
| 55 | + @AssignReturned.ToArguments(@ToArgument(0)) |
53 | 56 | @Advice.OnMethodEnter(suppress = Throwable.class) |
54 | | - public static void wrapHandler( |
55 | | - @Advice.Argument(value = 0, readOnly = false) Handler<Handler<AsyncResult<?>>> handler) { |
56 | | - handler = |
57 | | - AsyncResultHandlerWrapper.wrapIfNeeded(handler, Java8BytecodeBridge.currentContext()); |
| 57 | + public static Handler<Handler<AsyncResult<?>>> wrapHandler( |
| 58 | + @Advice.Argument(0) Handler<Handler<AsyncResult<?>>> handler) { |
| 59 | + return AsyncResultHandlerWrapper.wrapIfNeeded(handler, Java8BytecodeBridge.currentContext()); |
58 | 60 | } |
59 | 61 | } |
60 | 62 |
|
61 | 63 | @SuppressWarnings("unused") |
62 | 64 | public static class ConstructorWithConsumerAdvice { |
63 | 65 |
|
| 66 | + @AssignReturned.ToArguments(@ToArgument(0)) |
64 | 67 | @Advice.OnMethodEnter(suppress = Throwable.class) |
65 | | - public static void wrapHandler( |
66 | | - @Advice.Argument(value = 0, readOnly = false) Consumer<Handler<AsyncResult<?>>> handler) { |
67 | | - handler = |
68 | | - AsyncResultConsumerWrapper.wrapIfNeeded(handler, Java8BytecodeBridge.currentContext()); |
| 68 | + public static Consumer<Handler<AsyncResult<?>>> wrapHandler( |
| 69 | + @Advice.Argument(0) Consumer<Handler<AsyncResult<?>>> handler) { |
| 70 | + return AsyncResultConsumerWrapper.wrapIfNeeded(handler, Java8BytecodeBridge.currentContext()); |
69 | 71 | } |
70 | 72 | } |
71 | 73 | } |
0 commit comments