Sha256: 79fde48ac83a1dc11261d961891d538020c7313423c3de719db37059e76b68ba

Contents?: true

Size: 1.62 KB

Versions: 21

Compression:

Stored size: 1.62 KB

Contents

require 'seatsio/version'
require 'seatsio/charts'
require 'seatsio/workspaces'
require 'seatsio/events'
require 'seatsio/seasons'
require 'seatsio/hold_tokens'
require 'seatsio/chart_reports'
require 'seatsio/event_reports'
require 'seatsio/usage_reports'
require 'seatsio/event_log'

module Seatsio
  class Client
    attr_reader :charts, :workspaces, :events, :seasons,
                :hold_tokens, :chart_reports, :event_reports, :usage_reports, :event_log

    def initialize(region, secret_key, workspace_key = nil, max_retries = 5)
      base_url = region.url
      @http_client = Seatsio::HttpClient.new(secret_key, workspace_key, base_url, max_retries)
      @charts = ChartsClient.new(@http_client)
      @workspaces = WorkspacesClient.new(@http_client)
      @events = EventsClient.new(@http_client)
      @seasons = SeasonsClient.new(@http_client, self)
      @hold_tokens = HoldTokensClient.new(@http_client)
      @chart_reports = ChartReportsClient.new(@http_client)
      @event_reports = EventReportsClient.new(@http_client)
      @usage_reports = UsageReportsClient.new(@http_client)
      @event_log = EventLogClient.new(@http_client)
    end
  end

  class Region
    attr_reader :url

    def initialize(url)
      @url = url
    end

    def self.EU()
      return Region.new(Region.url_for_id("eu"))
    end

    def self.NA()
      return Region.new(Region.url_for_id("na"))
    end

    def self.SA()
      return Region.new(Region.url_for_id("sa"))
    end

    def self.OC()
      return Region.new(Region.url_for_id("oc"))
    end

    def self.url_for_id(id)
      return "https://api-" + id + ".seatsio.net"
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
seatsio-51.4.0 lib/seatsio.rb
seatsio-51.3.0 lib/seatsio.rb
seatsio-51.2.0 lib/seatsio.rb
seatsio-51.1.0 lib/seatsio.rb
seatsio-51.0.0 lib/seatsio.rb
seatsio-50.0.0 lib/seatsio.rb
seatsio-49.1.0 lib/seatsio.rb
seatsio-49.0.0 lib/seatsio.rb
seatsio-48.11.0 lib/seatsio.rb
seatsio-48.10.0 lib/seatsio.rb
seatsio-48.9.0 lib/seatsio.rb
seatsio-48.8.0 lib/seatsio.rb
seatsio-48.7.0 lib/seatsio.rb
seatsio-48.6.0 lib/seatsio.rb
seatsio-48.5.0 lib/seatsio.rb
seatsio-48.4.0 lib/seatsio.rb
seatsio-48.3.0 lib/seatsio.rb
seatsio-48.2.0 lib/seatsio.rb
seatsio-48.1.0 lib/seatsio.rb
seatsio-48.0.0 lib/seatsio.rb