Table of Contents

Class CommandRegistry

Namespace
Core.Commands
Assembly
Core.dll

Registry for command factories with auto-discovery. Discovers commands via reflection and provides lookup by name/alias.

Usage:

  1. Create registry instance
  2. Call DiscoverCommands() with assemblies to scan
  3. Use TryGetCommand() to find commands by name/alias
public class CommandRegistry
Inheritance
object
CommandRegistry

Constructors

CommandRegistry(string)

Create a command registry.

public CommandRegistry(string logSubsystem = "core_commands")

Parameters

logSubsystem string

Subsystem name for logging (e.g., "game_hegemon", "starter_kit")

Properties

Count

Get count of registered commands.

public int Count { get; }

Property Value

int

Methods

DiscoverCommands(params Assembly[])

Auto-discover and register all command factories in specified assemblies.

public void DiscoverCommands(params Assembly[] assemblies)

Parameters

assemblies Assembly[]

Assemblies to scan for ICommandFactory implementations

GenerateHelpText()

Generate help text for all commands.

public string GenerateHelpText()

Returns

string

GetAllCommands()

Get all registered commands.

public IEnumerable<CommandRegistry.CommandRegistration> GetAllCommands()

Returns

IEnumerable<CommandRegistry.CommandRegistration>

RegisterFactory(ICommandFactory, CommandMetadataAttribute)

Manually register a command factory instance with metadata.

public bool RegisterFactory(ICommandFactory factory, CommandMetadataAttribute metadata)

Parameters

factory ICommandFactory
metadata CommandMetadataAttribute

Returns

bool

RegisterFactory(Type)

Manually register a command factory type.

public bool RegisterFactory(Type factoryType)

Parameters

factoryType Type

Returns

bool

TryGetCommand(string, out CommandRegistration)

Try to get command registration by name or alias.

public bool TryGetCommand(string nameOrAlias, out CommandRegistry.CommandRegistration registration)

Parameters

nameOrAlias string
registration CommandRegistry.CommandRegistration

Returns

bool