Sha256: 2eb889239c1924f6366cbf5410d3ba47db0ded6ddb14cd8429db7e34fd16d36c

Contents?: true

Size: 802 Bytes

Versions: 190

Compression:

Stored size: 802 Bytes

Contents

# frozen_string_literal: true
module GraphQL
  class UnauthorizedFieldError < GraphQL::UnauthorizedError
    # @return [Field] the field that failed the authorization check
    attr_accessor :field

    def initialize(message = nil, object: nil, type: nil, context: nil, field: nil)
      if message.nil? && [field, type].any?(&:nil?)
        raise ArgumentError, "#{self.class.name} requires either a message or keywords"
      end

      @field = field
      message ||= begin
        if object
          "An instance of #{object.class} failed #{type.name}'s authorization check on field #{field.name}"
        else
          "Failed #{type.name}'s authorization check on field #{field.name}"
        end
      end
      super(message, object: object, type: type, context: context)
    end
  end
end

Version data entries

190 entries across 190 versions & 2 rubygems

Version Path
graphql-1.10.0.pre1 lib/graphql/unauthorized_field_error.rb
graphql-1.9.13 lib/graphql/unauthorized_field_error.rb
graphql-1.9.12 lib/graphql/unauthorized_field_error.rb
graphql-1.9.11 lib/graphql/unauthorized_field_error.rb
graphql-1.9.10 lib/graphql/unauthorized_field_error.rb
graphql-1.9.9 lib/graphql/unauthorized_field_error.rb
graphql-1.9.8 lib/graphql/unauthorized_field_error.rb
graphql-1.9.7 lib/graphql/unauthorized_field_error.rb
graphql-1.9.6 lib/graphql/unauthorized_field_error.rb
graphql-1.9.5 lib/graphql/unauthorized_field_error.rb