-
Notifications
You must be signed in to change notification settings - Fork 199
/
argBootstrapper.go
64 lines (59 loc) · 2.7 KB
/
argBootstrapper.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package sync
import (
"time"
"github.com/ElrondNetwork/elrond-go-core/core"
"github.com/ElrondNetwork/elrond-go-core/data"
"github.com/ElrondNetwork/elrond-go-core/data/typeConverters"
"github.com/ElrondNetwork/elrond-go-core/hashing"
"github.com/ElrondNetwork/elrond-go-core/marshal"
"github.com/ElrondNetwork/elrond-go/consensus"
"github.com/ElrondNetwork/elrond-go/dataRetriever"
"github.com/ElrondNetwork/elrond-go/dblookupext"
"github.com/ElrondNetwork/elrond-go/outport"
"github.com/ElrondNetwork/elrond-go/process"
"github.com/ElrondNetwork/elrond-go/sharding"
"github.com/ElrondNetwork/elrond-go/state"
)
// ArgBaseBootstrapper holds all dependencies required by the bootstrap data factory in order to create
// new instances
type ArgBaseBootstrapper struct {
HistoryRepo dblookupext.HistoryRepository
PoolsHolder dataRetriever.PoolsHolder
Store dataRetriever.StorageService
ChainHandler data.ChainHandler
RoundHandler consensus.RoundHandler
BlockProcessor process.BlockProcessor
WaitTime time.Duration
Hasher hashing.Hasher
Marshalizer marshal.Marshalizer
ForkDetector process.ForkDetector
RequestHandler process.RequestHandler
ShardCoordinator sharding.Coordinator
Accounts state.AccountsAdapter
BlackListHandler process.TimeCacher
NetworkWatcher process.NetworkConnectionWatcher
BootStorer process.BootStorer
StorageBootstrapper process.BootstrapperFromStorage
EpochHandler dataRetriever.EpochHandler
MiniblocksProvider process.MiniBlockProvider
Uint64Converter typeConverters.Uint64ByteSliceConverter
AppStatusHandler core.AppStatusHandler
OutportHandler outport.OutportHandler
AccountsDBSyncer process.AccountsDBSyncer
CurrentEpochProvider process.CurrentNetworkEpochProviderHandler
IsInImportMode bool
ScheduledTxsExecutionHandler process.ScheduledTxsExecutionHandler
}
// ArgShardBootstrapper holds all dependencies required by the bootstrap data factory in order to create
// new instances of shard bootstrapper
type ArgShardBootstrapper struct {
ArgBaseBootstrapper
}
// ArgMetaBootstrapper holds all dependencies required by the bootstrap data factory in order to create
// new instances of meta bootstrapper
type ArgMetaBootstrapper struct {
ArgBaseBootstrapper
EpochBootstrapper process.EpochBootstrapper
ValidatorStatisticsDBSyncer process.AccountsDBSyncer
ValidatorAccountsDB state.AccountsAdapter
}