Class: Io::Flow::V0::Models::PartnerToken

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

Overview

All of the metadata associated with a given token.

Instance Attribute Summary collapse

Attributes inherited from Token

#discriminator

Instance Method Summary collapse

Methods inherited from Token

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ PartnerToken

Returns a new instance of PartnerToken.



21113
21114
21115
21116
21117
21118
21119
21120
21121
21122
21123
21124
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21113

def initialize(incoming={})
  super(:discriminator => Token::Types::PARTNER_TOKEN)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:id, :partner, :user, :environment, :partial, :created_at], 'PartnerToken')
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
  @partner = (x = opts.delete(:partner); x.is_a?(::Io::Flow::V0::Models::TokenPartnerReference) ? x : ::Io::Flow::V0::Models::TokenPartnerReference.new(x))
  @user = (x = opts.delete(:user); x.is_a?(::Io::Flow::V0::Models::UserReference) ? x : ::Io::Flow::V0::Models::UserReference.new(x))
  @environment = (x = opts.delete(:environment); x.is_a?(::Io::Flow::V0::Models::Environment) ? x : ::Io::Flow::V0::Models::Environment.apply(x))
  @partial = HttpClient::Preconditions.assert_class('partial', opts.delete(:partial), String)
  @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime)
  @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
end

Instance Attribute Details

#created_atObject (readonly)

Returns the value of attribute created_at.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def created_at
  @created_at
end

#descriptionObject (readonly)

Returns the value of attribute description.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def description
  @description
end

#environmentObject (readonly)

Returns the value of attribute environment.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def environment
  @environment
end

#idObject (readonly)

Returns the value of attribute id.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def id
  @id
end

#partialObject (readonly)

Returns the value of attribute partial.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def partial
  @partial
end

#partnerObject (readonly)

Returns the value of attribute partner.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def partner
  @partner
end

#userObject (readonly)

Returns the value of attribute user.



21111
21112
21113
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21111

def user
  @user
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



21130
21131
21132
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21130

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

#subtype_to_hashObject



21134
21135
21136
21137
21138
21139
21140
21141
21142
21143
21144
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21134

def subtype_to_hash
  {
    :id => id,
    :partner => partner.to_hash,
    :user => user.to_hash,
    :environment => environment.value,
    :partial => partial,
    :created_at => created_at,
    :description => description
  }
end

#to_jsonObject



21126
21127
21128
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 21126

def to_json
  JSON.dump(to_hash)
end