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.



17907
17908
17909
17910
17911
17912
17913
17914
17915
17916
17917
17918
17919
17920
17921
17922
17923
17924
17925
17926
17927
17928
17929
# File 'lib/models/porcelain.rb', line 17907

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.



17887
17888
17889
# File 'lib/models/porcelain.rb', line 17887

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



17889
17890
17891
# File 'lib/models/porcelain.rb', line 17889

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



17891
17892
17893
# File 'lib/models/porcelain.rb', line 17891

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



17893
17894
17895
# File 'lib/models/porcelain.rb', line 17893

def duration
  @duration
end

#idObject

Unique identifier of the Token.



17895
17896
17897
# File 'lib/models/porcelain.rb', line 17895

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



17897
17898
17899
# File 'lib/models/porcelain.rb', line 17897

def name
  @name
end

#permissionsObject

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



17899
17900
17901
# File 'lib/models/porcelain.rb', line 17899

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



17901
17902
17903
# File 'lib/models/porcelain.rb', line 17901

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



17903
17904
17905
# File 'lib/models/porcelain.rb', line 17903

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



17905
17906
17907
# File 'lib/models/porcelain.rb', line 17905

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17931
17932
17933
17934
17935
17936
17937
# File 'lib/models/porcelain.rb', line 17931

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