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.



15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
# File 'lib/models/porcelain.rb', line 15042

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.



15024
15025
15026
# File 'lib/models/porcelain.rb', line 15024

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



15026
15027
15028
# File 'lib/models/porcelain.rb', line 15026

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



15028
15029
15030
# File 'lib/models/porcelain.rb', line 15028

def duration
  @duration
end

#idObject

Unique identifier of the Token.



15030
15031
15032
# File 'lib/models/porcelain.rb', line 15030

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



15032
15033
15034
# File 'lib/models/porcelain.rb', line 15032

def name
  @name
end

#permissionsObject

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



15034
15035
15036
# File 'lib/models/porcelain.rb', line 15034

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



15036
15037
15038
# File 'lib/models/porcelain.rb', line 15036

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



15038
15039
15040
# File 'lib/models/porcelain.rb', line 15038

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



15040
15041
15042
# File 'lib/models/porcelain.rb', line 15040

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



15064
15065
15066
15067
15068
15069
15070
# File 'lib/models/porcelain.rb', line 15064

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