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.



17101
17102
17103
17104
17105
17106
17107
17108
17109
17110
17111
17112
17113
17114
17115
17116
17117
17118
17119
17120
17121
17122
17123
# File 'lib/models/porcelain.rb', line 17101

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.



17081
17082
17083
# File 'lib/models/porcelain.rb', line 17081

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



17083
17084
17085
# File 'lib/models/porcelain.rb', line 17083

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



17085
17086
17087
# File 'lib/models/porcelain.rb', line 17085

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



17087
17088
17089
# File 'lib/models/porcelain.rb', line 17087

def duration
  @duration
end

#idObject

Unique identifier of the Token.



17089
17090
17091
# File 'lib/models/porcelain.rb', line 17089

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



17091
17092
17093
# File 'lib/models/porcelain.rb', line 17091

def name
  @name
end

#permissionsObject

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



17093
17094
17095
# File 'lib/models/porcelain.rb', line 17093

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



17095
17096
17097
# File 'lib/models/porcelain.rb', line 17095

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



17097
17098
17099
# File 'lib/models/porcelain.rb', line 17097

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



17099
17100
17101
# File 'lib/models/porcelain.rb', line 17099

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17125
17126
17127
17128
17129
17130
17131
# File 'lib/models/porcelain.rb', line 17125

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