Class: Io::Flow::V0::Models::PermissionError

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Returned if no permissions are available for a request.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ PermissionError

Returns a new instance of PermissionError.



44528
44529
44530
44531
44532
44533
44534
44535
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44528

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:code, :messages], 'PermissionError')
  @code = (x = opts.delete(:code); x.is_a?(::Io::Flow::V0::Models::GenericErrorCode) ? x : ::Io::Flow::V0::Models::GenericErrorCode.apply(x))
  @messages = HttpClient::Preconditions.assert_class('messages', opts.delete(:messages), Array).map { |v| HttpClient::Preconditions.assert_class('messages', v, String) }
  @granting_roles = (x = opts.delete(:granting_roles); x.nil? ? nil : HttpClient::Preconditions.assert_class('granting_roles', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::FlowRole) ? x : ::Io::Flow::V0::Models::FlowRole.apply(x)) })
  @admin_users = (x = opts.delete(:admin_users); x.nil? ? nil : HttpClient::Preconditions.assert_class('admin_users', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::User) ? x : ::Io::Flow::V0::Models::User.new(x)) })
end

Instance Attribute Details

#admin_usersObject (readonly)

Returns the value of attribute admin_users.



44526
44527
44528
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44526

def admin_users
  @admin_users
end

#codeObject (readonly)

Returns the value of attribute code.



44526
44527
44528
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44526

def code
  @code
end

#granting_rolesObject (readonly)

Returns the value of attribute granting_roles.



44526
44527
44528
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44526

def granting_roles
  @granting_roles
end

#messagesObject (readonly)

Returns the value of attribute messages.



44526
44527
44528
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44526

def messages
  @messages
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



44541
44542
44543
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44541

def copy(incoming={})
  PermissionError.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#to_hashObject



44545
44546
44547
44548
44549
44550
44551
44552
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44545

def to_hash
  {
    :code => code.value,
    :messages => messages,
    :granting_roles => granting_roles.nil? ? nil : granting_roles.map { |o| o.value },
    :admin_users => admin_users.nil? ? nil : admin_users.map { |o| o.to_hash }
  }
end

#to_jsonObject



44537
44538
44539
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 44537

def to_json
  JSON.dump(to_hash)
end