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.



17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
17501
17502
17503
# File 'lib/models/porcelain.rb', line 17481

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.



17461
17462
17463
# File 'lib/models/porcelain.rb', line 17461

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



17463
17464
17465
# File 'lib/models/porcelain.rb', line 17463

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



17465
17466
17467
# File 'lib/models/porcelain.rb', line 17465

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



17467
17468
17469
# File 'lib/models/porcelain.rb', line 17467

def duration
  @duration
end

#idObject

Unique identifier of the Token.



17469
17470
17471
# File 'lib/models/porcelain.rb', line 17469

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



17471
17472
17473
# File 'lib/models/porcelain.rb', line 17471

def name
  @name
end

#permissionsObject

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



17473
17474
17475
# File 'lib/models/porcelain.rb', line 17473

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



17475
17476
17477
# File 'lib/models/porcelain.rb', line 17475

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



17477
17478
17479
# File 'lib/models/porcelain.rb', line 17477

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



17479
17480
17481
# File 'lib/models/porcelain.rb', line 17479

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17505
17506
17507
17508
17509
17510
17511
# File 'lib/models/porcelain.rb', line 17505

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