factory

package
v1.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 11, 2022 License: GPL-3.0 Imports: 52 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAccountsDBSContainerFactory

func NewAccountsDBSContainerFactory(args ArgsNewAccountsDBSyncersContainerFactory) (*accountDBSyncersContainerFactory, error)

NewAccountsDBSContainerFactory creates a factory for trie syncers container

func NewDataTrieFactory

func NewDataTrieFactory(args ArgsNewDataTrieFactory) (*dataTrieFactory, error)

NewDataTrieFactory creates a data trie factory

func NewExportHandlerFactory

func NewExportHandlerFactory(args ArgsExporter) (*exportHandlerFactory, error)

NewExportHandlerFactory creates an exporter factory

func NewFullSyncInterceptorsContainerFactory

func NewFullSyncInterceptorsContainerFactory(
	args ArgsNewFullSyncInterceptorsContainerFactory,
) (*fullSyncInterceptorsContainerFactory, error)

NewFullSyncInterceptorsContainerFactory is responsible for creating a new interceptors factory object

func NewResolversContainerFactory

func NewResolversContainerFactory(args ArgsNewResolversContainerFactory) (*resolversContainerFactory, error)

NewResolversContainerFactory creates a new container filled with topic resolvers

Types

type ArgsExporter

type ArgsExporter struct {
	CoreComponents            process.CoreComponentsHolder
	CryptoComponents          process.CryptoComponentsHolder
	StatusCoreComponents      process.StatusCoreComponentsHolder
	HeaderValidator           epochStart.HeaderValidator
	DataPool                  dataRetriever.PoolsHolder
	StorageService            dataRetriever.StorageService
	RequestHandler            process.RequestHandler
	ShardCoordinator          sharding.Coordinator
	Messenger                 p2p.Messenger
	ActiveAccountsDBs         map[state.AccountsDbIdentifier]state.AccountsAdapter
	ExistingResolvers         dataRetriever.ResolversContainer
	ExportFolder              string
	ExportTriesStorageConfig  config.StorageConfig
	ExportStateStorageConfig  config.StorageConfig
	ExportStateKeysConfig     config.StorageConfig
	MaxTrieLevelInMemory      uint
	WhiteListHandler          process.WhiteListHandler
	WhiteListerVerifiedTxs    process.WhiteListHandler
	InterceptorsContainer     process.InterceptorsContainer
	NodesCoordinator          nodesCoordinator.NodesCoordinator
	HeaderSigVerifier         process.InterceptedHeaderSigVerifier
	HeaderIntegrityVerifier   process.HeaderIntegrityVerifier
	ValidityAttester          process.ValidityAttester
	InputAntifloodHandler     process.P2PAntifloodHandler
	OutputAntifloodHandler    process.P2PAntifloodHandler
	RoundHandler              process.RoundHandler
	PeersRatingHandler        dataRetriever.PeersRatingHandler
	InterceptorDebugConfig    config.InterceptorResolverDebugConfig
	MaxHardCapForMissingNodes int
	NumConcurrentTrieSyncers  int
	TrieSyncerVersion         int
	CheckNodesOnDisk          bool
}

ArgsExporter is the argument structure to create a new exporter

type ArgsNewAccountsDBSyncersContainerFactory

type ArgsNewAccountsDBSyncersContainerFactory struct {
	TrieCacher                storage.Cacher
	RequestHandler            update.RequestHandler
	ShardCoordinator          sharding.Coordinator
	Hasher                    hashing.Hasher
	Marshalizer               marshal.Marshalizer
	TrieStorageManager        common.StorageManager
	TimoutGettingTrieNode     time.Duration
	MaxTrieLevelInMemory      uint
	NumConcurrentTrieSyncers  int
	MaxHardCapForMissingNodes int
	TrieSyncerVersion         int
	CheckNodesOnDisk          bool
	AddressPubKeyConverter    core.PubkeyConverter
}

ArgsNewAccountsDBSyncersContainerFactory defines the arguments needed to create accounts DB syncers container

type ArgsNewDataTrieFactory

type ArgsNewDataTrieFactory struct {
	StorageConfig        config.StorageConfig
	SyncFolder           string
	Marshalizer          marshal.Marshalizer
	Hasher               hashing.Hasher
	ShardCoordinator     sharding.Coordinator
	MaxTrieLevelInMemory uint
}

ArgsNewDataTrieFactory is the argument structure for the new data trie factory

type ArgsNewFullSyncInterceptorsContainerFactory

type ArgsNewFullSyncInterceptorsContainerFactory struct {
	CoreComponents          process.CoreComponentsHolder
	CryptoComponents        process.CryptoComponentsHolder
	Accounts                state.AccountsAdapter
	ShardCoordinator        sharding.Coordinator
	NodesCoordinator        nodesCoordinator.NodesCoordinator
	Messenger               process.TopicHandler
	Store                   dataRetriever.StorageService
	DataPool                dataRetriever.PoolsHolder
	MaxTxNonceDeltaAllowed  int
	TxFeeHandler            process.FeeHandler
	BlockBlackList          process.TimeCacher
	HeaderSigVerifier       process.InterceptedHeaderSigVerifier
	HeaderIntegrityVerifier process.HeaderIntegrityVerifier
	SizeCheckDelta          uint32
	ValidityAttester        process.ValidityAttester
	EpochStartTrigger       process.EpochStartTriggerHandler
	WhiteListHandler        update.WhiteListHandler
	WhiteListerVerifiedTxs  update.WhiteListHandler
	InterceptorsContainer   process.InterceptorsContainer
	AntifloodHandler        process.P2PAntifloodHandler
}

ArgsNewFullSyncInterceptorsContainerFactory holds the arguments needed for fullSyncInterceptorsContainerFactory

type ArgsNewResolversContainerFactory

type ArgsNewResolversContainerFactory struct {
	ShardCoordinator           sharding.Coordinator
	Messenger                  dataRetriever.TopicMessageHandler
	Marshalizer                marshal.Marshalizer
	DataTrieContainer          common.TriesHolder
	ExistingResolvers          dataRetriever.ResolversContainer
	InputAntifloodHandler      dataRetriever.P2PAntifloodHandler
	OutputAntifloodHandler     dataRetriever.P2PAntifloodHandler
	PeersRatingHandler         dataRetriever.PeersRatingHandler
	NumConcurrentResolvingJobs int32
}

ArgsNewResolversContainerFactory defines the arguments for the resolversContainerFactory constructor

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL