trait Client extends BitcoinSLogger with StartStopAsync[BitcoindRpcClient] with NativeProcessFactory
This is the base trait for Bitcoin Core RPC clients. It defines no RPC calls except for the a ping. It contains functionality and utilities useful when working with an RPC client, like data directories, log files and whether or not the client is started.
- Alphabetic
- By Inheritance
- Client
- NativeProcessFactory
- StartStopAsync
- StartStop
- BitcoinSLogger
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract val instance: BitcoindInstance
- Attributes
- protected
- implicit abstract val system: ActorSystem
- Attributes
- protected
- abstract def version: Future[BitcoindVersion]
Concrete 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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bitcoindCall[T](command: String, parameters: List[JsValue] = List.empty, printError: Boolean = true, uriExtensionOpt: Option[String] = None)(implicit reader: Reads[T]): Future[T]
- Attributes
- protected
- def buildRequest(instance: BitcoindInstance, methodName: String, params: JsArray, uriExtensionOpt: Option[String] = None): HttpRequest
- Attributes
- protected
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- lazy val cmd: Vector[String]
The command to start the daemon on the underlying OS
The command to start the daemon on the underlying OS
- Definition Classes
- Client → NativeProcessFactory
- lazy val confFileOpt: Option[Path]
The configuration file of the Bitcoin Core daemon This returns the conf file is the underlying instance is BitcoindInstanceLocal and None if the underlying instance is BitcoindInstanceRemote
- implicit val eCPrivateKeyBytesWrites: Writes[ECPrivateKeyBytes]
- implicit val eCPrivateKeyWrites: Writes[ECPrivateKey]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- implicit val executionContext: ExecutionContext
- Attributes
- protected
- Definition Classes
- Client → NativeProcessFactory
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getDaemon: BitcoindInstance
- def getPayload(response: HttpResponse): Future[JsValue]
Parses the payload of the given response into JSON.
Parses the payload of the given response into JSON.
The command, parameters and request are given as debug parameters, and only used for printing diagnostics if things go belly-up.
- Attributes
- protected
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- implicit val importMultiAddressWrites: Writes[ImportMultiAddress]
- implicit val importMultiRequestWrites: Writes[ImportMultiRequest]
- def isAlive(): Boolean
- Definition Classes
- NativeProcessFactory
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isStartedF: Future[Boolean]
Checks whether the underlying bitcoind daemon is running
- def isStoppedF: Future[Boolean]
Checks whether the underlyind bitcoind daemon is stopped
Checks whether the underlyind bitcoind daemon is stopped
- returns
A future boolean which represents isstopped or not
- lazy val logFileOpt: Option[Path]
The log file of the Bitcoin Core daemon.
The log file of the Bitcoin Core daemon. This returns the log file if the underlying instance is org.bitcoins.rpc.config.BitcoindInstanceLocal, and None if the underlying instance is BitcoindInstanceRemote
- def logger: Logger
- Definition Classes
- BitcoinSLogger
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- implicit val network: NetworkParameters
- Attributes
- protected
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def ping(): Future[Unit]
- def sendRequest(req: HttpRequest): Future[HttpResponse]
- Attributes
- protected
- def start(): Future[BitcoindRpcClient]
Starts bitcoind on the local system.
- def startBinary(): Future[Unit]
Starts the binary by spinning up a new process
Starts the binary by spinning up a new process
- Definition Classes
- NativeProcessFactory
- def stop(): Future[BitcoindRpcClient]
Stop method for BitcoindRpcClient that is stopped, inherits from the StartStop trait
- def stopBinary(): Future[Unit]
Stops the binary by destroying the underlying operating system process
Stops the binary by destroying the underlying operating system process
If the client is a remote client (not started on the host operating system) this method is a no-op
- Definition Classes
- NativeProcessFactory
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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()
- def walletExtension(walletName: String): String
- Attributes
- protected
- implicit object ECPrivateKeyBytesWrites extends Writes[ECPrivateKeyBytes]
This is here (and not in JsonWrriters) so that the implicit network val is accessible
- implicit object ECPrivateKeyWrites extends Writes[ECPrivateKey]
This is here (and not in JsonWrriters) so that the implicit network val is accessible