class Graphiti::Errors::AttributeError

Attributes

exists[R]
flag[R]
guard[R]
name[R]
request[R]
resource[R]

Public Class Methods

new(resource, name, flag, **opts) click to toggle source
# File lib/graphiti/errors.rb, line 336
def initialize(resource, name, flag, **opts)
  @resource = resource
  @name = name
  @flag = flag
  @request = opts[:request] || false
end

Public Instance Methods

action() click to toggle source
# File lib/graphiti/errors.rb, line 343
def action
  if @request
    {
      sortable: "sort on",
      filterable: "filter on",
      readable: "read",
      writable: "write"
    }[@flag]
  else
    {
      sortable: "add sort",
      filterable: "add filter",
      readable: "read",
      writable: "write"
    }[@flag]
  end
end
message() click to toggle source
# File lib/graphiti/errors.rb, line 370
def message
  "#{resource_name}: Tried to #{action} attribute #{@name.inspect}"
end
resource_name() click to toggle source
# File lib/graphiti/errors.rb, line 361
def resource_name
  name = if @resource.is_a?(Graphiti::Resource)
    @resource.class.name
  else
    @resource.name
  end
  name || "AnonymousResourceClass"
end