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.



12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
# File 'lib/models/porcelain.rb', line 12046

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.



12028
12029
12030
# File 'lib/models/porcelain.rb', line 12028

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



12030
12031
12032
# File 'lib/models/porcelain.rb', line 12030

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



12032
12033
12034
# File 'lib/models/porcelain.rb', line 12032

def duration
  @duration
end

#idObject

Unique identifier of the Token.



12034
12035
12036
# File 'lib/models/porcelain.rb', line 12034

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



12036
12037
12038
# File 'lib/models/porcelain.rb', line 12036

def name
  @name
end

#permissionsObject

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



12038
12039
12040
# File 'lib/models/porcelain.rb', line 12038

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



12040
12041
12042
# File 'lib/models/porcelain.rb', line 12040

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



12042
12043
12044
# File 'lib/models/porcelain.rb', line 12042

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



12044
12045
12046
# File 'lib/models/porcelain.rb', line 12044

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12068
12069
12070
12071
12072
12073
12074
# File 'lib/models/porcelain.rb', line 12068

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