From dcc5a8ce8813fc5f32388e6005992da3aef2d565 Mon Sep 17 00:00:00 2001 From: "Johan T. Halseth" Date: Tue, 7 Jan 2020 13:46:40 +0100 Subject: [PATCH] cmd/loop: add fast option to quote cmd --- cmd/loop/quote.go | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/cmd/loop/quote.go b/cmd/loop/quote.go index ec4ddd0..ad4e409 100644 --- a/cmd/loop/quote.go +++ b/cmd/loop/quote.go @@ -2,6 +2,7 @@ package main import ( "context" + "time" "github.com/lightninglabs/loop/looprpc" "github.com/urfave/cli" @@ -20,6 +21,16 @@ var quoteCommand = cli.Command{ "should be swept within in a Loop Out", Value: 6, }, + cli.BoolFlag{ + Name: "fast", + Usage: "Indicate you want to swap immediately, " + + "paying potentially a higher fee. If not " + + "set the swap server might choose to wait up " + + "to 30 minutes before publishing the swap " + + "HTLC on-chain, to save on chain fees. Not " + + "setting this flag might result in a lower " + + "swap fee.", + }, }, Action: quote, } @@ -43,10 +54,17 @@ func quote(ctx *cli.Context) error { } defer cleanup() + fast := ctx.Bool("fast") + swapDeadline := time.Now() + if !fast { + swapDeadline = time.Now().Add(defaultSwapWaitTime) + } + ctxb := context.Background() resp, err := client.LoopOutQuote(ctxb, &looprpc.QuoteRequest{ - Amt: int64(amt), - ConfTarget: int32(ctx.Uint64("conf_target")), + Amt: int64(amt), + ConfTarget: int32(ctx.Uint64("conf_target")), + SwapPublicationDeadline: uint64(swapDeadline.Unix()), }) if err != nil { return err