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.



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

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.



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

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



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

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



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

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



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

def duration
  @duration
end

#idObject

Unique identifier of the Token.



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

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



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

def name
  @name
end

#permissionsObject

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



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

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



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

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



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

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



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

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



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

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