Class: Riffer::Providers::Repository

Inherits:
Object
  • Object
show all
Defined in:
lib/riffer/providers/repository.rb

Overview

Registry for finding provider classes by identifier.

Constant Summary collapse

REPO =

Mapping of provider identifiers to provider class lambdas.

{
  amazon_bedrock: -> { Riffer::Providers::AmazonBedrock },
  anthropic: -> { Riffer::Providers::Anthropic },
  azure_openai: -> { Riffer::Providers::AzureOpenAI },
  gemini: -> { Riffer::Providers::Gemini },
  openai: -> { Riffer::Providers::OpenAI },
  mock: -> { Riffer::Providers::Mock }
}.freeze

Class Method Summary collapse

Class Method Details

.find(identifier) ⇒ Object

Finds a provider class by identifier.

– : ((String | Symbol)) -> singleton(Riffer::Providers::Base)?



20
21
22
# File 'lib/riffer/providers/repository.rb', line 20

def self.find(identifier)
  REPO.fetch(identifier.to_sym, nil)&.call
end