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.



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

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.



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

def 
  @account_type
end

#deadlineObject

The timestamp when the Token will expire.



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

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



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

def duration
  @duration
end

#idObject

Unique identifier of the Token.



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

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



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

def name
  @name
end

#permissionsObject

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



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

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



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

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



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

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



15058
15059
15060
# File 'lib/models/porcelain.rb', line 15058

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



15082
15083
15084
15085
15086
15087
15088
# File 'lib/models/porcelain.rb', line 15082

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