7
(ctx *cli.Context, slot uint64)
| 127 | const scanModeSetMask = modeSetMeta | modeSetBlob | modeSetBlock // 7 |
| 128 | |
| 129 | func 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 | } |
no test coverage detected