Class: LittleGhost::Providers::Base
- Inherits:
-
Object
- Object
- LittleGhost::Providers::Base
- Defined in:
- lib/little_ghost/providers/base.rb
Overview
Shared provider contract. Provider adapters implement #stream and may override capability-sensitive request preparation.
Direct Known Subclasses
Class Method Summary collapse
-
.request_options ⇒ Object
Returns the trusted per-profile request options this adapter accepts.
Instance Method Summary collapse
-
#capabilities(metadata: {}) ⇒ Object
Returns provider capabilities derived from normalized metadata.
-
#prepare_request(request, capabilities:) ⇒ Object
Applies provider-specific capability constraints before streaming.
-
#stream(_request) ⇒ Object
Streams normalized events for
request.
Class Method Details
.request_options ⇒ Object
Returns the trusted per-profile request options this adapter accepts. Connection options remain authoritative and are configured separately.
28 |
# File 'lib/little_ghost/providers/base.rb', line 28 def self. = [].freeze |
Instance Method Details
#capabilities(metadata: {}) ⇒ Object
Returns provider capabilities derived from normalized metadata.
41 42 43 |
# File 'lib/little_ghost/providers/base.rb', line 41 def capabilities(metadata: {}) ModelCapabilities.unknown end |
#prepare_request(request, capabilities:) ⇒ Object
Applies provider-specific capability constraints before streaming.
36 37 38 |
# File 'lib/little_ghost/providers/base.rb', line 36 def prepare_request(request, capabilities:) request end |
#stream(_request) ⇒ Object
Streams normalized events for request.
31 32 33 |
# File 'lib/little_ghost/providers/base.rb', line 31 def stream(_request) raise AbstractMethodError, "#{self.class} must implement #stream" end |