Sha256: 4374dae7fd905d57c1456a58eed7c011c21ae4c897bd8ea1337f9c87fee73ab4

Contents?: true

Size: 1007 Bytes

Versions: 2

Compression:

Stored size: 1007 Bytes

Contents

class Zendesk2::Client < Cistern::Service
  USER_AGENT = "Ruby/#{RUBY_VERSION} (#{RUBY_PLATFORM}; #{RUBY_ENGINE}) Zendesk2/#{Zendesk2::VERSION} Faraday/#{Faraday::VERSION}".freeze

  collection_path "zendesk2/client/collections"
  model_path      "zendesk2/client/models"
  request_path    "zendesk2/client/requests"

  # might be nice if cistern took care of this
  [
    [:collection, collection_path],
    [:model,      model_path],
    [:request,    request_path],
  ].each do |type, path|
    Dir[File.expand_path(File.join("../..", path, "*.rb"), __FILE__)].sort.each do |file|
      send(type, File.basename(file, ".rb"))
    end
  end

  recognizes :url, :logger, :adapter, :username, :password, :token, :jwt_token

  module Shared
    def require_parameters(params, *requirements)
      if (missing = requirements - params.keys).any?
        raise ArgumentError, "missing parameters: #{missing.join(", ")}"
      end
    end
  end
end

require 'zendesk2/client/real'
require 'zendesk2/client/mock'

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
zendesk2-1.1.3 lib/zendesk2/client.rb
zendesk2-1.1.2 lib/zendesk2/client.rb