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.



12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
# File 'lib/models/porcelain.rb', line 12273

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.



12255
12256
12257
# File 'lib/models/porcelain.rb', line 12255

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



12257
12258
12259
# File 'lib/models/porcelain.rb', line 12257

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



12259
12260
12261
# File 'lib/models/porcelain.rb', line 12259

def duration
  @duration
end

#idObject

Unique identifier of the Token.



12261
12262
12263
# File 'lib/models/porcelain.rb', line 12261

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



12263
12264
12265
# File 'lib/models/porcelain.rb', line 12263

def name
  @name
end

#permissionsObject

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



12265
12266
12267
# File 'lib/models/porcelain.rb', line 12265

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



12267
12268
12269
# File 'lib/models/porcelain.rb', line 12267

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



12269
12270
12271
# File 'lib/models/porcelain.rb', line 12269

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



12271
12272
12273
# File 'lib/models/porcelain.rb', line 12271

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12295
12296
12297
12298
12299
12300
12301
# File 'lib/models/porcelain.rb', line 12295

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