-
Notifications
You must be signed in to change notification settings - Fork 199
/
argProcessor.go
67 lines (63 loc) · 2.88 KB
/
argProcessor.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
65
66
67
package block
import (
"github.com/ElrondNetwork/elrond-go/consensus"
"github.com/ElrondNetwork/elrond-go/core/dblookupext"
"github.com/ElrondNetwork/elrond-go/core/statistics"
"github.com/ElrondNetwork/elrond-go/data"
"github.com/ElrondNetwork/elrond-go/data/state"
"github.com/ElrondNetwork/elrond-go/data/typeConverters"
"github.com/ElrondNetwork/elrond-go/dataRetriever"
"github.com/ElrondNetwork/elrond-go/hashing"
"github.com/ElrondNetwork/elrond-go/marshal"
"github.com/ElrondNetwork/elrond-go/process"
"github.com/ElrondNetwork/elrond-go/sharding"
)
// ArgBaseProcessor holds all dependencies required by the process data factory in order to create
// new instances
type ArgBaseProcessor struct {
AccountsDB map[state.AccountsDbIdentifier]state.AccountsAdapter
ForkDetector process.ForkDetector
Hasher hashing.Hasher
Marshalizer marshal.Marshalizer
Store dataRetriever.StorageService
ShardCoordinator sharding.Coordinator
NodesCoordinator sharding.NodesCoordinator
FeeHandler process.TransactionFeeHandler
Uint64Converter typeConverters.Uint64ByteSliceConverter
RequestHandler process.RequestHandler
BlockChainHook process.BlockChainHookHandler
TxCoordinator process.TransactionCoordinator
EpochStartTrigger process.EpochStartTriggerHandler
HeaderValidator process.HeaderConstructionValidator
Rounder consensus.Rounder
BootStorer process.BootStorer
BlockTracker process.BlockTracker
DataPool dataRetriever.PoolsHolder
BlockChain data.ChainHandler
StateCheckpointModulus uint
BlockSizeThrottler process.BlockSizeThrottler
Indexer process.Indexer
TpsBenchmark statistics.TPSBenchmark
HistoryRepository dblookupext.HistoryRepository
EpochNotifier process.EpochNotifier
HeaderIntegrityVerifier process.HeaderIntegrityVerifier
}
// ArgShardProcessor holds all dependencies required by the process data factory in order to create
// new instances of shard processor
type ArgShardProcessor struct {
ArgBaseProcessor
}
// ArgMetaProcessor holds all dependencies required by the process data factory in order to create
// new instances of meta processor
type ArgMetaProcessor struct {
ArgBaseProcessor
PendingMiniBlocksHandler process.PendingMiniBlocksHandler
SCToProtocol process.SmartContractToProtocolHandler
EpochStartDataCreator process.EpochStartDataCreator
EpochEconomics process.EndOfEpochEconomics
EpochRewardsCreator process.RewardsCreator
EpochValidatorInfoCreator process.EpochStartValidatorInfoCreator
EpochSystemSCProcessor process.EpochStartSystemSCProcessor
ValidatorStatisticsProcessor process.ValidatorStatisticsProcessor
RewardsV2EnableEpoch uint32
}