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.



15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
# File 'lib/models/porcelain.rb', line 15057

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.



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

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



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

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



15043
15044
15045
# File 'lib/models/porcelain.rb', line 15043

def duration
  @duration
end

#idObject

Unique identifier of the Token.



15045
15046
15047
# File 'lib/models/porcelain.rb', line 15045

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



15047
15048
15049
# File 'lib/models/porcelain.rb', line 15047

def name
  @name
end

#permissionsObject

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



15049
15050
15051
# File 'lib/models/porcelain.rb', line 15049

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



15051
15052
15053
# File 'lib/models/porcelain.rb', line 15051

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



15053
15054
15055
# File 'lib/models/porcelain.rb', line 15053

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



15055
15056
15057
# File 'lib/models/porcelain.rb', line 15055

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



15079
15080
15081
15082
15083
15084
15085
# File 'lib/models/porcelain.rb', line 15079

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