Create more of a project structure in org.bitcoins.core.api, move DbR… (#1799)

* Create more of a project structure in org.bitcoins.core.api, move DbRowAutoInc into the core project

* Get website compiling again
This commit is contained in:
Chris Stewart 2020-08-12 06:13:23 -05:00 committed by GitHub
parent fa1cae2265
commit ae81dd3bb3
35 changed files with 66 additions and 40 deletions

View file

@ -3,7 +3,7 @@ package org.bitcoins.server
import akka.actor.ActorSystem
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.server._
import org.bitcoins.core.api.CoreApi
import org.bitcoins.core.api.core.CoreApi
import scala.util.{Failure, Success}

View file

@ -3,7 +3,9 @@ package org.bitcoins.rpc.client.common
import java.io.File
import akka.actor.ActorSystem
import org.bitcoins.core.api.{ChainQueryApi, FeeRateApi, NodeApi}
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.protocol.BlockStamp
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.util.FutureUtil

View file

@ -7,7 +7,7 @@ import org.bitcoins.commons.jsonmodels.bitcoind.{
}
import org.bitcoins.commons.serializers.JsonSerializers._
import org.bitcoins.commons.serializers.JsonWriters._
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.script.crypto.HashType
import org.bitcoins.crypto.ECPrivateKey

View file

@ -8,7 +8,7 @@ import org.bitcoins.commons.jsonmodels.bitcoind.{
}
import org.bitcoins.commons.serializers.JsonSerializers._
import org.bitcoins.commons.serializers.JsonWriters._
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.script.crypto.HashType
import org.bitcoins.crypto.ECPrivateKey

View file

@ -7,7 +7,7 @@ import org.bitcoins.commons.jsonmodels.bitcoind.{
}
import org.bitcoins.commons.serializers.JsonSerializers._
import org.bitcoins.commons.serializers.JsonWriters._
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.script.crypto.HashType
import org.bitcoins.crypto.ECPrivateKey

View file

@ -10,8 +10,8 @@ import org.bitcoins.commons.jsonmodels.bitcoind.{
}
import org.bitcoins.commons.serializers.JsonSerializers._
import org.bitcoins.commons.serializers.JsonWriters._
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.gcs.FilterType
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.script.crypto.HashType

View file

@ -5,7 +5,7 @@ import org.bitcoins.chain.models.{
CompactFilterDb,
CompactFilterHeaderDb
}
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.gcs.FilterHeader
import org.bitcoins.core.p2p.CompactFilterMessage
import org.bitcoins.core.protocol.BlockStamp

View file

@ -5,7 +5,7 @@ import org.bitcoins.chain.api.ChainApi
import org.bitcoins.chain.config.ChainAppConfig
import org.bitcoins.chain.models._
import org.bitcoins.chain.pow.Pow
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.gcs.FilterHeader
import org.bitcoins.core.number.UInt32
import org.bitcoins.core.p2p.CompactFilterMessage

View file

@ -1,6 +1,6 @@
package org.bitcoins.core
import org.bitcoins.core.api.CoreApi
import org.bitcoins.core.api.core.CoreApi
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.psbt.PSBT

View file

@ -1,4 +1,4 @@
package org.bitcoins.core.api
package org.bitcoins.core.api.chain
import org.bitcoins.core.gcs.GolombFilter
import org.bitcoins.core.protocol.BlockStamp
@ -11,8 +11,6 @@ import scala.concurrent.{ExecutionContext, Future}
*/
trait ChainQueryApi {
import org.bitcoins.core.api.ChainQueryApi._
/** Gets the height of the given block */
def getBlockHeight(blockHash: DoubleSha256DigestBE): Future[Option[Int]]
@ -39,7 +37,7 @@ trait ChainQueryApi {
def getFiltersBetweenHeights(
startHeight: Int,
endHeight: Int): Future[Vector[FilterResponse]]
endHeight: Int): Future[Vector[ChainQueryApi.FilterResponse]]
/** Gets the block height of the closest block to the given time */
def epochSecondToBlockHeight(time: Long): Future[Int]

View file

@ -1,4 +1,4 @@
package org.bitcoins.core.api
package org.bitcoins.core.api.core
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.psbt.PSBT

View file

@ -1,4 +1,4 @@
package org.bitcoins.db
package org.bitcoins.core.api.db
/** This is meant to be coupled with [[CRUDAutoInc]]
* and [[TableAutoInc]] to allow for automatically incrementing an id

View file

@ -1,4 +1,4 @@
package org.bitcoins.core.api
package org.bitcoins.core.api.feeprovider
import org.bitcoins.core.wallet.fee.FeeUnit

View file

@ -1,4 +1,4 @@
package org.bitcoins.core.api
package org.bitcoins.core.api.node
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.crypto.DoubleSha256Digest

View file

@ -0,0 +1,5 @@
package org.bitcoins.core.api.node
import org.bitcoins.core.api.chain.ChainQueryApi
case class NodeChainQueryApi(nodeApi: NodeApi, chainQueryApi: ChainQueryApi)

View file

@ -1,5 +1,7 @@
package org.bitcoins.db
import org.bitcoins.core.api.db.DbRowAutoInc
import scala.concurrent.{ExecutionContext, Future}
abstract class CRUDAutoInc[T <: DbRowAutoInc[T]](implicit

View file

@ -6,7 +6,8 @@ title: Chain Query API
```scala mdoc:invisible
import akka.actor.ActorSystem
import org.bitcoins.core.api._
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.crypto.{DoubleSha256Digest, DoubleSha256DigestBE}
import org.bitcoins.core.gcs.{FilterType, GolombFilter}
import org.bitcoins.core.protocol.BlockStamp

View file

@ -6,6 +6,7 @@ title: Node API
```scala mdoc:invisible
import akka.actor.ActorSystem
import org.bitcoins.core.api._
import org.bitcoins.core.api.node._
import org.bitcoins.crypto.DoubleSha256Digest
import org.bitcoins.core.protocol.blockchain.Block
import org.bitcoins.core.protocol.transaction.Transaction

View file

@ -49,7 +49,9 @@ import org.bitcoins.chain.api.ChainApi
import org.bitcoins.chain.models._
import org.bitcoins.core.api._
import ChainQueryApi._
import chain._
import chain.ChainQueryApi.FilterResponse
import node._
import org.bitcoins.crypto._
import org.bitcoins.core.protocol._
import org.bitcoins.core.protocol.transaction._

View file

@ -1,6 +1,6 @@
package org.bitcoins.feeprovider
import org.bitcoins.core.api.FeeRateApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.currency.Satoshis
import org.bitcoins.core.wallet.fee.SatoshisPerByte
import org.bitcoins.feeprovider.MempoolSpaceTarget._

View file

@ -1,6 +1,6 @@
package org.bitcoins.feeprovider
import org.bitcoins.core.api.FeeRateApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.wallet.fee.FeeUnit
import scala.concurrent.Future

View file

@ -6,7 +6,7 @@ import akka.actor.ActorSystem
import akka.http.scaladsl.Http
import akka.http.scaladsl.model.{HttpRequest, Uri}
import akka.util.ByteString
import org.bitcoins.core.api.FeeRateApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.util.TimeUtil
import org.bitcoins.core.wallet.fee.FeeUnit

View file

@ -2,7 +2,7 @@ package org.bitcoins.node
import akka.actor.ActorSystem
import org.bitcoins.chain.config.ChainAppConfig
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.protocol.BlockStamp
import org.bitcoins.node.config.NodeAppConfig
import org.bitcoins.node.models.Peer

View file

@ -8,7 +8,8 @@ import org.bitcoins.chain.models.{
CompactFilterDAO,
CompactFilterHeaderDAO
}
import org.bitcoins.core.api.{ChainQueryApi, NodeApi}
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.p2p.{NetworkPayload, TypeIdentifier}
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.util.FutureUtil

View file

@ -2,7 +2,7 @@ package org.bitcoins.node
import akka.actor.ActorSystem
import org.bitcoins.chain.config.ChainAppConfig
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.bloom.BloomFilter
import org.bitcoins.core.protocol.transaction.Transaction
import org.bitcoins.core.protocol.{BitcoinAddress, BlockStamp}

View file

@ -2,7 +2,7 @@ package org.bitcoins.node.models
import java.net.InetSocketAddress
import org.bitcoins.db.DbRowAutoInc
import org.bitcoins.core.api.db.DbRowAutoInc
import org.bitcoins.rpc.config.BitcoindInstance
case class Peer(socket: InetSocketAddress, id: Option[Long] = None)

View file

@ -2,8 +2,10 @@ package org.bitcoins.testkit.chain
import org.bitcoins.chain.blockchain.sync.FilterWithHeaderHash
import org.bitcoins.commons.jsonmodels.bitcoind.GetBlockFilterResult
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.{ChainQueryApi, NodeApi, NodeChainQueryApi}
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.node.{NodeApi, NodeChainQueryApi}
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.node
import org.bitcoins.core.gcs.FilterType
import org.bitcoins.core.protocol.BlockStamp
import org.bitcoins.core.protocol.blockchain.BlockHeader
@ -180,7 +182,7 @@ abstract class SyncUtil extends BitcoinSLogger {
ec: ExecutionContext): NodeChainQueryApi = {
val chainQuery = SyncUtil.getTestChainQueryApi(bitcoind)
val nodeApi = SyncUtil.getNodeApi(bitcoind)
NodeChainQueryApi(nodeApi, chainQuery)
node.NodeChainQueryApi(nodeApi, chainQuery)
}
def getNodeChainQueryApiWalletCallback(
@ -190,7 +192,7 @@ abstract class SyncUtil extends BitcoinSLogger {
val chainQuery = SyncUtil.getTestChainQueryApi(bitcoind)
val nodeApi =
SyncUtil.getNodeApiWalletCallback(bitcoind, walletF)
NodeChainQueryApi(nodeApi, chainQuery)
node.NodeChainQueryApi(nodeApi, chainQuery)
}
}

View file

@ -10,7 +10,7 @@ import org.bitcoins.chain.models.{
CompactFilterDb,
CompactFilterHeaderDb
}
import org.bitcoins.core.api.ChainQueryApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.config.NetworkParameters
import org.bitcoins.core.gcs.FilterHeader
import org.bitcoins.core.p2p.CompactFilterMessage

View file

@ -2,8 +2,10 @@ package org.bitcoins.testkit.wallet
import akka.actor.ActorSystem
import com.typesafe.config.{Config, ConfigFactory}
import org.bitcoins.core.api.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.{ChainQueryApi, FeeRateApi, NodeApi}
import org.bitcoins.core.api.chain.ChainQueryApi.FilterResponse
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.currency._
import org.bitcoins.core.gcs.BlockFilter
import org.bitcoins.core.protocol.BlockStamp

View file

@ -2,7 +2,8 @@ package org.bitcoins.testkit.wallet
import akka.actor.ActorSystem
import com.typesafe.config.Config
import org.bitcoins.core.api.{ChainQueryApi, NodeApi}
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.currency.CurrencyUnit
import org.bitcoins.core.hd.HDAccount
import org.bitcoins.core.protocol.BitcoinAddress

View file

@ -3,7 +3,9 @@ package org.bitcoins.wallet
import java.time.Instant
import org.bitcoins.commons.jsonmodels.wallet.CoinSelectionAlgo
import org.bitcoins.core.api.{ChainQueryApi, FeeRateApi, NodeApi}
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.bloom.{BloomFilter, BloomUpdateAll}
import org.bitcoins.core.config.NetworkParameters
import org.bitcoins.core.crypto.ExtPublicKey

View file

@ -3,7 +3,9 @@ package org.bitcoins.wallet.api
import java.time.Instant
import org.bitcoins.commons.jsonmodels.wallet.CoinSelectionAlgo
import org.bitcoins.core.api.{ChainQueryApi, FeeRateApi, NodeApi}
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.config.NetworkParameters
import org.bitcoins.core.currency.CurrencyUnit
import org.bitcoins.core.hd.AddressType

View file

@ -4,7 +4,9 @@ import java.nio.file.{Files, Path}
import java.util.concurrent.TimeUnit
import com.typesafe.config.Config
import org.bitcoins.core.api.{ChainQueryApi, FeeRateApi, NodeApi}
import org.bitcoins.core.api.node.NodeApi
import org.bitcoins.core.api.chain.ChainQueryApi
import org.bitcoins.core.api.feeprovider.FeeRateApi
import org.bitcoins.core.hd._
import org.bitcoins.core.util.{FutureUtil, Mutable}
import org.bitcoins.db.{AppConfig, AppConfigFactory, JdbcProfileComponent}

View file

@ -2,7 +2,10 @@ package org.bitcoins.wallet.internal
import java.util.concurrent.Executors
import org.bitcoins.core.api.ChainQueryApi.{FilterResponse, InvalidBlockRange}
import org.bitcoins.core.api.chain.ChainQueryApi.{
FilterResponse,
InvalidBlockRange
}
import org.bitcoins.core.gcs.SimpleFilterMatcher
import org.bitcoins.core.hd.{HDAccount, HDChainType}
import org.bitcoins.core.protocol.BlockStamp.BlockHeight

View file

@ -1,5 +1,6 @@
package org.bitcoins.wallet.models
import org.bitcoins.core.api.db.DbRowAutoInc
import org.bitcoins.core.hd.{
HDPath,
LegacyHDPath,
@ -20,7 +21,6 @@ import org.bitcoins.core.wallet.utxo.{
TxoState
}
import org.bitcoins.crypto.{DoubleSha256DigestBE, Sign}
import org.bitcoins.db.DbRowAutoInc
import org.bitcoins.keymanager.bip39.BIP39KeyManager
/**