Module: FractalApi

Defined in:
lib/fractal_api.rb,
lib/fractal_api/bank.rb,
lib/fractal_api/client.rb,
lib/fractal_api/errors.rb,
lib/fractal_api/balance.rb,
lib/fractal_api/company.rb,
lib/fractal_api/consent.rb,
lib/fractal_api/version.rb,
lib/fractal_api/category.rb,
lib/fractal_api/merchant.rb,
lib/fractal_api/paginator.rb,
lib/fractal_api/base_model.rb,
lib/fractal_api/transaction.rb,
lib/fractal_api/authenticate.rb,
lib/fractal_api/bank_account.rb,
lib/fractal_api/faraday_auth.rb,
lib/fractal_api/configuration.rb,
lib/fractal_api/paged_response.rb,
lib/fractal_api/camelizer_lower.rb,
lib/fractal_api/bank_account_scheme.rb,
lib/fractal_api/forecasting/balance.rb,
lib/fractal_api/forecasting/forecast.rb,
lib/fractal_api/forecasting/transaction.rb

Defined Under Namespace

Modules: Forecasting Classes: APIKeyError, Authenticate, Balance, Bank, BankAccount, BankAccountScheme, BaseModel, CamelizerLower, Category, Client, Company, Configuration, Consent, FaradayAuth, GenericError, InvalidRequestError, Merchant, NotFoundError, PagedResponse, Paginator, Transaction, UnauthorizedError

Constant Summary collapse

VERSION =
'0.1.3'

Class Method Summary collapse

Class Method Details

.clientObject



24
25
26
# File 'lib/fractal_api.rb', line 24

def client
  @client ||= Client.new
end

.configurationObject



28
29
30
# File 'lib/fractal_api.rb', line 28

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



20
21
22
# File 'lib/fractal_api.rb', line 20

def configure
  yield(configuration)
end

.global_tokenObject



47
48
49
# File 'lib/fractal_api.rb', line 47

def global_token
  Thread.current[:fractal_api_token]
end

.with_global_tokenObject

Sets global token for the duration of the block Token is set in Thread local variable, so it’s usable in the current Thread only (sidekiq job, rails request, etc.)

MUST not be nested in another with_global_token block



37
38
39
40
41
42
43
44
45
# File 'lib/fractal_api.rb', line 37

def with_global_token
  Thread.current[:fractal_api_token] = Authenticate.new.call(
    configuration.api_key, configuration.partner_id
  )

  yield
ensure
  Thread.current[:fractal_api_token] = nil
end