class Interage::ApplicationBuilder

Public Class Methods

all(*args) click to toggle source
# File lib/interage/application_builder.rb, line 9
def self.all(*args)
  new.requester.all(*args)
end
find(*args) click to toggle source
# File lib/interage/application_builder.rb, line 13
def self.find(*args)
  new.requester.find(*args)
end
paginate(*args) click to toggle source
# File lib/interage/application_builder.rb, line 5
def self.paginate(*args)
  new.requester.paginate(*args)
end

Public Instance Methods

create(params = {}) click to toggle source
# File lib/interage/application_builder.rb, line 17
def create(params = {})
  self.attributes = params

  return false if invalid?

  response = requester.create(changeable_attributes)

  mount_errors(response.errors)

  response.success?
end
destroy() click to toggle source
# File lib/interage/application_builder.rb, line 41
def destroy
  response = requester.destroy(id)

  mount_errors(response.errors)

  response.success?
end
requester() click to toggle source
# File lib/interage/application_builder.rb, line 49
def requester
  raise ArgumentError,
        "requester is missing for #{self.class.superclass.name}"
end
update(params = {}) click to toggle source
# File lib/interage/application_builder.rb, line 29
def update(params = {})
  self.attributes = params

  return false if invalid?

  response = requester.update(id, changeable_attributes)

  mount_errors(response.errors)

  response.success?
end

Private Instance Methods

changeable_attributes() click to toggle source
# File lib/interage/application_builder.rb, line 56
def changeable_attributes
  raise ArgumentError,
        "changeable_attributes is missing for #{self.class.superclass.name}"
end