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.



12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
# File 'lib/models/porcelain.rb', line 12890

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.



12872
12873
12874
# File 'lib/models/porcelain.rb', line 12872

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



12874
12875
12876
# File 'lib/models/porcelain.rb', line 12874

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



12876
12877
12878
# File 'lib/models/porcelain.rb', line 12876

def duration
  @duration
end

#idObject

Unique identifier of the Token.



12878
12879
12880
# File 'lib/models/porcelain.rb', line 12878

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



12880
12881
12882
# File 'lib/models/porcelain.rb', line 12880

def name
  @name
end

#permissionsObject

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



12882
12883
12884
# File 'lib/models/porcelain.rb', line 12882

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



12884
12885
12886
# File 'lib/models/porcelain.rb', line 12884

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



12886
12887
12888
# File 'lib/models/porcelain.rb', line 12886

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



12888
12889
12890
# File 'lib/models/porcelain.rb', line 12888

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12912
12913
12914
12915
12916
12917
12918
# File 'lib/models/porcelain.rb', line 12912

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