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.



16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
# File 'lib/models/porcelain.rb', line 16111

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.



16093
16094
16095
# File 'lib/models/porcelain.rb', line 16093

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



16095
16096
16097
# File 'lib/models/porcelain.rb', line 16095

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



16097
16098
16099
# File 'lib/models/porcelain.rb', line 16097

def duration
  @duration
end

#idObject

Unique identifier of the Token.



16099
16100
16101
# File 'lib/models/porcelain.rb', line 16099

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



16101
16102
16103
# File 'lib/models/porcelain.rb', line 16101

def name
  @name
end

#permissionsObject

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



16103
16104
16105
# File 'lib/models/porcelain.rb', line 16103

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



16105
16106
16107
# File 'lib/models/porcelain.rb', line 16105

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



16107
16108
16109
# File 'lib/models/porcelain.rb', line 16107

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



16109
16110
16111
# File 'lib/models/porcelain.rb', line 16109

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



16133
16134
16135
16136
16137
16138
16139
# File 'lib/models/porcelain.rb', line 16133

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