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.



14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
# File 'lib/models/porcelain.rb', line 14695

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.



14677
14678
14679
# File 'lib/models/porcelain.rb', line 14677

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



14679
14680
14681
# File 'lib/models/porcelain.rb', line 14679

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



14681
14682
14683
# File 'lib/models/porcelain.rb', line 14681

def duration
  @duration
end

#idObject

Unique identifier of the Token.



14683
14684
14685
# File 'lib/models/porcelain.rb', line 14683

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



14685
14686
14687
# File 'lib/models/porcelain.rb', line 14685

def name
  @name
end

#permissionsObject

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



14687
14688
14689
# File 'lib/models/porcelain.rb', line 14687

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



14689
14690
14691
# File 'lib/models/porcelain.rb', line 14689

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



14691
14692
14693
# File 'lib/models/porcelain.rb', line 14691

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



14693
14694
14695
# File 'lib/models/porcelain.rb', line 14693

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



14717
14718
14719
14720
14721
14722
14723
# File 'lib/models/porcelain.rb', line 14717

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