case class RescanHandling(transactionProcessing: TransactionProcessingApi, accountHandling: AccountHandlingApi, addressHandling: AddressHandlingApi, chainQueryApi: ChainQueryApi, nodeApi: NodeApi, walletDAOs: WalletDAOs)(implicit walletConfig: WalletAppConfig, system: ActorSystem) extends RescanHandlingApi with WalletLogger with Product with Serializable
- Alphabetic
- By Inheritance
- RescanHandling
- Serializable
- Product
- Equals
- WalletLogger
- BitcoinSLogger
- RescanHandlingApi
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new RescanHandling(transactionProcessing: TransactionProcessingApi, accountHandling: AccountHandlingApi, addressHandling: AddressHandlingApi, chainQueryApi: ChainQueryApi, nodeApi: NodeApi, walletDAOs: WalletDAOs)(implicit walletConfig: WalletAppConfig, system: ActorSystem)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val accountHandling: AccountHandlingApi
- val addressHandling: AddressHandlingApi
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val chainQueryApi: ChainQueryApi
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def discoveryBatchSize(): Int
- Definition Classes
- RescanHandling → RescanHandlingApi
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def findMatches(filters: Vector[FilterResponse], scripts: Vector[ScriptPubKey], parallelismLevel: Int): Future[Vector[BlockMatchingResponse]]
- Definition Classes
- RescanHandling → RescanHandlingApi
- def fullRescanNeutrinoWallet(addressBatchSize: Int, force: Boolean = false): Future[RescanState]
Helper method to rescan the ENTIRE blockchain.
Helper method to rescan the ENTIRE blockchain.
- Definition Classes
- RescanHandlingApi
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isRescanning(): Future[Boolean]
- Definition Classes
- RescanHandling → RescanHandlingApi
- def logger: Logger
- Definition Classes
- BitcoinSLogger
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val nodeApi: NodeApi
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def rescanNeutrinoWallet(account: HDAccount, startOpt: Option[BlockStamp], endOpt: Option[BlockStamp], addressBatchSize: Int, useCreationTime: Boolean = true, force: Boolean = false): Future[RescanState]
<invalid inheritdoc annotation>
- def rescanNeutrinoWallet(startOpt: Option[BlockStamp], endOpt: Option[BlockStamp], addressBatchSize: Int, useCreationTime: Boolean, force: Boolean): Future[RescanState]
Recreates the account using BIP-157 approach
Recreates the account using BIP-157 approach
DANGER! This method removes all records from the wallet database and creates new ones while the account discovery process.
The Wallet UI should check if the database is empty before calling this method and let the end users to decide whether they want to proceed or not.
This method generates addressBatchSize of addresses, then matches them against the BIP-158 compact filters, and downloads and processes the matched blocks. This method keeps doing the steps until there are WalletConfig.addressGapLimit or more unused addresses in a row. In this case it considers the discovery process completed.
addressBatchSize - the number of addresses we should generate from a keychain to attempt to match in in a rescan WalletConfig.addressGapLimit - the number of addresses required to go without a match before we determine that our wallet is "discovered". For instance, if addressBatchSize=100, and AddressGapLimit=20 we do a rescan and the last address we find containing funds is at index 75, we would not generate more addresses to try and rescan. However if the last index containing funds was 81, we would generate another 100 addresses from the keychain and attempt to rescan those.
- startOpt
start block (if None it starts from the genesis block)
- endOpt
end block (if None it ends at the current tip)
- addressBatchSize
how many addresses to match in a single pass
- Definition Classes
- RescanHandling → RescanHandlingApi
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val transactionProcessing: TransactionProcessingApi
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- val walletDAOs: WalletDAOs