mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 13:19:39 +02:00
Make provider errors more specific
This commit is contained in:
parent
29f445d75e
commit
dc17a0a298
3 changed files with 8 additions and 3 deletions
|
@ -61,13 +61,12 @@ class Provider
|
||||||
# Override to set class-level error transformation for methods using `with_provider_response`
|
# Override to set class-level error transformation for methods using `with_provider_response`
|
||||||
def default_error_transformer(error)
|
def default_error_transformer(error)
|
||||||
if error.is_a?(Faraday::Error)
|
if error.is_a?(Faraday::Error)
|
||||||
Error.new(
|
self.class::Error.new(
|
||||||
error.message,
|
error.message,
|
||||||
details: error.response&.dig(:body),
|
details: error.response&.dig(:body),
|
||||||
provider: self.class.name
|
|
||||||
)
|
)
|
||||||
else
|
else
|
||||||
Error.new(error.message, provider: self.class.name)
|
self.class::Error.new(error.message)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
class Provider::Openai < Provider
|
class Provider::Openai < Provider
|
||||||
include LlmProvider
|
include LlmProvider
|
||||||
|
|
||||||
|
# Subclass so errors caught in this provider are raised as Provider::Openai::Error
|
||||||
|
Error = Class.new(Provider::Error)
|
||||||
|
|
||||||
MODELS = %w[gpt-4o]
|
MODELS = %w[gpt-4o]
|
||||||
|
|
||||||
def initialize(access_token)
|
def initialize(access_token)
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
class Provider::Synth < Provider
|
class Provider::Synth < Provider
|
||||||
include ExchangeRateProvider, SecurityProvider
|
include ExchangeRateProvider, SecurityProvider
|
||||||
|
|
||||||
|
# Subclass so errors caught in this provider are raised as Provider::Synth::Error
|
||||||
|
Error = Class.new(Provider::Error)
|
||||||
|
|
||||||
def initialize(api_key)
|
def initialize(api_key)
|
||||||
@api_key = api_key
|
@api_key = api_key
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue