diff --git a/flyfish-common/src/main/java/com/flyfish/framework/context/ReactiveContext.java b/flyfish-common/src/main/java/com/flyfish/framework/context/ReactiveContext.java new file mode 100644 index 0000000..2fb6f2f --- /dev/null +++ b/flyfish-common/src/main/java/com/flyfish/framework/context/ReactiveContext.java @@ -0,0 +1,22 @@ +package com.flyfish.framework.context; + +import reactor.core.publisher.Mono; + +/** + * 异步上下文 + * 提供当前订阅联调无缝体验 + * + * @author wangyu + */ +public class ReactiveContext { + + /** + * 获取上下文中的共享值 + * + * @param 泛型,就是exchange + * @return 结果 + */ + public static Mono get(Class clazz) { + return Mono.deferContextual(ctx -> ctx.hasKey(clazz) ? ctx.>get(clazz) : Mono.empty()); + } +}