1"""Protocol-facing relay gateway: channel selection, orchestration, upstream I/O, and SSE handling.
2
3The gateway composes the :class:`RelayGatewayService` from a channel
4registry, payload codec, upstream HTTP adapter, and the conversion engine,
5and exposes it behind :class:`~lexigram.contracts.ai.relay.RelayGatewayProtocol`
6through :class:`RelayGatewayModule` / :class:`RelayGatewayProvider`.
7"""
8
9from __future__ import annotations
10
11from lexigram.ai.relay.gateway.catalog import ModelCatalogService
12from lexigram.ai.relay.gateway.channels import RelayChannelRegistry
13from lexigram.ai.relay.gateway.codec import RelayPayloadCodec
14from lexigram.ai.relay.gateway.config import RelayGatewayConfig
15from lexigram.ai.relay.gateway.credentials import (
16 CredentialInjectingHTTPClient,
17 NullChannelCredentialProvider,
18 RelayChannelCredentialProvider,
19)
20from lexigram.ai.relay.gateway.di.provider import RelayGatewayProvider
21from lexigram.ai.relay.gateway.module import RelayGatewayModule
22from lexigram.ai.relay.gateway.operations import (
23 InMemoryRelayPolicyStore,
24 RelayChannelAutoTester,
25 RelayChannelCheckerProtocol,
26 RelayChannelProbeResult,
27 RelayControlsService,
28 RelayFailoverTracker,
29 RelayHealthService,
30 RelayMetricsService,
31 RelayRouteEvent,
32 RelayRouteEventSourceProtocol,
33 RelayStreamRegistry,
34)
35from lexigram.ai.relay.gateway.passthrough import PassthroughService
36from lexigram.ai.relay.gateway.service import RelayGatewayService
37from lexigram.ai.relay.gateway.stream import UpstreamEventParser, relay_stream
38from lexigram.ai.relay.gateway.upstream import HTTPUpstreamAdapter
39
40__all__ = [
41 "CredentialInjectingHTTPClient",
42 "HTTPUpstreamAdapter",
43 "InMemoryRelayPolicyStore",
44 "ModelCatalogService",
45 "NullChannelCredentialProvider",
46 "PassthroughService",
47 "RelayChannelAutoTester",
48 "RelayChannelCheckerProtocol",
49 "RelayChannelCredentialProvider",
50 "RelayChannelProbeResult",
51 "RelayChannelRegistry",
52 "RelayControlsService",
53 "RelayFailoverTracker",
54 "RelayGatewayConfig",
55 "RelayGatewayModule",
56 "RelayGatewayProvider",
57 "RelayGatewayService",
58 "RelayHealthService",
59 "RelayMetricsService",
60 "RelayPayloadCodec",
61 "RelayRouteEvent",
62 "RelayRouteEventSourceProtocol",
63 "RelayStreamRegistry",
64 "UpstreamEventParser",
65 "relay_stream",
66]