mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-03-30 15:08:33 +00:00
[NOD-1476] Make further design changes (#965)
* [NOD-1476] Add dependency to BlockRelationStore in BlockProcessor. * [NOD-1476] Add dependency to BlockStatusStore in BlockValidator. * [NOD-1476] Add dependency to GHOSTDAGManager in BlockValidator. * [NOD-1476] Rename CalculateConsensusStateChanges to AddBlockToVirtual. * [NOD-1476] Remove RestoreDiffFromVirtual. * [NOD-1476] Remove RestorePastUTXOSet. * [NOD-1476] Add dependency to GHOSTDAGDataStore in ConsensusStateManager. * [NOD-1476] Rename CalculateAcceptanceDataAndUTXOMultiset to just CalculateAcceptanceData. * [NOD-1476] Remove UTXODiffManager and add dependencies to AcceptanceManager. * [NOD-1476] Rename CalculateAcceptanceData to CalculateAcceptanceDataAndMultiset. * [NOD-1476] Add dependency to DAGTopologyManager from ConsensusStateManager. * [NOD-1476] Add dependency to BlockStore from ConsensusStateManager. * [NOD-1476] Add dependency to PruningManager from ConsensusStateManager. * [NOD-1476] Remove unnecessary stuff from ConsensusStateChanges. * [NOD-1476] Add dependency to UTXODiffStore from ConsensusStateManager. * [NOD-1476] Add tips to BlockRelationsStore. * [NOD-1476] Add dependency to BlockRelationsStore from ConsensusStateManager. * [NOD-1476] Remove Tips() from ConsensusStateStore. * [NOD-1476] Remove acceptanceManager. * [NOD-1476] Remove irrelevant functions out of ConsensusStateManager.
This commit is contained in:
parent
45882343e6
commit
b413760136
@ -14,12 +14,15 @@ func New() model.BlockRelationStore {
|
||||
return &blockRelationStore{}
|
||||
}
|
||||
|
||||
// Stage stages the given blockRelationData for the given blockHash
|
||||
func (brs *blockRelationStore) Stage(blockHash *externalapi.DomainHash, parentHashes []*externalapi.DomainHash) {
|
||||
func (brs *blockRelationStore) StageBlockRelation(blockHash *externalapi.DomainHash, parentHashes []*externalapi.DomainHash) {
|
||||
panic("implement me")
|
||||
}
|
||||
|
||||
func (brs *blockRelationStore) IsStaged() bool {
|
||||
func (brs *blockRelationStore) StageTips(tipHashess []*externalapi.DomainHash) {
|
||||
panic("implement me")
|
||||
}
|
||||
|
||||
func (brs *blockRelationStore) IsAnythingStaged() bool {
|
||||
panic("implement me")
|
||||
}
|
||||
|
||||
@ -31,7 +34,10 @@ func (brs *blockRelationStore) Commit(dbTx model.DBTxProxy) error {
|
||||
panic("implement me")
|
||||
}
|
||||
|
||||
// Get gets the blockRelationData associated with the given blockHash
|
||||
func (brs *blockRelationStore) Get(dbContext model.DBContextProxy, blockHash *externalapi.DomainHash) (*model.BlockRelations, error) {
|
||||
return nil, nil
|
||||
func (brs *blockRelationStore) BlockRelation(dbContext model.DBContextProxy, blockHash *externalapi.DomainHash) (*model.BlockRelations, error) {
|
||||
panic("implement me")
|
||||
}
|
||||
|
||||
func (brs *blockRelationStore) Tips(dbContext model.DBContextProxy) ([]*externalapi.DomainHash, error) {
|
||||
panic("implement me")
|
||||
}
|
||||
|
@ -35,8 +35,3 @@ func (css *consensusStateStore) Commit(dbTx model.DBTxProxy) error {
|
||||
func (css *consensusStateStore) UTXOByOutpoint(dbContext model.DBContextProxy, outpoint *externalapi.DomainOutpoint) (*externalapi.UTXOEntry, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
// Tips returns the current tips
|
||||
func (css *consensusStateStore) Tips(dbContext model.DBContextProxy) ([]*externalapi.DomainHash, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
@ -13,7 +13,6 @@ import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/datastructures/reachabilitydatastore"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/datastructures/utxodiffstore"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/acceptancemanager"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/blockprocessor"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/blockvalidator"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/consensusstatemanager"
|
||||
@ -25,7 +24,6 @@ import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/pruningmanager"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/reachabilitytree"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/transactionvalidator"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/processes/utxodiffmanager"
|
||||
"github.com/kaspanet/kaspad/domain/dagconfig"
|
||||
"github.com/kaspanet/kaspad/infrastructure/db/dbaccess"
|
||||
)
|
||||
@ -69,23 +67,26 @@ func (f *factory) NewConsensus(dagParams *dagconfig.Params, databaseContext *dba
|
||||
dagTraversalManager := dagtraversalmanager.New(
|
||||
dagTopologyManager,
|
||||
ghostdagManager)
|
||||
utxoDiffManager := utxodiffmanager.New(utxoDiffStore)
|
||||
acceptanceManager := acceptancemanager.New(utxoDiffManager)
|
||||
pruningManager := pruningmanager.New(
|
||||
dagTraversalManager,
|
||||
dagTopologyManager,
|
||||
pruningStore,
|
||||
blockStatusStore,
|
||||
consensusStateStore)
|
||||
consensusStateManager := consensusstatemanager.New(
|
||||
domainDBContext,
|
||||
dagParams,
|
||||
ghostdagManager,
|
||||
dagTopologyManager,
|
||||
pruningManager,
|
||||
blockStatusStore,
|
||||
ghostdagDataStore,
|
||||
consensusStateStore,
|
||||
multisetStore,
|
||||
blockStore,
|
||||
ghostdagManager,
|
||||
acceptanceManager,
|
||||
blockStatusStore)
|
||||
pruningManager := pruningmanager.New(
|
||||
dagTraversalManager,
|
||||
pruningStore,
|
||||
dagTopologyManager,
|
||||
blockStatusStore,
|
||||
consensusStateManager)
|
||||
utxoDiffStore,
|
||||
blockRelationStore,
|
||||
acceptanceDataStore)
|
||||
difficultyManager := difficultymanager.New(
|
||||
ghostdagManager)
|
||||
pastMedianTimeManager := pastmediantimemanager.New(
|
||||
@ -96,8 +97,8 @@ func (f *factory) NewConsensus(dagParams *dagconfig.Params, databaseContext *dba
|
||||
difficultyManager,
|
||||
pastMedianTimeManager,
|
||||
transactionValidator,
|
||||
utxoDiffManager,
|
||||
acceptanceManager)
|
||||
ghostdagManager,
|
||||
blockStatusStore)
|
||||
blockProcessor := blockprocessor.New(
|
||||
dagParams,
|
||||
domainDBContext,
|
||||
@ -111,7 +112,8 @@ func (f *factory) NewConsensus(dagParams *dagconfig.Params, databaseContext *dba
|
||||
ghostdagManager,
|
||||
acceptanceDataStore,
|
||||
blockStore,
|
||||
blockStatusStore)
|
||||
blockStatusStore,
|
||||
blockRelationStore)
|
||||
|
||||
return &consensus{
|
||||
consensusStateManager: consensusStateManager,
|
||||
|
@ -5,11 +5,6 @@ import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
// ConsensusStateChanges represents a set of changes that need to be made
|
||||
// to transition the current consensus state to a new one
|
||||
type ConsensusStateChanges struct {
|
||||
AcceptanceData *BlockAcceptanceData
|
||||
VirtualUTXODiff *UTXODiff
|
||||
NewTips []*externalapi.DomainHash
|
||||
|
||||
NewBlockUTXODiff *UTXODiff
|
||||
NewBlockMultiset Multiset
|
||||
ParentDiffChanges *map[*externalapi.DomainHash]UTXODiff
|
||||
VirtualUTXODiff *UTXODiff
|
||||
VirtualDiffParents []*externalapi.DomainHash
|
||||
}
|
||||
|
@ -4,9 +4,11 @@ import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
|
||||
// BlockRelationStore represents a store of BlockRelations
|
||||
type BlockRelationStore interface {
|
||||
Stage(blockHash *externalapi.DomainHash, parentHashes []*externalapi.DomainHash)
|
||||
IsStaged() bool
|
||||
StageBlockRelation(blockHash *externalapi.DomainHash, parentHashes []*externalapi.DomainHash)
|
||||
StageTips(tipHashess []*externalapi.DomainHash)
|
||||
IsAnythingStaged() bool
|
||||
Discard()
|
||||
Commit(dbTx DBTxProxy) error
|
||||
Get(dbContext DBContextProxy, blockHash *externalapi.DomainHash) (*BlockRelations, error)
|
||||
BlockRelation(dbContext DBContextProxy, blockHash *externalapi.DomainHash) (*BlockRelations, error)
|
||||
Tips(dbContext DBContextProxy) ([]*externalapi.DomainHash, error)
|
||||
}
|
||||
|
@ -9,5 +9,4 @@ type ConsensusStateStore interface {
|
||||
Discard()
|
||||
Commit(dbTx DBTxProxy) error
|
||||
UTXOByOutpoint(dbContext DBContextProxy, outpoint *externalapi.DomainOutpoint) (*externalapi.UTXOEntry, error)
|
||||
Tips(dbContext DBContextProxy) ([]*externalapi.DomainHash, error)
|
||||
}
|
||||
|
@ -1,9 +0,0 @@
|
||||
package model
|
||||
|
||||
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
|
||||
// AcceptanceManager manages transaction acceptance
|
||||
// and related data
|
||||
type AcceptanceManager interface {
|
||||
CalculateAcceptanceDataAndUTXOMultiset(blockHash *externalapi.DomainHash) error
|
||||
}
|
@ -4,8 +4,6 @@ import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
|
||||
// ConsensusStateManager manages the node's consensus state
|
||||
type ConsensusStateManager interface {
|
||||
CalculateConsensusStateChanges(blockHash *externalapi.DomainHash) error
|
||||
AddBlockToVirtual(blockHash *externalapi.DomainHash) error
|
||||
VirtualData() (medianTime int64, blueScore uint64, err error)
|
||||
RestorePastUTXOSet(blockHash *externalapi.DomainHash) (ReadOnlyUTXOSet, error)
|
||||
RestoreDiffFromVirtual(utxoDiff *UTXODiff, virtualDiffParentHash *externalapi.DomainHash) (*UTXODiff, error)
|
||||
}
|
||||
|
@ -1,10 +0,0 @@
|
||||
package model
|
||||
|
||||
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
|
||||
// UTXODiffManager provides methods to access
|
||||
// and store UTXO diffs
|
||||
type UTXODiffManager interface {
|
||||
RestoreBlockDiffFromVirtualDiffParent(blockHash *externalapi.DomainHash) (utxoDiff *UTXODiff,
|
||||
virtualDiffParentHash *externalapi.DomainHash, err error)
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
package acceptancemanager
|
||||
|
||||
import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
)
|
||||
|
||||
// AcceptanceManager manages transaction acceptance
|
||||
// and related data
|
||||
type acceptanceManager struct {
|
||||
utxoDiffManager model.UTXODiffManager
|
||||
}
|
||||
|
||||
// New instantiates a new AcceptanceManager
|
||||
func New(utxoDiffManager model.UTXODiffManager) model.AcceptanceManager {
|
||||
return &acceptanceManager{
|
||||
utxoDiffManager: utxoDiffManager,
|
||||
}
|
||||
}
|
||||
|
||||
func (a *acceptanceManager) CalculateAcceptanceDataAndUTXOMultiset(blockHash *externalapi.DomainHash) error {
|
||||
panic("implement me")
|
||||
}
|
@ -22,8 +22,9 @@ type blockProcessor struct {
|
||||
ghostdagManager model.GHOSTDAGManager
|
||||
pastMedianTimeManager model.PastMedianTimeManager
|
||||
acceptanceDataStore model.AcceptanceDataStore
|
||||
blockMessageStore model.BlockStore
|
||||
blockStore model.BlockStore
|
||||
blockStatusStore model.BlockStatusStore
|
||||
blockRelationStore model.BlockRelationStore
|
||||
}
|
||||
|
||||
// New instantiates a new BlockProcessor
|
||||
@ -39,8 +40,9 @@ func New(
|
||||
pastMedianTimeManager model.PastMedianTimeManager,
|
||||
ghostdagManager model.GHOSTDAGManager,
|
||||
acceptanceDataStore model.AcceptanceDataStore,
|
||||
blockMessageStore model.BlockStore,
|
||||
blockStatusStore model.BlockStatusStore) model.BlockProcessor {
|
||||
blockStore model.BlockStore,
|
||||
blockStatusStore model.BlockStatusStore,
|
||||
blockRelationStore model.BlockRelationStore) model.BlockProcessor {
|
||||
|
||||
return &blockProcessor{
|
||||
dagParams: dagParams,
|
||||
@ -55,8 +57,9 @@ func New(
|
||||
|
||||
consensusStateManager: consensusStateManager,
|
||||
acceptanceDataStore: acceptanceDataStore,
|
||||
blockMessageStore: blockMessageStore,
|
||||
blockStore: blockStore,
|
||||
blockStatusStore: blockStatusStore,
|
||||
blockRelationStore: blockRelationStore,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -12,8 +12,9 @@ type blockValidator struct {
|
||||
difficultyManager model.DifficultyManager
|
||||
pastMedianTimeManager model.PastMedianTimeManager
|
||||
transactionValidator model.TransactionValidator
|
||||
utxoDiffManager model.UTXODiffManager
|
||||
acceptanceManager model.AcceptanceManager
|
||||
ghostdagManager model.GHOSTDAGManager
|
||||
|
||||
blockStatusStore model.BlockStatusStore
|
||||
}
|
||||
|
||||
// New instantiates a new BlockValidator
|
||||
@ -22,16 +23,17 @@ func New(
|
||||
difficultyManager model.DifficultyManager,
|
||||
pastMedianTimeManager model.PastMedianTimeManager,
|
||||
transactionValidator model.TransactionValidator,
|
||||
utxoDiffManager model.UTXODiffManager,
|
||||
acceptanceManager model.AcceptanceManager) model.BlockValidator {
|
||||
ghostdagManager model.GHOSTDAGManager,
|
||||
blockStatusStore model.BlockStatusStore) model.BlockValidator {
|
||||
|
||||
return &blockValidator{
|
||||
consensusStateManager: consensusStateManager,
|
||||
difficultyManager: difficultyManager,
|
||||
pastMedianTimeManager: pastMedianTimeManager,
|
||||
transactionValidator: transactionValidator,
|
||||
utxoDiffManager: utxoDiffManager,
|
||||
acceptanceManager: acceptanceManager,
|
||||
ghostdagManager: ghostdagManager,
|
||||
|
||||
blockStatusStore: blockStatusStore,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -9,44 +9,62 @@ import (
|
||||
|
||||
// consensusStateManager manages the node's consensus state
|
||||
type consensusStateManager struct {
|
||||
dagParams *dagconfig.Params
|
||||
dagParams *dagconfig.Params
|
||||
databaseContext *database.DomainDBContext
|
||||
|
||||
databaseContext *database.DomainDBContext
|
||||
ghostdagManager model.GHOSTDAGManager
|
||||
dagTopologyManager model.DAGTopologyManager
|
||||
pruningManager model.PruningManager
|
||||
|
||||
blockStatusStore model.BlockStatusStore
|
||||
ghostdagDataStore model.GHOSTDAGDataStore
|
||||
consensusStateStore model.ConsensusStateStore
|
||||
multisetStore model.MultisetStore
|
||||
blockStore model.BlockStore
|
||||
ghostdagManager model.GHOSTDAGManager
|
||||
acceptanceManager model.AcceptanceManager
|
||||
blockStatusStore model.BlockStatusStore
|
||||
utxoDiffStore model.UTXODiffStore
|
||||
blockRelationStore model.BlockRelationStore
|
||||
acceptanceDataStore model.AcceptanceDataStore
|
||||
}
|
||||
|
||||
// New instantiates a new ConsensusStateManager
|
||||
func New(
|
||||
databaseContext *database.DomainDBContext,
|
||||
dagParams *dagconfig.Params,
|
||||
ghostdagManager model.GHOSTDAGManager,
|
||||
dagTopologyManager model.DAGTopologyManager,
|
||||
pruningManager model.PruningManager,
|
||||
blockStatusStore model.BlockStatusStore,
|
||||
ghostdagDataStore model.GHOSTDAGDataStore,
|
||||
consensusStateStore model.ConsensusStateStore,
|
||||
multisetStore model.MultisetStore,
|
||||
blockStore model.BlockStore,
|
||||
ghostdagManager model.GHOSTDAGManager,
|
||||
acceptanceManager model.AcceptanceManager,
|
||||
blockStatusStore model.BlockStatusStore) model.ConsensusStateManager {
|
||||
utxoDiffStore model.UTXODiffStore,
|
||||
blockRelationStore model.BlockRelationStore,
|
||||
acceptanceDataStore model.AcceptanceDataStore) model.ConsensusStateManager {
|
||||
|
||||
return &consensusStateManager{
|
||||
dagParams: dagParams,
|
||||
dagParams: dagParams,
|
||||
databaseContext: databaseContext,
|
||||
|
||||
ghostdagManager: ghostdagManager,
|
||||
dagTopologyManager: dagTopologyManager,
|
||||
pruningManager: pruningManager,
|
||||
|
||||
databaseContext: databaseContext,
|
||||
consensusStateStore: consensusStateStore,
|
||||
multisetStore: multisetStore,
|
||||
blockStore: blockStore,
|
||||
ghostdagManager: ghostdagManager,
|
||||
acceptanceManager: acceptanceManager,
|
||||
blockStatusStore: blockStatusStore,
|
||||
ghostdagDataStore: ghostdagDataStore,
|
||||
consensusStateStore: consensusStateStore,
|
||||
utxoDiffStore: utxoDiffStore,
|
||||
blockRelationStore: blockRelationStore,
|
||||
acceptanceDataStore: acceptanceDataStore,
|
||||
}
|
||||
}
|
||||
|
||||
// CalculateConsensusStateChanges returns a set of changes that must occur in order
|
||||
// to transition the current consensus state into the one including the given block
|
||||
func (csm *consensusStateManager) CalculateConsensusStateChanges(blockHash *externalapi.DomainHash) error {
|
||||
// AddBlockToVirtual submits the given block to be added to the
|
||||
// current virtual. This process may result in a new virtual block
|
||||
// getting created
|
||||
func (csm *consensusStateManager) AddBlockToVirtual(blockHash *externalapi.DomainHash) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -54,14 +72,3 @@ func (csm *consensusStateManager) CalculateConsensusStateChanges(blockHash *exte
|
||||
func (csm *consensusStateManager) VirtualData() (medianTime int64, blueScore uint64, err error) {
|
||||
return 0, 0, nil
|
||||
}
|
||||
|
||||
// RestoreUTXOSet calculates and returns the UTXOSet of the given blockHash
|
||||
func (csm *consensusStateManager) RestorePastUTXOSet(blockHash *externalapi.DomainHash) (model.ReadOnlyUTXOSet, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
// RestoreDiffFromVirtual restores the diff between the given virtualDiffParentHash
|
||||
// and the virtual
|
||||
func (csm *consensusStateManager) RestoreDiffFromVirtual(utxoDiff *model.UTXODiff, virtualDiffParentHash *externalapi.DomainHash) (*model.UTXODiff, error) {
|
||||
panic("implement me")
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ func New(
|
||||
|
||||
// Parents returns the DAG parents of the given blockHash
|
||||
func (dtm *dagTopologyManager) Parents(blockHash *externalapi.DomainHash) ([]*externalapi.DomainHash, error) {
|
||||
blockRelations, err := dtm.blockRelationStore.Get(dtm.databaseContext, blockHash)
|
||||
blockRelations, err := dtm.blockRelationStore.BlockRelation(dtm.databaseContext, blockHash)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -38,7 +38,7 @@ func (dtm *dagTopologyManager) Parents(blockHash *externalapi.DomainHash) ([]*ex
|
||||
|
||||
// Children returns the DAG children of the given blockHash
|
||||
func (dtm *dagTopologyManager) Children(blockHash *externalapi.DomainHash) ([]*externalapi.DomainHash, error) {
|
||||
blockRelations, err := dtm.blockRelationStore.Get(dtm.databaseContext, blockHash)
|
||||
blockRelations, err := dtm.blockRelationStore.BlockRelation(dtm.databaseContext, blockHash)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -47,7 +47,7 @@ func (dtm *dagTopologyManager) Children(blockHash *externalapi.DomainHash) ([]*e
|
||||
|
||||
// IsParentOf returns true if blockHashA is a direct DAG parent of blockHashB
|
||||
func (dtm *dagTopologyManager) IsParentOf(blockHashA *externalapi.DomainHash, blockHashB *externalapi.DomainHash) (bool, error) {
|
||||
blockRelations, err := dtm.blockRelationStore.Get(dtm.databaseContext, blockHashB)
|
||||
blockRelations, err := dtm.blockRelationStore.BlockRelation(dtm.databaseContext, blockHashB)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
@ -56,7 +56,7 @@ func (dtm *dagTopologyManager) IsParentOf(blockHashA *externalapi.DomainHash, bl
|
||||
|
||||
// IsChildOf returns true if blockHashA is a direct DAG child of blockHashB
|
||||
func (dtm *dagTopologyManager) IsChildOf(blockHashA *externalapi.DomainHash, blockHashB *externalapi.DomainHash) (bool, error) {
|
||||
blockRelations, err := dtm.blockRelationStore.Get(dtm.databaseContext, blockHashB)
|
||||
blockRelations, err := dtm.blockRelationStore.BlockRelation(dtm.databaseContext, blockHashB)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
@ -7,26 +7,29 @@ import (
|
||||
|
||||
// pruningManager resolves and manages the current pruning point
|
||||
type pruningManager struct {
|
||||
dagTraversalManager model.DAGTraversalManager
|
||||
pruningStore model.PruningStore
|
||||
dagTopologyManager model.DAGTopologyManager
|
||||
blockStatusStore model.BlockStatusStore
|
||||
consensusStateManager model.ConsensusStateManager
|
||||
dagTraversalManager model.DAGTraversalManager
|
||||
dagTopologyManager model.DAGTopologyManager
|
||||
|
||||
pruningStore model.PruningStore
|
||||
blockStatusStore model.BlockStatusStore
|
||||
consensusStateStore model.ConsensusStateStore
|
||||
}
|
||||
|
||||
// New instantiates a new PruningManager
|
||||
func New(
|
||||
dagTraversalManager model.DAGTraversalManager,
|
||||
pruningStore model.PruningStore,
|
||||
dagTopologyManager model.DAGTopologyManager,
|
||||
pruningStore model.PruningStore,
|
||||
blockStatusStore model.BlockStatusStore,
|
||||
consensusStateManager model.ConsensusStateManager) model.PruningManager {
|
||||
consensusStateStore model.ConsensusStateStore) model.PruningManager {
|
||||
|
||||
return &pruningManager{
|
||||
dagTraversalManager: dagTraversalManager,
|
||||
pruningStore: pruningStore,
|
||||
dagTopologyManager: dagTopologyManager,
|
||||
blockStatusStore: blockStatusStore,
|
||||
consensusStateManager: consensusStateManager,
|
||||
dagTraversalManager: dagTraversalManager,
|
||||
dagTopologyManager: dagTopologyManager,
|
||||
|
||||
pruningStore: pruningStore,
|
||||
blockStatusStore: blockStatusStore,
|
||||
consensusStateStore: consensusStateStore,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,25 +0,0 @@
|
||||
package utxodiffmanager
|
||||
|
||||
import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
)
|
||||
|
||||
// UTXODiffManager provides methods to access
|
||||
// and store UTXO diffs
|
||||
type utxoDiffManager struct {
|
||||
utxoDiffStore model.UTXODiffStore
|
||||
}
|
||||
|
||||
// New instantiates a new UTXODiffManager
|
||||
func New(utxoDiffStore model.UTXODiffStore) model.UTXODiffManager {
|
||||
return &utxoDiffManager{
|
||||
utxoDiffStore: utxoDiffStore,
|
||||
}
|
||||
}
|
||||
|
||||
// RestoreBlockDiffFromVirtualDiffParent restores the UTXO diff of
|
||||
// the block for the given blockHash.
|
||||
func (u *utxoDiffManager) RestoreBlockDiffFromVirtualDiffParent(blockHash *externalapi.DomainHash) (utxoDiff *model.UTXODiff, virtualDiffParentHash *externalapi.DomainHash, err error) {
|
||||
panic("implement me")
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user