Module: Fog::Tasks

Defined in:
lib/fog/tasks.rb,
lib/fog/wunderlist/tasks.rb,
lib/fog/wunderlist/models/tasks/list.rb,
lib/fog/wunderlist/models/tasks/task.rb,
lib/fog/wunderlist/models/tasks/lists.rb,
lib/fog/wunderlist/models/tasks/tasks.rb,
lib/fog/wunderlist/requests/tasks/get_task.rb,
lib/fog/wunderlist/requests/tasks/list_lists.rb,
lib/fog/wunderlist/requests/tasks/list_tasks.rb,
lib/fog/wunderlist/requests/tasks/create_list.rb,
lib/fog/wunderlist/requests/tasks/create_task.rb,
lib/fog/wunderlist/requests/tasks/delete_list.rb,
lib/fog/wunderlist/requests/tasks/delete_task.rb,
lib/fog/wunderlist/requests/tasks/update_list.rb,
lib/fog/wunderlist/requests/tasks/update_task.rb

Defined Under Namespace

Classes: Wunderlist

Class Method Summary collapse

Class Method Details

.[](provider) ⇒ Object



4
5
6
# File 'lib/fog/tasks.rb', line 4

def self.[](provider)
  self.new(:provider => provider)
end

.new(attributes) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
12
13
14
15
16
17
# File 'lib/fog/tasks.rb', line 8

def self.new(attributes)
  attributes = attributes.dup # prevent delete from having side effects
  provider = attributes.delete(:provider).to_s.downcase.to_sym

  if self.providers.include?(provider)
    require "fog/#{provider}/tasks"
    return Fog::Tasks.const_get(Fog.providers[provider]).new(attributes)
  end
  raise ArgumentError.new("#{provider} is not a recognized tasks provider")
end

.providersObject



19
20
21
# File 'lib/fog/tasks.rb', line 19

def self.providers
  Fog.services[:tasks]
end

.serversObject



23
24
25
26
27
28
29
30
31
32
# File 'lib/fog/tasks.rb', line 23

def self.servers
  servers = []
  for provider in self.providers
    begin
      servers.concat(self[provider].servers)
    rescue # ignore any missing credentials/etc
    end
  end
  servers
end