Commit 3d7c6c42 authored by Adrian Sutton's avatar Adrian Sutton

op-challenger: Clean ups

parent 5f870165
......@@ -22,6 +22,8 @@ func NewGameTypeRegistry() *GameTypeRegistry {
}
}
// RegisterGameType registers a scheduler.PlayerCreator to use for a specific game type.
// Panics if the same game type is registered multiple times, since this indicates a significant programmer error.
func (r *GameTypeRegistry) RegisterGameType(gameType uint8, creator scheduler.PlayerCreator) {
if _, ok := r.types[gameType]; ok {
panic(fmt.Errorf("duplicate creator registered for game type: %v", gameType))
......@@ -29,6 +31,7 @@ func (r *GameTypeRegistry) RegisterGameType(gameType uint8, creator scheduler.Pl
r.types[gameType] = creator
}
// CreatePlayer creates a new game player for the given game, using the specified directory for persisting data.
func (r *GameTypeRegistry) CreatePlayer(game types.GameMetadata, dir string) (scheduler.GamePlayer, error) {
creator, ok := r.types[game.GameType]
if !ok {
......
......@@ -9,7 +9,7 @@ import (
"github.com/ethereum-optimism/optimism/op-challenger/config"
"github.com/ethereum-optimism/optimism/op-challenger/game/fault"
"github.com/ethereum-optimism/optimism/op-challenger/game/loader"
registry2 "github.com/ethereum-optimism/optimism/op-challenger/game/registry"
"github.com/ethereum-optimism/optimism/op-challenger/game/registry"
"github.com/ethereum-optimism/optimism/op-challenger/game/scheduler"
"github.com/ethereum-optimism/optimism/op-challenger/metrics"
"github.com/ethereum-optimism/optimism/op-challenger/version"
......@@ -94,8 +94,8 @@ func NewService(ctx context.Context, logger log.Logger, cfg *config.Config) (*Se
}
loader := loader.NewGameLoader(factoryContract)
registry := registry2.NewGameTypeRegistry()
fault.RegisterGameTypes(registry, ctx, logger, m, cfg, txMgr, l1Client)
gameTypeRegistry := registry.NewGameTypeRegistry()
fault.RegisterGameTypes(gameTypeRegistry, ctx, logger, m, cfg, txMgr, l1Client)
disk := newDiskManager(cfg.Datadir)
s.sched = scheduler.NewScheduler(
......@@ -103,7 +103,7 @@ func NewService(ctx context.Context, logger log.Logger, cfg *config.Config) (*Se
m,
disk,
cfg.MaxConcurrency,
registry.CreatePlayer)
gameTypeRegistry.CreatePlayer)
pollClient, err := opClient.NewRPCWithClient(ctx, logger, cfg.L1EthRpc, opClient.NewBaseRPCClient(l1Client.Client()), cfg.PollInterval)
if err != nil {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment