class Brightbox::Token
Attributes
Public Class Methods
Source
# File lib/brightbox-cli/token.rb, line 11 def initialize(config, options = {}) @config = config @options = options end
Source
# File lib/brightbox-cli/token.rb, line 5 def self.show(config, options) new(config, options) end
Public Instance Methods
Source
# File lib/brightbox-cli/token.rb, line 16 def access_token config.access_token end
Source
# File lib/brightbox-cli/token.rb, line 20 def format(output = :text) output = output.to_sym case output when :curl curl_output when :json json_output when :token token_output else text_output end end
Source
# File lib/brightbox-cli/token.rb, line 35 def refresh_token config.refresh_token end
Private Instance Methods
Source
# File lib/brightbox-cli/token.rb, line 41 def api_url base_url = URI(config.to_fog[:brightbox_api_url]).to_s URI.join(base_url, "/1.0/").to_s end
Source
# File lib/brightbox-cli/token.rb, line 46 def curl_output "curl -H 'Authorization: Bearer #{access_token}' #{api_url} " end
Source
# File lib/brightbox-cli/token.rb, line 50 def json_output JSON.dump(token_data) end
Source
# File lib/brightbox-cli/token.rb, line 54 def text_output token_data.map do |key, value| "#{key.to_s.rjust(16)}: #{value}" end.join("\n") end
Source
# File lib/brightbox-cli/token.rb, line 60 def token_data data = { access_token: access_token, token_type: "Bearer" } data[:refresh_token] = refresh_token if refresh_token data.sort.to_h end