类 ReactiveAdapterRegistry


  • public class ReactiveAdapterRegistry
    extends Object
    A registry of adapters to adapt Reactive Streams Publisher to/from various async/reactive types such as CompletableFuture, RxJava Observable, and others.

    By default, depending on classpath availability, adapters are registered for Reactor, RxJava 1, RxJava 2 types, CompletableFuture, Java 9+ Flow.Publisher and Kotlin Coroutines Deferred and Flow.

    从以下版本开始:
    5.0
    作者:
    Rossen Stoyanchev, Sebastien Deleuze
    • 方法详细资料

      • hasAdapters

        public boolean hasAdapters()
        Whether the registry has any adapters which would be the case if any of Reactor, RxJava 2, or RxJava 1 (+ RxJava Reactive Streams bridge) are present on the classpath.
      • registerReactiveType

        public void registerReactiveType​(ReactiveTypeDescriptor descriptor,
                                         Function<Object,​org.reactivestreams.Publisher<?>> toAdapter,
                                         Function<org.reactivestreams.Publisher<?>,​Object> fromAdapter)
        Register a reactive type along with functions to adapt to and from a Reactive Streams Publisher. The function arguments assume that their input is neither null nor Optional.
      • getAdapter

        @Nullable
        public ReactiveAdapter getAdapter​(@Nullable
                                          Class<?> reactiveType,
                                          @Nullable
                                          Object source)
        Get the adapter for the given reactive type. Or if a "source" object is provided, its actual type is used instead.
        参数:
        reactiveType - the reactive type (may be null if a concrete source object is given)
        source - an instance of the reactive type (i.e. to adapt from; may be null if the reactive type is specified)
        返回:
        the corresponding adapter, or null if none available
      • getSharedInstance

        public static ReactiveAdapterRegistry getSharedInstance()
        Return a shared default ReactiveAdapterRegistry instance, lazily building it once needed.

        NOTE: We highly recommend passing a long-lived, pre-configured ReactiveAdapterRegistry instance for customization purposes. This accessor is only meant as a fallback for code paths that want to fall back on a default instance if one isn't provided.

        返回:
        the shared ReactiveAdapterRegistry instance
        从以下版本开始:
        5.0.2