config

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: May 26, 2022 License: AGPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultDataDir

func DefaultDataDir() string

DefaultDataDir is the default data directory to use for the databases and other persistence requirements.

func EnsureRoot

func EnsureRoot(rootDir string, network string)

***** these are for production settings **********

func GenesisBlock

func GenesisBlock() *types.Block

GenesisBlock will return genesis block

func GenesisTxs

func GenesisTxs() []*types.Tx

GenesisTxs make genesis block txs

Types

type AssetIssue

type AssetIssue struct {
	NonceStr           string
	IssuanceProgramStr string
	AssetDefinitionStr string
	AssetIDStr         string
	Amount             uint64
}

AssetIssue asset issue params

type BaseConfig

type BaseConfig struct {
	// The root directory for all data.
	// This should be set in viper so it can unmarshal into this struct
	RootDir string `mapstructure:"home"`

	// The alias of the node
	NodeAlias string `mapstructure:"node_alias"`

	// The ID of the network to json
	ChainID string `mapstructure:"chain_id"`

	// log level to set
	LogLevel string `mapstructure:"log_level"`

	// A custom human readable name for this node
	Moniker string `mapstructure:"moniker"`

	// TCP or UNIX socket address for the profiling server to listen on
	ProfListenAddress string `mapstructure:"prof_laddr"`

	Mining bool `mapstructure:"mining"`

	// Database backend: leveldb | memdb
	DBBackend string `mapstructure:"db_backend"`

	// Database directory
	DBPath string `mapstructure:"db_dir"`

	// Keystore directory
	KeysPath string `mapstructure:"keys_dir"`

	ApiAddress string `mapstructure:"api_addr"`

	VaultMode bool `mapstructure:"vault_mode"`

	// log file name
	LogFile string `mapstructure:"log_file"`

	PrivateKeyFile string `mapstructure:"private_key_file"`
	XPrv           *chainkd.XPrv
	XPub           *chainkd.XPub
}

----------------------------------------------------------------------------- BaseConfig

func DefaultBaseConfig

func DefaultBaseConfig() BaseConfig

Default configurable base parameters.

func (BaseConfig) DBDir

func (b BaseConfig) DBDir() string

func (BaseConfig) KeysDir

func (b BaseConfig) KeysDir() string

func (BaseConfig) LogDir

func (b BaseConfig) LogDir() string

type Config

type Config struct {
	// Top level options use an anonymous struct
	BaseConfig `mapstructure:",squash"`
	// Options for services
	P2P       *P2PConfig       `mapstructure:"p2p"`
	Wallet    *WalletConfig    `mapstructure:"wallet"`
	Auth      *RPCAuthConfig   `mapstructure:"auth"`
	Web       *WebConfig       `mapstructure:"web"`
	Websocket *WebsocketConfig `mapstructure:"ws"`
}
var (
	// CommonConfig means config object
	CommonConfig *Config
)

func DefaultConfig

func DefaultConfig() *Config

Default configurable parameters.

func (*Config) PrivateKey

func (cfg *Config) PrivateKey() *chainkd.XPrv

NodeKey retrieves the currently configured private key of the node, checking first any manually set key, falling back to the one found in the configured data folder. If no key can be found, a new one is generated.

func (*Config) SetRoot

func (cfg *Config) SetRoot(root string) *Config

Set the RootDir for all Config structs

type P2PConfig

type P2PConfig struct {
	ListenAddress    string `mapstructure:"laddr"`
	Seeds            string `mapstructure:"seeds"`
	SkipUPNP         bool   `mapstructure:"skip_upnp"`
	LANDiscover      bool   `mapstructure:"lan_discoverable"`
	MaxNumPeers      int    `mapstructure:"max_num_peers"`
	HandshakeTimeout int    `mapstructure:"handshake_timeout"`
	DialTimeout      int    `mapstructure:"dial_timeout"`
	ProxyAddress     string `mapstructure:"proxy_address"`
	ProxyUsername    string `mapstructure:"proxy_username"`
	ProxyPassword    string `mapstructure:"proxy_password"`
	KeepDial         string `mapstructure:"keep_dial"`
}

P2PConfig

func DefaultP2PConfig

func DefaultP2PConfig() *P2PConfig

Default configurable p2p parameters.

type RPCAuthConfig

type RPCAuthConfig struct {
	Disable bool `mapstructure:"disable"`
}

func DefaultRPCAuthConfig

func DefaultRPCAuthConfig() *RPCAuthConfig

Default configurable rpc's auth parameters.

type WalletConfig

type WalletConfig struct {
	Disable  bool   `mapstructure:"disable"`
	Rescan   bool   `mapstructure:"rescan"`
	TxIndex  bool   `mapstructure:"txindex"`
	MaxTxFee uint64 `mapstructure:"max_tx_fee"`
}

-----------------------------------------------------------------------------

func DefaultWalletConfig

func DefaultWalletConfig() *WalletConfig

Default configurable wallet parameters.

type WebConfig

type WebConfig struct {
	Closed bool `mapstructure:"closed"`
}

func DefaultWebConfig

func DefaultWebConfig() *WebConfig

Default configurable web parameters.

type WebsocketConfig

type WebsocketConfig struct {
	MaxNumWebsockets     int `mapstructure:"max_num_websockets"`
	MaxNumConcurrentReqs int `mapstructure:"max_num_concurrent_reqs"`
}

func DefaultWebsocketConfig

func DefaultWebsocketConfig() *WebsocketConfig

Jump to

Keyboard shortcuts

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