public static async Task <TransferMessages.TransferCompled> Send <TSender, TCommand>(this TSender sender, TCommand command, TimeSpan timeout, DataTransferManager manager, Action <string> messages, Func <ITransferData?> getdata) where TSender : ISender where TCommand : FileTransferCommand <TSender, TCommand> { command.Manager = manager; var id = await SendingHelper.Send <FileTransactionId, TCommand>(sender, command, messages, timeout, false); var tranfer = await command.Manager.AskAwaitOperation(new AwaitRequest(timeout, id.Id)); return(await tranfer.TryStart(getdata)); }
public static Task Send <TSender, TCommand>(this TSender sender, TCommand command, TimeSpan timeout, Action <string> messages) where TCommand : SimpleCommand <TSender, TCommand>, IReporterMessage where TSender : ISender => SendingHelper.Send <object, TCommand>(sender, command, messages, timeout, true);