Class: Runcible::Resources::ConsumerGroup

Inherits:
Base
  • Object
show all
Defined in:
lib/runcible/resources/consumer_group.rb

Overview

Direct Known Subclasses

Extensions::ConsumerGroup

Instance Method Summary collapse

Methods inherited from Base

#add_http_auth_header, #add_oauth_header, #call, #combine_get_params, #config, #format_payload_json, #generate_log_message, #generate_payload, #get_response, #initialize, #lazy_config=, #log_debug, #log_exception, #logger, #process_response, #required_params

Constructor Details

This class inherits a constructor from Runcible::Base

Instance Method Details

#associate(id, criteria) ⇒ RestClient::Response

Associates Consumers with a Consumer Group



71
72
73
# File 'lib/runcible/resources/consumer_group.rb', line 71

def associate(id, criteria)
  call(:post, path(id) + "actions/associate/", :payload => {:required => criteria})
end

#create(id, optional = {}) ⇒ RestClient::Response

Creates a Consumer Group



45
46
47
48
# File 'lib/runcible/resources/consumer_group.rb', line 45

def create(id, optional={})
  required = required_params(binding.send(:local_variables), binding)
  call(:post, path, :payload => { :required => required, :optional => optional })
end

#delete(id) ⇒ RestClient::Response

Deletes a Consumer Group



62
63
64
# File 'lib/runcible/resources/consumer_group.rb', line 62

def delete(id)
  call(:delete, path(id))
end

#install_units(id, units, options = {}) ⇒ RestClient::Response

Install a set of units to a Consumer Group



90
91
92
93
# File 'lib/runcible/resources/consumer_group.rb', line 90

def install_units(id, units, options={})
  required = required_params(binding.send(:local_variables), binding, ["id"])
  call(:post, path("#{id}/actions/content/install"), :payload => { :required => required })
end

#path(id = nil) ⇒ String

Generates the API path for Consumer Groups



35
36
37
38
# File 'lib/runcible/resources/consumer_group.rb', line 35

def path(id=nil)
  groups = "consumer_groups/"
  id.nil? ? groups : groups + "#{id}/"
end

#retrieve(id) ⇒ RestClient::Response

Retrieves a Consumer Group



54
55
56
# File 'lib/runcible/resources/consumer_group.rb', line 54

def retrieve(id)
  call(:get, path(id))
end

#unassociate(id, criteria) ⇒ RestClient::Response

Unassociates Consumers with a Consumer Group



80
81
82
# File 'lib/runcible/resources/consumer_group.rb', line 80

def unassociate(id, criteria)
  call(:post, path(id) + "actions/unassociate/", :payload => {:required => criteria})
end

#uninstall_units(id, units, options = {}) ⇒ RestClient::Response

Uninstall a set of units from a Consumer Group



112
113
114
115
# File 'lib/runcible/resources/consumer_group.rb', line 112

def uninstall_units(id, units, options={})
  required = required_params(binding.send(:local_variables), binding, ["id"])
  call(:post, path("#{id}/actions/content/uninstall"), :payload => { :required => required })
end

#update_units(id, units, options = {}) ⇒ RestClient::Response

Update a set of units on a Consumer Group



101
102
103
104
# File 'lib/runcible/resources/consumer_group.rb', line 101

def update_units(id, units, options={})
  required = required_params(binding.send(:local_variables), binding, ["id"])
  call(:post, path("#{id}/actions/content/update"), :payload => { :required => required })
end