Class BowireAgentCatalogueOptions
- Namespace
- Kuestenlogik.Bowire.Catalogue.Agent
- Assembly
- Kuestenlogik.Bowire.Catalogue.Agent.dll
Options for AgentCatalogueProvider (#305 Phase E).
Bound from Bowire:Discovery:Catalogue:Agent.
public sealed class BowireAgentCatalogueOptions
- Inheritance
-
BowireAgentCatalogueOptions
- Inherited Members
Remarks
The agent hub itself is in flight (#128). The wire shape below is
the contract this provider will speak once the hub ships its
GET {HubUrl}/hub/agents/catalogue aggregator endpoint:
{
"version": 1,
"agents": [
{
"agentId": "surgewave-broker@eu-central",
"serviceName": "surgewave-broker",
"tags": ["env:prod", "region:eu-central"],
"entries": [
{ "url": "https://surgewave-broker.internal:7080" }
]
}
]
}
Until #128 lands the provider returns an empty list and logs at Debug level — the operator sees the same "no catalogue" surface the unconfigured-provider path produces. Installations that want to enable this provider today against a non-hub endpoint can do so via StubResponse, which the test seam uses to verify the wire-shape parsing.
Constructors
BowireAgentCatalogueOptions()
public BowireAgentCatalogueOptions()
Properties
BootstrapToken
Optional bootstrap token sent in the Authorization
header. The hub-side authn story for #128 is still
converging — Phase 1 is a shared bootstrap token (this field);
mTLS is the hardening step. Sent verbatim so the operator
picks the scheme.
public string? BootstrapToken { get; set; }
Property Value
HubUrl
URL of the Bowire Agent hub. Required once the hub-side
catalogue aggregator from #128 ships; the provider GETs
{HubUrl}/hub/agents/catalogue on every refresh.
public string? HubUrl { get; set; }
Property Value
StubResponse
Test seam: pre-canned JSON payload to feed the parser with. When set, the provider skips the HTTP call entirely and deserialises this string instead. Lets installations sanity- check the wire-shape contract against a static JSON snapshot before the hub-side aggregator from #128 is live.
public string? StubResponse { get; set; }
Property Value
Timeout
Per-fetch timeout. Defaults to 10 s — same shape as the http / consul providers in core.
public TimeSpan Timeout { get; set; }