Class: SDM::Token

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

A Token is an account providing tokenized access for automation or integration use. Tokens include admin tokens, API keys, and SCIM tokens.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(account_type: nil, deadline: nil, duration: nil, id: nil, name: nil, permissions: nil, rekeyed: nil, suspended: nil, tags: nil) ⇒ Token

Returns a new instance of Token.



10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
# File 'lib/models/porcelain.rb', line 10836

def initialize(
  account_type: nil,
  deadline: nil,
  duration: nil,
  id: nil,
  name: nil,
  permissions: nil,
  rekeyed: nil,
  suspended: nil,
  tags: nil
)
  @account_type =  == nil ? "" : 
  @deadline = deadline == nil ? nil : deadline
  @duration = duration == nil ? nil : duration
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @permissions = permissions == nil ? [] : permissions
  @rekeyed = rekeyed == nil ? nil : rekeyed
  @suspended = suspended == nil ? false : suspended
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
end

Instance Attribute Details

#account_typeObject

Corresponds to the type of token, e.g. api or admin-token.



10818
10819
10820
# File 'lib/models/porcelain.rb', line 10818

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



10820
10821
10822
# File 'lib/models/porcelain.rb', line 10820

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



10822
10823
10824
# File 'lib/models/porcelain.rb', line 10822

def duration
  @duration
end

#idObject

Unique identifier of the Token.



10824
10825
10826
# File 'lib/models/porcelain.rb', line 10824

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



10826
10827
10828
# File 'lib/models/porcelain.rb', line 10826

def name
  @name
end

#permissionsObject

Permissions assigned to the token, e.g. role:create.



10828
10829
10830
# File 'lib/models/porcelain.rb', line 10828

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



10830
10831
10832
# File 'lib/models/porcelain.rb', line 10830

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



10832
10833
10834
# File 'lib/models/porcelain.rb', line 10832

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



10834
10835
10836
# File 'lib/models/porcelain.rb', line 10834

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



10858
10859
10860
10861
10862
10863
10864
# File 'lib/models/porcelain.rb', line 10858

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end