mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-18 20:59:39 +02:00
38 lines
614 B
Ruby
38 lines
614 B
Ruby
|
module Synthable
|
||
|
extend ActiveSupport::Concern
|
||
|
|
||
|
class_methods do
|
||
|
def synth_usage
|
||
|
synth_client&.usage
|
||
|
end
|
||
|
|
||
|
def synth_overage?
|
||
|
synth_usage&.usage&.utilization.to_i >= 100
|
||
|
end
|
||
|
|
||
|
def synth_healthy?
|
||
|
synth_client&.healthy?
|
||
|
end
|
||
|
|
||
|
def synth_client
|
||
|
api_key = ENV.fetch("SYNTH_API_KEY", Setting.synth_api_key)
|
||
|
|
||
|
return nil unless api_key.present?
|
||
|
|
||
|
Provider::Synth.new(api_key)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def synth_client
|
||
|
self.class.synth_client
|
||
|
end
|
||
|
|
||
|
def synth_usage
|
||
|
self.class.synth_usage
|
||
|
end
|
||
|
|
||
|
def synth_overage?
|
||
|
self.class.synth_overage?
|
||
|
end
|
||
|
end
|