bitcoin-s/api/lnrpc/Route.html

38 lines
113 KiB
HTML
Raw Normal View History

<!DOCTYPE html ><html><head><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport"/><title></title><meta content="" name="description"/><meta content="" name="keywords"/><meta http-equiv="content-type" content="text/html; charset=UTF-8"/><link href="../lib/index.css" media="screen" type="text/css" rel="stylesheet"/><link href="../lib/template.css" media="screen" type="text/css" rel="stylesheet"/><link href="../lib/print.css" media="print" type="text/css" rel="stylesheet"/><link href="../lib/diagrams.css" media="screen" type="text/css" rel="stylesheet" id="diagrams-css"/><script type="text/javascript" src="../lib/jquery.min.js"></script><script type="text/javascript" src="../lib/index.js"></script><script type="text/javascript" src="../index.js"></script><script type="text/javascript" src="../lib/scheduler.js"></script><script type="text/javascript" src="../lib/template.js"></script><script type="text/javascript">/* this variable can be used by the JS to determine the path to the root document */
var toRoot = '../';</script></head><body><div id="search"><span id="doc-title"><span id="doc-version"></span></span> <span class="close-results"><span class="left">&lt;</span> Back</span><div id="textfilter"><span class="input"><input autocapitalize="none" placeholder="Search" id="index-input" type="text" accesskey="/"/><i class="clear material-icons"></i><i id="search-icon" class="material-icons"></i></span></div></div><div id="search-results"><div id="search-progress"><div id="progress-fill"></div></div><div id="results-content"><div id="entity-results"></div><div id="member-results"></div></div></div><div id="content-scroll-container" style="-webkit-overflow-scrolling: touch;"><div id="content-container" style="-webkit-overflow-scrolling: touch;"><div id="subpackage-spacer"><div id="packages"><h1>Packages</h1><ul><li class="indented0 " name="_root_.root" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="_root_" class="anchorToMember"></a><a id="root:_root_" class="anchorToMember"></a> <span class="permalink"><a href="../index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../index.html" title=""><span class="name">root</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="indented1 " name="_root_.lnrpc" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="lnrpc" class="anchorToMember"></a><a id="lnrpc:lnrpc" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="index.html" title=""><span class="name">lnrpc</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="current-entities indented1"><a href="AMP$.html" title="" class="object"></a> <a href="AMP.html" title="Details specific to AMP HTLCs." class="class"></a><a href="AMP.html" title="Details specific to AMP HTLCs.">AMP</a></li><li class="current-entities indented1"><a href="AMPInvoiceState$.html" title="" class="object"></a> <a href="AMPInvoiceState.html" title="" class="class"></a><a href="AMPInvoiceState.html" title="">AMPInvoiceState</a></li><li class="current-entities indented1"><a href="AMPRecord$.html" title="" class="object"></a> <a href="AMPRecord.html" title="" class="class"></a><a href="AMPRecord.html" title="">AMPRecord</a></li><li class="current-entities indented1"><a href="AbandonChannelRequest$.html" title="" class="object"></a> <a href="AbandonChannelRequest.html" title="" class="class"></a><a href="AbandonChannelRequest.html" title="">AbandonChannelRequest</a></li><li class="current-entities indented1"><a href="AbandonChannelResponse$.html" title="" class="object"></a> <a href="AbandonChannelResponse.html" title="" class="class"></a><a href="AbandonChannelResponse.html" title="">AbandonChannelResponse</a></li><li class="current-entities indented1"><a href="AddInvoiceResponse$.html" title="" class="object"></a> <a href="AddInvoiceResponse.html" title="" class="class"></a><a href="AddInvoiceResponse.html" title="">AddInvoiceResponse</a></li><li class="current-entities indented1"><a href="AddressType$.html" title="" class="object"></a> <a href="AddressType.html" title="AddressType has to be one of:" class="class"></a><a href="AddressType.html" title="AddressType has to be one of:">AddressType</a></li><li class="current-entities indented1"><a href="AliasMap$.html" title="" class="object"></a> <a href="AliasMap.html" title="" class="class"></a><a href="AliasMap.html" title="">AliasMap</a></li><li class="current-entities indented1"><a href=
succession. This struct carries all the information required to craft the
Sphinx onion packet, and send the payment along the first hop in the path. A
route is only selected as valid if all the channels have sufficient capacity to
carry the initial payment amount after fees are accounted for.
</p></div><dl class="paramcmts block"><dt class="param">totalTimeLock</dt><dd class="cmt"><p>
The cumulative (final) time lock across the entire route. This is the CLTV
value that should be extended to the first hop in the route. All other hops
will decrement the time-lock as advertised, leaving enough time for all
hops to wait for or present the payment preimage to complete the payment.</p></dd><dt class="param">totalFees</dt><dd class="cmt"><p>
The sum of the fees paid at each hop within the final route. In the case
of a one-hop payment, this value will be zero as we don't need to pay a fee
to ourselves.</p></dd><dt class="param">totalAmt</dt><dd class="cmt"><p>
The total amount of funds required to complete a payment over this route.
This value includes the cumulative fees at each hop. As a result, the HTLC
extended to the first-hop in the route will need to have at least this many
satoshis, otherwise the route will fail at an intermediate node due to an
insufficient amount of fees.</p></dd><dt class="param">hops</dt><dd class="cmt"><p>
Contains details concerning the specific forwarding details at each hop.</p></dd><dt class="param">totalFeesMsat</dt><dd class="cmt"><p>
The total fees in millisatoshis.</p></dd><dt class="param">totalAmtMsat</dt><dd class="cmt"><p>
The total amount in millisatoshis.</p></dd></dl><dl class="attributes block"><dt>Annotations</dt><dd><span class="name">@SerialVersionUID</span><span class="args">()</span> </dd></dl><div class="toggleContainer"><div class="toggle block"><span>Linear Supertypes</span><div class="superTypes hiddenContent"><a href="https://javadoc.io/page/com.thesamet.scalapb/lenses_2.13/0.11.11/scalapb/lenses/Updatable.html#scalapb.lenses.Updatable" name="scalapb.lenses.Updatable" id="scalapb.lenses.Updatable" class="extype">Updatable</a>[<a href="" name="lnrpc.Route" id="lnrpc.Route" class="extype">Route</a>], <a href="https://javadoc.io/page/com.thesamet.scalapb/scalapb-runtime_2.13/0.11.11/scalapb/GeneratedMessage.html#scalapb.GeneratedMessage" name="scalapb.GeneratedMessage" id="scalapb.GeneratedMessage" class="extype">GeneratedMessage</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java/io/Serializable.html#java.io.Serializable" name="java.io.Serializable" id="java.io.Serializable" class="extype">Serializable</a>, <a href="https://www.scala-lang.org/api/2.13.10/scala/Product.html#scala.Product" name="scala.Product" id="scala.Product" class="extype">Product</a>, <a href="https://www.scala-lang.org/api/2.13.10/scala/Equals.html#scala.Equals" name="scala.Equals" id="scala.Equals" class="extype">Equals</a>, <a href="../scala/index.html#AnyRef=Object" name="scala.AnyRef" id="scala.AnyRef" class="extmbr">AnyRef</a>, <a href="https://www.scala-lang.org/api/2.13.10/scala/Any.html#scala.Any" name="scala.Any" id="scala.Any" class="extype">Any</a></div></div></div></div><div id="mbrsel"><div class="toggle"></div><div id="memberfilter"><i class="material-icons arrow"></i><span class="input"><input placeholder="Filter all members" id="mbrsel-input" type="text" accesskey="/"/></span><i class="clear material-icons"></i></div><div id="filterby"><div id="order"><span class="filtertype">Ordering</span><ol><li class="alpha in"><span>Alphabetic</span></li><li class="inherit out"><span>By Inheritance</span></li></ol></div><div class="ancestors"><span class="filtertype">Inherited<br/></span><ol id="linearization"><li class="in" name="lnrpc.Route"><span>Route</span></li><li class="in" name="scalapb.lenses.Updatable"><span>Updatable</span></li><li class="in" name="scalapb.GeneratedMessage"><span>GeneratedMessage</span></li><li class="in" name="java.io.Serializable"><span>Serializable</span></li><li class="in" name="scala.Product"><span>Product</span></li><li class="in" name="scala.Equals"><span>Equals</span></li><li class="in" name="scala.AnyRef"><span>AnyRef</span></li><li class="in" name="scala.Any"><span>Any</span></li></ol></div><div class="ancestors"><span class="filtertype"></span><ol><li class="hideall out"><span>Hide All</span></li><li class="showall in"><span>Show All</span></li></ol></div><div id="visbl"><span class="filtertype">Visibility</span><ol><li class="public in"><span>Public</span></li><li class="protected out"><span>Protected</span></li></ol></div></div></div><div id="template"><div id="allMembers"><div id="constructors" class="members"><h3>Instance Constructors</h3><ol><li class="indented0 " name="lnrpc.Route#&lt;init&gt;" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="&lt;init&gt;(totalTimeLock:org.bitcoins.core.number.UInt32,totalFees:Long,totalAmt:Long,hops:Seq[lnrpc.Hop],totalFeesMsat:Long,totalAmtMsat:Long,unknownFields:scalapb.UnknownFieldSet):lnrpc.Route" class="anchorToMember"></a><a id="&lt;init&gt;:Route" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/Route.html#&lt;init&gt;(totalTimeLock:org.bitcoins.core.number.UInt32,totalFees:Long,totalAmt:Long,hops:Seq[lnrpc.Hop],totalFeesMsat:Long,totalAmtMsat:Long,unknownFields:scalapb.UnknownFieldSet):lnrpc.Route" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">new</span></span> <span class="symbol"><span class="name">Route</span><span class="params">(<span name="totalTimeLock">totalTimeLock: <a href="../org/bitcoins/cor
The cumulative (final) time lock across the entire route. This is the CLTV
value that should be extended to the first hop in the route. All other hops
will decrement the time-lock as advertised, leaving enough time for all
hops to wait for or present the payment preimage to complete the payment.</p></dd><dt class="param">totalFees</dt><dd class="cmt"><p>
The sum of the fees paid at each hop within the final route. In the case
of a one-hop payment, this value will be zero as we don't need to pay a fee
to ourselves.</p></dd><dt class="param">totalAmt</dt><dd class="cmt"><p>
The total amount of funds required to complete a payment over this route.
This value includes the cumulative fees at each hop. As a result, the HTLC
extended to the first-hop in the route will need to have at least this many
satoshis, otherwise the route will fail at an intermediate node due to an
insufficient amount of fees.</p></dd><dt class="param">hops</dt><dd class="cmt"><p>
Contains details concerning the specific forwarding details at each hop.</p></dd><dt class="param">totalFeesMsat</dt><dd class="cmt"><p>
The total fees in millisatoshis.</p></dd><dt class="param">totalAmtMsat</dt><dd class="cmt"><p>
The total amount in millisatoshis.</p></dd></dl></div></li></ol></div><div class="values members"><h3>Value Members</h3><ol><li class="indented0 " name="scala.AnyRef#!=" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="!=(x$1:Any):Boolean" class="anchorToMember"></a><a id="!=(Any):Boolean" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/Route.html#!=(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $bang$eq">!=</span><span class="params">(<span name="arg0">arg0: <a href="https://www.scala-lang.org/api/2.13.10/scala/Any.html#scala.Any" name="scala.Any" id="scala.Any" class="extype">Any</a></span>)</span><span class="result">: <a href="https://www.scala-lang.org/api/2.13.10/scala/Boolean.html#scala.Boolean" name="scala.Boolean" id="scala.Boolean" class="extype">Boolean</a></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef###" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="##:Int" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/Route.html###:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $hash$hash">##</span><span class="result">: <a href="https://www.scala-lang.org/api/2.13.10/scala/Int.html#scala.Int" name="scala.Int" id="scala.Int" class="extype">Int</a></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#==" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="==(x$1:Any):Boolean" class="anchorToMember"></a><a id="==(Any):Boolean" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/Route.html#==(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $eq$eq">==</span><span class="params">(<span name="arg0">arg0: <a href="https://www.scala-lang.org/api/2.13.10/scala/Any.html#scala.Any" name="scala.Any" id="scala.Any" class="extype">Any</a></span>)</span><span class="result">: <a href="https://www.scala-lang.org/api/2.13.10/scala/Boolean.html#scala.Boolean" name="scala.Boolean" id="scala.Boolean" class="extype">Boolean</a></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="lnrpc.Route#addAllHops" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="addAllHops(__vs:Iterable[lnrpc.Hop]):lnrpc.Route" class="anchorToMember"></a><a id="addAllHops(Iterable[Hop]):Route" class="anchorToMember"></a> <span class="permalink"><a href="../lnrpc/Route.html#addAllHops(__vs:Iterable[lnrpc.Hop]):lnrpc.Route" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">addAllHops</span><span class="params">(<span name="__vs">__vs: <a href="../scala/index.html#Iterable[+A]=Iterable[A]" name="scala.Iterable" id="scala.Iterable" class="extmbr">Iterable</a>[<a href="Hop.html" name="lnrpc.Hop" id="lnrpc.Hop" class="extype">Hop</a>]</span>)</span><span class="result">: <a href="" name="lnrpc.Route" id="lnrpc.Route" class="extype">Route</a></span></span></li><li class="indented0 " name="lnrpc.Route#addHops" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="addHops(__vs:lnrpc.Hop*):lnrpc.Route" class="anchorToMember"></a><a id="addHops(Hop*):Route" cl