factory

package
v1.3.43 Latest Latest
Warning

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

Go to latest
Published: Oct 2, 2022 License: GPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreatePathManager added in v1.2.0

func CreatePathManager(arg ArgCreatePathManager) (*pathmanager.PathManager, error)

CreatePathManager crates a path manager from provided working directory and chain ID

func CreatePathManagerFromSinglePathString added in v1.2.0

func CreatePathManagerFromSinglePathString(dbPathWithChainID string) (*pathmanager.PathManager, error)

CreatePathManagerFromSinglePathString crates a path manager from provided path string

func GetCacherFromConfig

func GetCacherFromConfig(cfg config.CacheConfig) storageUnit.CacheConfig

GetCacherFromConfig will return the cache config needed for storage unit from a config came from the toml file

func GetDBFromConfig

func GetDBFromConfig(cfg config.DBConfig) storageUnit.DBConfig

GetDBFromConfig will return the db config needed for storage unit from a config came from the toml file

func NewBootstrapDataProvider added in v1.0.111

func NewBootstrapDataProvider(marshalizer marshal.Marshalizer) (*bootstrapDataProvider, error)

NewBootstrapDataProvider returns a new instance of bootstrapDataProvider

func NewStorageUnitOpenHandler added in v1.0.102

func NewStorageUnitOpenHandler(args ArgsNewOpenStorageUnits) (*openStorageUnits, error)

NewStorageUnitOpenHandler creates an openStorageUnits component

Types

type ArgCreatePathManager added in v1.2.0

type ArgCreatePathManager struct {
	WorkingDir string
	ChainID    string
}

ArgCreatePathManager is used to pass the strings to the path manager factory function

type ArgsNewOpenStorageUnits added in v1.0.102

type ArgsNewOpenStorageUnits struct {
	BootstrapDataProvider     BootstrapDataProviderHandler
	LatestStorageDataProvider storage.LatestStorageDataProviderHandler
	DefaultEpochString        string
	DefaultShardString        string
}

ArgsNewOpenStorageUnits defines the arguments in order to open a set of storage units from disk

type BootstrapDataProviderHandler added in v1.0.111

type BootstrapDataProviderHandler interface {
	LoadForPath(persisterFactory storage.PersisterFactory, path string) (*bootstrapStorage.BootstrapData, storage.Storer, error)
	GetStorer(storer storage.Storer) (process.BootStorer, error)
	IsInterfaceNil() bool
}

BootstrapDataProviderHandler defines which actions should be done for loading bootstrap data from the boot storer

type NodeTypeProviderHandler added in v1.2.4

type NodeTypeProviderHandler interface {
	SetType(nodeType core.NodeType)
	GetType() core.NodeType
	IsInterfaceNil() bool
}

NodeTypeProviderHandler defines the actions needed for a component that can handle the node type

type PersisterFactory

type PersisterFactory struct {
	// contains filtered or unexported fields
}

PersisterFactory is the factory which will handle creating new databases

func NewPersisterFactory

func NewPersisterFactory(config config.DBConfig) *PersisterFactory

NewPersisterFactory will return a new instance of a PersisterFactory

func (*PersisterFactory) Create

func (pf *PersisterFactory) Create(path string) (storage.Persister, error)

Create will return a new instance of a DB with a given path

func (*PersisterFactory) CreateDisabled added in v1.1.1

func (pf *PersisterFactory) CreateDisabled() storage.Persister

CreateDisabled will return a new disabled persister

func (*PersisterFactory) IsInterfaceNil

func (pf *PersisterFactory) IsInterfaceNil() bool

IsInterfaceNil returns true if there is no value under the interface

type StorageServiceFactory

type StorageServiceFactory struct {
	// contains filtered or unexported fields
}

StorageServiceFactory handles the creation of storage services for both meta and shards

func NewStorageServiceFactory

func NewStorageServiceFactory(
	config *config.Config,
	prefsConfig *config.PreferencesConfig,
	shardCoordinator storage.ShardCoordinator,
	pathManager storage.PathManagerHandler,
	epochStartNotifier storage.EpochStartNotifier,
	nodeTypeProvider NodeTypeProviderHandler,
	currentEpoch uint32,
	createTrieEpochRootHashStorer bool,
) (*StorageServiceFactory, error)

NewStorageServiceFactory will return a new instance of StorageServiceFactory

func (*StorageServiceFactory) CreateForMeta

func (psf *StorageServiceFactory) CreateForMeta() (dataRetriever.StorageService, error)

CreateForMeta will return the storage service which contains all storers needed for metachain

func (*StorageServiceFactory) CreateForShard

func (psf *StorageServiceFactory) CreateForShard() (dataRetriever.StorageService, error)

CreateForShard will return the storage service which contains all storers needed for a shard

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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