Share via


ICompletionStage.ThenCompose(IFunction) Method

Definition

Returns a new CompletionStage that is completed with the same value as the CompletionStage returned by the given function.

[Android.Runtime.Register("thenCompose", "(Ljava/util/function/Function;)Ljava/util/concurrent/CompletionStage;", "GetThenCompose_Ljava_util_function_Function_Handler:Java.Util.Concurrent.ICompletionStageInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
[Java.Interop.JavaTypeParameters(new System.String[] { "U" })]
public Java.Util.Concurrent.ICompletionStage? ThenCompose (Java.Util.Functions.IFunction? fn);
[<Android.Runtime.Register("thenCompose", "(Ljava/util/function/Function;)Ljava/util/concurrent/CompletionStage;", "GetThenCompose_Ljava_util_function_Function_Handler:Java.Util.Concurrent.ICompletionStageInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "U" })>]
abstract member ThenCompose : Java.Util.Functions.IFunction -> Java.Util.Concurrent.ICompletionStage

Parameters

fn
IFunction

the function to use to compute another CompletionStage

Returns

the new CompletionStage

Attributes

Remarks

Returns a new CompletionStage that is completed with the same value as the CompletionStage returned by the given function.

When this stage completes normally, the given function is invoked with this stage's result as the argument, returning another CompletionStage. When that stage completes normally, the CompletionStage returned by this method is completed with the same value.

To ensure progress, the supplied function must arrange eventual completion of its result.

This method is analogous to java.util.Optional#flatMap Optional.flatMap and java.util.stream.Stream#flatMap Stream.flatMap.

See the CompletionStage documentation for rules covering exceptional completion.

Java documentation for java.util.concurrent.CompletionStage.thenCompose(java.util.function.Function<? super T, ? extends java.util.concurrent.CompletionStage<U>>).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to