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, created_at: nil, deadline: nil, duration: nil, id: nil, name: nil, permissions: nil, rekeyed: nil, suspended: nil, tags: nil) ⇒ Token

Returns a new instance of Token.



17037
17038
17039
17040
17041
17042
17043
17044
17045
17046
17047
17048
17049
17050
17051
17052
17053
17054
17055
17056
17057
17058
17059
# File 'lib/models/porcelain.rb', line 17037

def initialize(
  account_type: nil,
  created_at: nil,
  deadline: nil,
  duration: nil,
  id: nil,
  name: nil,
  permissions: nil,
  rekeyed: nil,
  suspended: nil,
  tags: nil
)
  @account_type =  == nil ? "" : 
  @created_at = created_at == nil ? nil : created_at
  @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.



17017
17018
17019
# File 'lib/models/porcelain.rb', line 17017

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



17019
17020
17021
# File 'lib/models/porcelain.rb', line 17019

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



17021
17022
17023
# File 'lib/models/porcelain.rb', line 17021

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



17023
17024
17025
# File 'lib/models/porcelain.rb', line 17023

def duration
  @duration
end

#idObject

Unique identifier of the Token.



17025
17026
17027
# File 'lib/models/porcelain.rb', line 17025

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



17027
17028
17029
# File 'lib/models/porcelain.rb', line 17027

def name
  @name
end

#permissionsObject

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



17029
17030
17031
# File 'lib/models/porcelain.rb', line 17029

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



17031
17032
17033
# File 'lib/models/porcelain.rb', line 17031

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



17033
17034
17035
# File 'lib/models/porcelain.rb', line 17033

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



17035
17036
17037
# File 'lib/models/porcelain.rb', line 17035

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17061
17062
17063
17064
17065
17066
17067
# File 'lib/models/porcelain.rb', line 17061

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