Class BowireCliCommandRegistry
- Namespace
- Kuestenlogik.Bowire.Cli
- Assembly
- Kuestenlogik.Bowire.Cli.dll
Discovers every IBowireCliCommand implementation in
the current AppDomain at startup. Same shape +
blacklist contract as BowireProtocolRegistry — one
pattern for operators to learn (--disable-plugin for
protocols, --disable-cli-command for subcommands).
public sealed class BowireCliCommandRegistry
- Inheritance
-
BowireCliCommandRegistry
- Inherited Members
Constructors
BowireCliCommandRegistry()
public BowireCliCommandRegistry()
Properties
Commands
public IReadOnlyList<IBowireCliCommand> Commands { get; }
Property Value
Methods
Discover(IEnumerable<string>?, ILogger?)
Scan every loaded Kuestenlogik.Bowire* assembly for
concrete IBowireCliCommand implementations and
instantiate one of each. Skips ids in
disabledCommandIds so operators can mask
a noisy / heavy command (--disable-cli-command scan etc.)
without rebuilding the tool.
public static BowireCliCommandRegistry Discover(IEnumerable<string>? disabledCommandIds = null, ILogger? logger = null)
Parameters
disabledCommandIdsIEnumerable<string>loggerILogger
Returns
Register(IBowireCliCommand)
public void Register(IBowireCliCommand command)
Parameters
commandIBowireCliCommand