Sha256: d6e30b21749349b69b6b24b579795f8e4ad9748e24282ad005daf2052276a64f

Contents?: true

Size: 1.18 KB

Versions: 2

Compression:

Stored size: 1.18 KB

Contents

# frozen_string_literal: true

require 'backports/2.3.0/hash' if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')

require 'zoho_hub/version'
require 'zoho_hub/auth'
require 'zoho_hub/configuration'
require 'zoho_hub/connection'
require 'zoho_hub/errors'
require 'zoho_hub/base_record'
require 'zoho_hub/settings/module'

require 'zoho_hub/reflection/module_builder'

require 'multi_json'

module ZohoHub
  module_function

  def root
    File.expand_path(File.join(__dir__, '..'))
  end

  def configuration
    @configuration ||= Configuration.new
  end

  def configure
    yield(configuration)
  end

  # Callback for when the token is refreshed.
  def on_refresh(&block)
    @connection.on_refresh_cb = block
  end

  def setup_connection(params = {})
    raise "ERROR: #{params[:error]}" if params[:error]

    connection_params = params.dup.slice(:access_token, :expires_in, :api_domain, :refresh_token)

    @connection = Connection.new(connection_params)
  end

  def connection
    @connection
  end

  def refresh_token?
    return false unless connection

    connection.refresh_token?
  end

  def access_token?
    return false unless connection

    connection.access_token?
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
zoho_hub-0.4.0 lib/zoho_hub.rb
zoho_hub-0.3.0 lib/zoho_hub.rb