Sha256: 2b3788be897afaccf9d2181fe6211ecb3ad0cb17dc344a8b25bd42f777fb0c45
Contents?: true
Size: 1 KB
Versions: 3
Compression:
Stored size: 1 KB
Contents
require 'active_support/inflector' require 'faraday' require 'gecko-pusher/channel' require 'gecko-pusher/version' module Gecko module Pusher CHANNEL_TYPES = [ :text, :map, :number, :rag, :rag_col, :line_chart, :pie_chart, :gecko_meter, :funnel, :bullet ] TEXT_NONE = 0 TEXT_ALERT = 1 TEXT_INFO = 2 TEXT_TYPES = [TEXT_NONE, TEXT_ALERT, TEXT_INFO] class NotInitializedError < StandardError end class << self attr_accessor :api_key def channel(widget_type, widget_key) raise NotInitializedError if api_key.nil? raise ArgumentError.new("widget_key cannot be nil") if widget_key.nil? raise ArgumentError unless CHANNEL_TYPES.include?(widget_type) "Gecko::Pusher::Channel::#{widget_type.to_s.camelize}".constantize.new(widget_key) end def connection @connection ||= Faraday.new(:url => "https://push.geckoboard.com") do |builder| builder.adapter :net_http end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gecko-pusher-0.0.3 | lib/gecko-pusher.rb |
gecko-pusher-0.0.2 | lib/gecko-pusher.rb |
gecko-pusher-0.0.1 | lib/gecko-pusher.rb |