MCPcopy Create free account
hub / github.com/ethstorage/es-node / NewConfig

Function NewConfig

ethstorage/scanner/config.go:129–147  ·  view source on GitHub ↗

7

(ctx *cli.Context, slot uint64)

Source from the content-addressed store, hash-verified

127const scanModeSetMask = modeSetMeta | modeSetBlob | modeSetBlock // 7
128
129func NewConfig(ctx *cli.Context, slot uint64) (*Config, error) {
130 rawMode := scanModeSet(ctx.GlobalInt(ModeFlagName))
131 if rawMode == 0 {
132 return nil, nil
133 }
134 // Check for invalid bits outside the valid mask
135 if rawMode&^scanModeSetMask != 0 {
136 return nil, fmt.Errorf("invalid scanner mode: %d, valid values are 0 (disabled), 1 (meta), 2 (blob), 3 (meta+blob), 4 (block), 5 (meta+block), 6 (blob+block), 7 (all)", rawMode)
137 }
138 mode := rawMode & scanModeSetMask
139 return &Config{
140 Mode: mode,
141 BatchSize: ctx.GlobalInt(BatchSizeFlagName),
142 L1SlotTime: time.Second * time.Duration(slot),
143 IntervalMeta: time.Minute * time.Duration(ctx.GlobalInt(IntervalMetaFlagName)),
144 IntervalBlob: time.Minute * time.Duration(ctx.GlobalInt(IntervalBlobFlagName)),
145 IntervalBlock: time.Minute * time.Duration(ctx.GlobalInt(IntervalBlockFlagName)),
146 }, nil
147}

Callers 1

NewConfigFunction · 0.92

Calls 1

scanModeSetTypeAlias · 0.85

Tested by

no test coverage detected