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.



13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
# File 'lib/models/porcelain.rb', line 13208

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.



13190
13191
13192
# File 'lib/models/porcelain.rb', line 13190

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



13192
13193
13194
# File 'lib/models/porcelain.rb', line 13192

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



13194
13195
13196
# File 'lib/models/porcelain.rb', line 13194

def duration
  @duration
end

#idObject

Unique identifier of the Token.



13196
13197
13198
# File 'lib/models/porcelain.rb', line 13196

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



13198
13199
13200
# File 'lib/models/porcelain.rb', line 13198

def name
  @name
end

#permissionsObject

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



13200
13201
13202
# File 'lib/models/porcelain.rb', line 13200

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



13202
13203
13204
# File 'lib/models/porcelain.rb', line 13202

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



13204
13205
13206
# File 'lib/models/porcelain.rb', line 13204

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



13206
13207
13208
# File 'lib/models/porcelain.rb', line 13206

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



13230
13231
13232
13233
13234
13235
13236
# File 'lib/models/porcelain.rb', line 13230

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