Documentation
¶
Index ¶
- Variables
- func DefaultDataDir() string
- type Config
- func (c *Config) DataDirPathAbs() error
- func (c *Config) GetPrivateKey() ed25519.PrivateKey
- func (c *Config) HTTPEndpoint() string
- func (c *Config) IPCEndpoint() string
- func (c *Config) RunErrorLogHandler() log15.Handler
- func (c *Config) RunLogDir() string
- func (c *Config) RunLogHandler() log15.Handler
- func (c *Config) SetPrivateKey(privateKey string)
- func (c *Config) WSEndpoint() string
- type Node
- func (node *Node) Attach() (*rpc.Client, error)
- func (node *Node) Config() *Config
- func (node *Node) GetHttpApis() []rpc.API
- func (node *Node) GetInProcessApis() []rpc.API
- func (node *Node) GetIpcApis() []rpc.API
- func (node *Node) GetWSApis() []rpc.API
- func (node *Node) Prepare() error
- func (node *Node) Start() error
- func (node *Node) Stop() error
- func (node *Node) Vite() *vite.Vite
- func (node *Node) ViteConfig() *config.Config
- func (node *Node) ViteServer() *vite.Vite
- func (node *Node) Wait()
- func (node *Node) WalletManager() *wallet.Manager
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrDataDirUsed = errors.New("dataDir already used by another process") ErrNodeStopped = errors.New("node not started") ErrNodeRunning = errors.New("node already running") ErrServiceUnknown = errors.New("unknown service") ErrWalletConfigNil = errors.New("wallet config is nil") ErrEntropyStorePathInvalid = errors.New("entropyStorePath is invalid") ErrViteConfigNil = errors.New("vite config is nil") ErrP2PConfigNil = errors.New("p2p config is nil") )
View Source
var DefaultNodeConfig = Config{ Identity: "nodeServer", IPCPath: "gvite.ipc", DataDir: DefaultDataDir(), KeyStoreDir: DefaultDataDir(), HttpPort: common.DefaultHTTPPort, WSPort: common.DefaultWSPort, PrivateKey: "", MaxPeers: 0, MaxPassivePeersRatio: 0, MaxPendingPeers: 0, BootNodes: nil, Port: 8483, NetID: 0, Discovery: true, LogLevel: "info", WSOrigins: []string{"*"}, WSExposeAll: true, HttpExposeAll: true, TopoEnabled: false, FilePort: 8484, }
Functions ¶
func DefaultDataDir ¶
func DefaultDataDir() string
DefaultDataDir is the default data directory to use for the databases and other persistence requirements.
Types ¶
type Config ¶
type Config struct {
DataDir string `json:"DataDir"`
KeyStoreDir string `json:"KeyStoreDir"`
// template:["broker1,broker2,...|topic",""]
KafkaProducers []string `json:"KafkaProducers"`
// chain
OpenBlackBlock bool `json:"OpenBlackBlock"`
LedgerGcRetain uint64 `json:"LedgerGcRetain"`
LedgerGc *bool `json:"LedgerGc"`
OpenFilterTokenIndex *bool `json:"OpenFilterTokenIndex"`
// genesis
GenesisFile string `json:"GenesisFile"`
// p2p
NetSelect string
Identity string `json:"Identity"`
PrivateKey string `json:"PrivateKey"`
MaxPeers uint `json:"MaxPeers"`
MaxPassivePeersRatio uint `json:"MaxPassivePeersRatio"`
MaxPendingPeers uint `json:"MaxPendingPeers"`
BootNodes []string `json:"BootNodes"`
StaticNodes []string `json:"StaticNodes"`
Port int `json:"Port"`
NetID uint `json:"NetID"`
Discovery bool `json:"Discovery"`
//producer
EntropyStorePath string `json:"EntropyStorePath"`
EntropyStorePassword string `json:"EntropyStorePassword"`
CoinBase string `json:"CoinBase"`
MinerEnabled bool `json:"Miner"`
MinerInterval int `json:"MinerInterval"`
//rpc
RPCEnabled bool `json:"RPCEnabled"`
IPCEnabled bool `json:"IPCEnabled"`
WSEnabled bool `json:"WSEnabled"`
IPCPath string `json:"IPCPath"`
HttpHost string `json:"HttpHost"`
HttpPort int `json:"HttpPort"`
HttpVirtualHosts []string `json:"HttpVirtualHosts"`
WSHost string `json:"WSHost"`
WSPort int `json:"WSPort"`
HTTPCors []string `json:"HTTPCors"`
WSOrigins []string `json:"WSOrigins"`
PublicModules []string `json:"PublicModules"`
WSExposeAll bool `json:"WSExposeAll"`
HttpExposeAll bool `json:"HttpExposeAll"`
TestTokenHexPrivKey string `json:"TestTokenHexPrivKey"`
TestTokenTti string `json:"TestTokenTti"`
PowServerUrl string `json:"PowServerUrl”`
//Log level
LogLevel string `json:"LogLevel"`
ErrorLogDir string `json:"ErrorLogDir"`
//VM
VMTestEnabled bool `json:"VMTestEnabled"`
VMTestParamEnabled bool `json:"VMTestParamEnabled"`
VMDebug bool `json:"VMDebug"`
// subscribe
SubscribeEnabled bool `json:"SubscribeEnabled"`
//Net TODO: cmd after ?
Single bool `json:"Single"`
FilePort int `json:"FilePort"`
Topology []string `json:"Topology"`
TopologyTopic string `json:"TopologyTopic"`
TopologyReportInterval int `json:"TopologyReportInterval"`
TopoEnabled bool `json:"TopoEnabled"`
DashboardTargetURL string
// reward
RewardAddr string `json:"RewardAddr"`
//metrics
MetricsEnable *bool `json:"MetricsEnable"`
InfluxDBEnable *bool `json:"InfluxDBEnable"`
InfluxDBEndpoint *string `json:"InfluxDBEndpoint"`
InfluxDBDatabase *string `json:"InfluxDBDatabase"`
InfluxDBUsername *string `json:"InfluxDBUsername"`
InfluxDBPassword *string `json:"InfluxDBPassword"`
InfluxDBHostTag *string `json:"InfluxDBHostTag"`
}
func (*Config) DataDirPathAbs ¶
resolve the dataDir so future changes to the current working directory don't affect the node
func (*Config) GetPrivateKey ¶
func (c *Config) GetPrivateKey() ed25519.PrivateKey
func (*Config) HTTPEndpoint ¶
func (*Config) IPCEndpoint ¶
func (*Config) RunErrorLogHandler ¶
func (*Config) RunLogHandler ¶
func (*Config) SetPrivateKey ¶
func (*Config) WSEndpoint ¶
type Node ¶
type Node struct {
// contains filtered or unexported fields
}
Node is a container that manages p2p、rpc、vite modules
func (*Node) ViteConfig ¶ added in v1.3.0
func (*Node) ViteServer ¶
func (*Node) WalletManager ¶
Click to show internal directories.
Click to hide internal directories.