Skip to content

feat: pluggable transport interface for SageMaker support#29

Open
GregHolmes wants to merge 1 commit intomainfrom
feat/pluggable-transport
Open

feat: pluggable transport interface for SageMaker support#29
GregHolmes wants to merge 1 commit intomainfrom
feat/pluggable-transport

Conversation

@GregHolmes
Copy link
Copy Markdown
Contributor

Summary

  • Adds DeepgramTransport and DeepgramTransportFactory interfaces for replacing the default OkHttp WebSocket with custom transports
  • Adds TransportWebSocketAdapter that bridges custom transports to the existing OkHttp WebSocket interface — zero changes to Fern-generated code
  • Adds .transportFactory() to both DeepgramClientBuilder and AsyncDeepgramClientBuilder
  • Updates .fernignore to protect new files from regeneration
  • Adds SageMaker example showing how to wire up a custom transport

Context

This enables the separate deepgram-java-sdk-transport-sagemaker package to route Deepgram API calls through AWS SageMaker endpoints using HTTP/2 bidirectional streaming. The transport abstraction is generic — any custom transport can be plugged in.

@GregHolmes GregHolmes requested a review from lukeocodes April 2, 2026 14:25
@GregHolmes GregHolmes self-assigned this Apr 2, 2026
@GregHolmes GregHolmes force-pushed the feat/pluggable-transport branch from 10d37e4 to 7fde071 Compare April 2, 2026 14:27
…sports

  Introduces a DeepgramTransport/DeepgramTransportFactory abstraction that
  allows replacing the default OkHttp WebSocket with alternative transports
  (e.g. SageMaker HTTP/2 bidirectional streaming). Zero changes to
  Fern-generated code — uses an adapter pattern via TransportWebSocketAdapter.
@GregHolmes GregHolmes force-pushed the feat/pluggable-transport branch from 7fde071 to f0db669 Compare April 2, 2026 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant