class Locomotive::Coal::Resources::Base

Attributes

credentials[RW]
uri[RW]

Public Class Methods

new(uri, credentials) click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 12
def initialize(uri, credentials)
  @uri, @credentials = uri, credentials
end

Public Instance Methods

all()
Alias for: index
create(attributes = {}) click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 24
def create(attributes = {})
  data = post(resources_name, { resource_name => attributes })
  Resource.new(data)
end
destroy(id) click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 39
def destroy(id)
  data = delete("#{resources_name}/#{id}")
  Resource.new(data)
end
destroy_all() click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 44
def destroy_all
  delete("#{resources_name}")
end
index() click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 16
def index
  get(resources_name).map do |attributes|
    Resource.new(attributes)
  end
end
Also aliased as: all
update(id, attributes = {}) click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 29
def update(id, attributes = {})
  data = put("#{resources_name}/#{id}", { resource_name => attributes })
  Resource.new(data)
end
update_with_locale(id, attributes = {}, locale = nil) click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 34
def update_with_locale(id, attributes = {}, locale = nil)
  data = put("#{resources_name}/#{id}", { _locale: locale, resource_name => attributes })
  Resource.new(data)
end

Private Instance Methods

resource_name() click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 54
def resource_name
  self.class.name.demodulize.underscore.singularize
end
resources_name() click to toggle source
# File lib/locomotive/coal/resources/base.rb, line 50
def resources_name
  resource_name.pluralize
end