bitcoin-s/api/chainrpc/ChainNotifierClient.html

35 lines
46 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_.chainrpc" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="chainrpc" class="anchorToMember"></a><a id="chainrpc:chainrpc" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/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">chainrpc</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="BlockEpoch$.html" title="" class="object"></a> <a href="BlockEpoch.html" title="" class="class"></a><a href="BlockEpoch.html" title="">BlockEpoch</a></li><li class="current-entities indented1"><a href="ChainNotifier$.html" title="" class="object"></a> <a href="ChainNotifier.html" title="ChainNotifier is a service that can be used to get information about the chain backend by registering notifiers for chain events." class="trait"></a><a href="ChainNotifier.html" title="ChainNotifier is a service that can be used to get information about the chain backend by registering notifiers for chain events.">ChainNotifier</a></li><li class="current-entities indented1"><a href="ChainNotifierClient$.html" title="" class="object"></a> <a href="" title="" class="trait"></a><a href="" title="">ChainNotifierClient</a></li><li class="current-entities indented1"><span class="separator"></span> <a href="ChainNotifierClientPowerApi.html" title="" class="trait"></a><a href="ChainNotifierClientPowerApi.html" title="">ChainNotifierClientPowerApi</a></li><li class="current-entities indented1"><span class="separator"></span> <a href="ChainNotifierHandler$.html" title="" class="object"></a><a href="ChainNotifierHandler$.html" title="">ChainNotifierHandler</a></li><li class="current-entities indented1"><span class="separator"></span> <a href="ChainnotifierProto$.html" title="" class="object"></a><a href="ChainnotifierProto$.html" title="">ChainnotifierProto</a></li><li class="current-entities indented1"><a href="ConfDetails$.html" title="" class="object"></a> <a href="ConfDetails.html" title="" class="class"></a><a href="ConfDetails.html" title="">ConfDetails</a></li><li class="current-entities indented1"><a href="ConfEvent$.html" title="" class="object"></a> <a href="ConfEvent.html" title="" class="class"></a><a href="C
registers an intent for a client to be notified of blocks in the chain.</p><div class="fullcomment"><div class="comment cmt"><p>RegisterBlockEpochNtfn is a synchronous response-streaming RPC that
registers an intent for a client to be notified of blocks in the chain. The
stream will return a hash and height tuple of a block for each new/stale
block in the chain. It is the client's responsibility to determine whether
the tuple returned is for a new or stale block in the chain.
A client can also request a historical backlog of blocks from a particular
point. This allows clients to be idempotent by ensuring that they do not
missing processing a single block within the chain.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifier.html" name="chainrpc.ChainNotifier" id="chainrpc.ChainNotifier" class="extype">ChainNotifier</a></dd></dl></div></li><li class="indented0 " name="chainrpc.ChainNotifier#registerConfirmationsNtfn" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="registerConfirmationsNtfn(in:chainrpc.ConfRequest):org.apache.pekko.stream.scaladsl.Source[chainrpc.ConfEvent,org.apache.pekko.NotUsed]" class="anchorToMember"></a><a id="registerConfirmationsNtfn(ConfRequest):Source[ConfEvent,NotUsed]" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#registerConfirmationsNtfn(in:chainrpc.ConfRequest):org.apache.pekko.stream.scaladsl.Source[chainrpc.ConfEvent,org.apache.pekko.NotUsed]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">registerConfirmationsNtfn</span><span class="params">(<span name="in">in: <a href="ConfRequest.html" name="chainrpc.ConfRequest" id="chainrpc.ConfRequest" class="extype">ConfRequest</a></span>)</span><span class="result">: <a href="https://pekko.apache.org/api/pekko/1.0.2/org/apache/pekko/stream/scaladsl/Source.html#org.apache.pekko.stream.scaladsl.Source" name="org.apache.pekko.stream.scaladsl.Source" id="org.apache.pekko.stream.scaladsl.Source" class="extype">Source</a>[<a href="ConfEvent.html" name="chainrpc.ConfEvent" id="chainrpc.ConfEvent" class="extype">ConfEvent</a>, <a href="https://pekko.apache.org/api/pekko/1.0.2/org/apache/pekko/NotUsed.html#org.apache.pekko.NotUsed" name="org.apache.pekko.NotUsed" id="org.apache.pekko.NotUsed" class="extype">NotUsed</a>]</span></span><p class="shortcomment cmt">RegisterConfirmationsNtfn is a synchronous response-streaming RPC that
registers an intent for a client to be notified once a confirmation request
has reached its required number of confirmations on-chain.</p><div class="fullcomment"><div class="comment cmt"><p>RegisterConfirmationsNtfn is a synchronous response-streaming RPC that
registers an intent for a client to be notified once a confirmation request
has reached its required number of confirmations on-chain.
A confirmation request must have a valid output script. It is also possible
to give a transaction ID. If the transaction ID is not set, a notification
is sent once the output script confirms. If the transaction ID is also set,
a notification is sent once the output script confirms in the given
transaction.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifier.html" name="chainrpc.ChainNotifier" id="chainrpc.ChainNotifier" class="extype">ChainNotifier</a></dd></dl></div></li><li class="indented0 " name="chainrpc.ChainNotifier#registerSpendNtfn" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="registerSpendNtfn(in:chainrpc.SpendRequest):org.apache.pekko.stream.scaladsl.Source[chainrpc.SpendEvent,org.apache.pekko.NotUsed]" class="anchorToMember"></a><a id="registerSpendNtfn(SpendRequest):Source[SpendEvent,NotUsed]" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#registerSpendNtfn(in:chainrpc.SpendRequest):org.apache.pekko.stream.scaladsl.Source[chainrpc.SpendEvent,org.apache.pekko.NotUsed]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">registerSpendNtfn</span><span class="params">(<span name="in">in: <a href="SpendRequest.html" name="chainrpc.SpendRequest" id="chainrpc.SpendRequest" class="extype">SpendRequest</a></span>)</span><span class="result">: <a href="https://pekko.apache.org/api/pekko/1.0.2/org/apache/pekko/stream/scaladsl/Source.html#org.apache.pekko.stream.scaladsl.Source" name="org.apache.pekko.stream.scaladsl.Source" id="org.apache.pekko.stream.scaladsl.Source" class="extype">Source</a>[<a href="SpendEvent.html" name="chainrpc.SpendEvent" id="chainrpc.SpendEvent" class="extype">SpendEvent</a>, <a href="https://pekko.apache.org/api/pekko/1.0.2/org/apache/pekko/NotUsed.html#org.apache.pekko.NotUsed" name="org.apache.pekko.NotUsed" id="org.apache.pekko.NotUsed" class="extype">NotUsed</a>]</span></span><p class="shortcomment cmt">RegisterSpendNtfn is a synchronous response-streaming RPC that registers an
intent for a client to be notification once a spend request has been spent
by a transaction that has confirmed on-chain.</p><div class="fullcomment"><div class="comment cmt"><p>RegisterSpendNtfn is a synchronous response-streaming RPC that registers an
intent for a client to be notification once a spend request has been spent
by a transaction that has confirmed on-chain.
A client can specify whether the spend request should be for a particular
outpoint or for an output script by specifying a zero outpoint.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifier.html" name="chainrpc.ChainNotifier" id="chainrpc.ChainNotifier" class="extype">ChainNotifier</a></dd></dl></div></li></ol></div><div class="values members"><h3>Concrete 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="../chainrpc/ChainNotifierClient.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.13/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.13/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="../chainrpc/ChainNotifierClient.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.13/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="../chainrpc/ChainNotifierClient.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.13/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.13/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.Any#asInstanceOf" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="asInstanceOf[T0]:T0" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#asInstanceOf[T0]:T0" 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">asInstanceOf</span><span class="tparams">[<span name="T0">T0</span>]</span><span class="result">: <span name="scala.Any.asInstanceOf.T0" class="extype">T0</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#clone" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="clone():Object" class="anchorToMember"></a><a id="clone():AnyRef" class="anchorToMember"></a
prefer registerBlockEpochNtfn(chainrpc.BlockEpoch) if possible.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifierClientPowerApi.html" name="chainrpc.ChainNotifierClientPowerApi" id="chainrpc.ChainNotifierClientPowerApi" class="extype">ChainNotifierClientPowerApi</a></dd></dl></div></li><li class="indented0 " name="chainrpc.ChainNotifierClientPowerApi#registerConfirmationsNtfn" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="registerConfirmationsNtfn():org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder[chainrpc.ConfRequest,chainrpc.ConfEvent]" class="anchorToMember"></a><a id="registerConfirmationsNtfn():StreamResponseRequestBuilder[ConfRequest,ConfEvent]" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#registerConfirmationsNtfn():org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder[chainrpc.ConfRequest,chainrpc.ConfEvent]" 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">registerConfirmationsNtfn</span><span class="params">()</span><span class="result">: <a href="https://pekko.apache.org/api/pekko-grpc/1.0.2/org/apache/pekko/grpc/org/apache/pekko/grpc/scaladsl/StreamResponseRequestBuilder.html#org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" name="org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" id="org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" class="extype">StreamResponseRequestBuilder</a>[<a href="ConfRequest.html" name="chainrpc.ConfRequest" id="chainrpc.ConfRequest" class="extype">ConfRequest</a>, <a href="ConfEvent.html" name="chainrpc.ConfEvent" id="chainrpc.ConfEvent" class="extype">ConfEvent</a>]</span></span><p class="shortcomment cmt">Lower level "lifted" version of the method, giving access to request metadata etc.</p><div class="fullcomment"><div class="comment cmt"><p>Lower level "lifted" version of the method, giving access to request metadata etc.
prefer registerConfirmationsNtfn(chainrpc.ConfRequest) if possible.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifierClientPowerApi.html" name="chainrpc.ChainNotifierClientPowerApi" id="chainrpc.ChainNotifierClientPowerApi" class="extype">ChainNotifierClientPowerApi</a></dd></dl></div></li><li class="indented0 " name="chainrpc.ChainNotifierClientPowerApi#registerSpendNtfn" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="registerSpendNtfn():org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder[chainrpc.SpendRequest,chainrpc.SpendEvent]" class="anchorToMember"></a><a id="registerSpendNtfn():StreamResponseRequestBuilder[SpendRequest,SpendEvent]" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#registerSpendNtfn():org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder[chainrpc.SpendRequest,chainrpc.SpendEvent]" 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">registerSpendNtfn</span><span class="params">()</span><span class="result">: <a href="https://pekko.apache.org/api/pekko-grpc/1.0.2/org/apache/pekko/grpc/org/apache/pekko/grpc/scaladsl/StreamResponseRequestBuilder.html#org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" name="org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" id="org.apache.pekko.grpc.scaladsl.StreamResponseRequestBuilder" class="extype">StreamResponseRequestBuilder</a>[<a href="SpendRequest.html" name="chainrpc.SpendRequest" id="chainrpc.SpendRequest" class="extype">SpendRequest</a>, <a href="SpendEvent.html" name="chainrpc.SpendEvent" id="chainrpc.SpendEvent" class="extype">SpendEvent</a>]</span></span><p class="shortcomment cmt">Lower level "lifted" version of the method, giving access to request metadata etc.</p><div class="fullcomment"><div class="comment cmt"><p>Lower level "lifted" version of the method, giving access to request metadata etc.
prefer registerSpendNtfn(chainrpc.SpendRequest) if possible.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="ChainNotifierClientPowerApi.html" name="chainrpc.ChainNotifierClientPowerApi" id="chainrpc.ChainNotifierClientPowerApi" class="extype">ChainNotifierClientPowerApi</a></dd></dl></div></li><li class="indented0 " name="scala.AnyRef#synchronized" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="synchronized[T0](x$1:=&gt;T0):T0" class="anchorToMember"></a><a id="synchronized[T0](=&gt;T0):T0" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#synchronized[T0](x$1:=&gt;T0):T0" 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">synchronized</span><span class="tparams">[<span name="T0">T0</span>]</span><span class="params">(<span name="arg0">arg0: =&gt; <span name="java.lang.AnyRef.synchronized.T0" class="extype">T0</span></span>)</span><span class="result">: <span name="java.lang.AnyRef.synchronized.T0" class="extype">T0</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#toString" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="toString():String" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#toString():String" 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">toString</span><span class="params">()</span><span class="result">: <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java/lang/String.html#java.lang.String" name="java.lang.String" id="java.lang.String" class="extype">String</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#wait" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="wait():Unit" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#wait():Unit" 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">wait</span><span class="params">()</span><span class="result">: <a href="https://www.scala-lang.org/api/2.13.13/scala/Unit.html#scala.Unit" name="scala.Unit" id="scala.Unit" class="extype">Unit</a></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="defval">classOf[java.lang.InterruptedException]</span></span>)</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#wait" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="wait(x$1:Long,x$2:Int):Unit" class="anchorToMember"></a><a id="wait(Long,Int):Unit" class="anchorToMember"></a> <span class="permalink"><a href="../chainrpc/ChainNotifierClient.html#wait(x$1:Long,x$2:Int):Unit" 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">wait</span><span class="params">(<span name="arg0">arg0: <a href="https://www.scala-lang.org/api/2.13.13/scala/Long.html#scala.Long" name="scala.Long" id="scala.Long" class="extype">Long</a></span>, <span name="arg1">arg1: <a href="https://www.scala-lang.org/api/2.13.13/scala/Int.html#scala.Int" name="scala.Int" id="scala.Int" class="extype">Int</a></span>)</span><span class="result">: <a href="https://www.scala-lang.org/api/2.13.13/scala/Unit.html#scala.Unit" name="scala.Unit" id="scala.Unit" class="extype">Un