class Fog::Proxmox::Identity::Token

class Token model

Public Class Methods

new(new_attributes = {}) click to toggle source
Calls superclass method
# File lib/fog/proxmox/identity/models/token.rb, line 34
def initialize(new_attributes = {})
  prepare_service_value(new_attributes)
  Fog::Proxmox::Attributes.set_attr_and_sym('tokenid', attributes, new_attributes)
  Fog::Proxmox::Attributes.set_attr_and_sym('userid', attributes, new_attributes)
  requires :userid, :tokenid
  initialize_info
  super(new_attributes)
end

Public Instance Methods

destroy() click to toggle source
# File lib/fog/proxmox/identity/models/token.rb, line 51
def destroy
  requires :tokenid, :userid
  service.delete_token(userid, tokenid)
  true
end
save(options = {}) click to toggle source
# File lib/fog/proxmox/identity/models/token.rb, line 44
def save(options = {})
  requires :tokenid, :userid
  token_hash = (attributes.reject { |attribute| [:userid, :tokenid, :info].include? attribute }).merge(options)
  service.create_token(userid, tokenid, token_hash)
  reload
end
update() click to toggle source
# File lib/fog/proxmox/identity/models/token.rb, line 57
def update
  requires :tokenid, :userid
  service.update_token(userid, tokenid, attributes.reject { |attribute| [:userid, :tokenid, :info].include? attribute })
  reload
end

Private Instance Methods

initialize_info() click to toggle source
# File lib/fog/proxmox/identity/models/token.rb, line 65
def initialize_info
  attributes[:info] = Fog::Proxmox::Identity::TokenInfo.new(service: service, tokenid: tokenid, userid: userid)
end