public abstract Listen ( ) : TaskCompletionSource |
||
return | TaskCompletionSource |
/// <summary> /// TBD /// </summary> /// <returns>TBD</returns> public override Task <(Address, TaskCompletionSource <IAssociationEventListener>)> Listen() { var upstreamListenerPromise = new TaskCompletionSource <IAssociationEventListener>(); return(WrappedTransport.Listen().ContinueWith(async listenerTask => { var listenAddress = listenerTask.Result.Item1; var listenerPromise = listenerTask.Result.Item2; listenerPromise.TrySetResult(await InterceptListen(listenAddress, upstreamListenerPromise.Task).ConfigureAwait(false)); return (SchemeAugmenter.AugmentScheme(listenAddress), upstreamListenerPromise); }, TaskContinuationOptions.ExecuteSynchronously).Unwrap()); }