class Pocketbeuter::ConfigFile

Constants

CONFIG_NAME

Attributes

path[R]

Public Class Methods

new() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 10
def initialize
  @path = File.join(File.expand_path('~'), CONFIG_NAME)
  @config = load_config
end

Public Instance Methods

[](node) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 15
def [](node)
  @config[node]
end
[]=(subsec, sec) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 19
def []=(subsec, sec)
  @config[subsec] ||= {}
  @config[subsec].merge!(sec)
  save_config
end
access_token() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 60
def access_token
  @config['account'][account_name]['access_token']
end
access_token=(token) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 64
def access_token=(token)
  @config['account'][account_name] ||= 'access_token'
  @config['account'][account_name]['access_token'] = token
end
account() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 25
def account
  @config['account']
end
account=(value) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 29
def account=(value)
  @config['account'] ||= value.keys[0]
  @config['account'][value.keys[0]] = value[value.keys[0]]
end
account_name() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 34
def account_name
  @config['account'].keys[0]
end
account_name=(name) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 38
def account_name=(name)
  @config['account'][name] = {}
end
code() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 78
def code
  @config['account'][account_name]['code']
end
code=(token) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 82
def code=(token)
  @config['account'][account_name] ||= 'code'
  @config['account'][account_name]['code'] = token
end
consumer_key() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 42
def consumer_key
  @config['account'][account_name]['consumer_key']
end
consumer_key=(key) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 46
def consumer_key=(key)
  @config['account'][account_name] ||= 'consumer_key'
  @config['account'][account_name]['consumer_key'] = key
end
default_config() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 111
def default_config
  { 'options' => {}, 'account' => {}}
end
empty?() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 119
def empty?
  @config == default_config
end
load_config() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 93
def load_config
  require 'yaml'
  if YAML.load_file(@path)
    YAML.load_file(@path)
  else
    default_config
  end
rescue Errno::ENOENT
  default_config
end
path=(path) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 87
def path=(path)
  @path = path
  @config = load_config
  @path
end
redirect_uri() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 51
def redirect_uri
  @config['account'][account_name]['redirect_uri']
end
redirect_uri=(uri) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 55
def redirect_uri=(uri)
  @config['account'][account_name] ||= 'redirect_uri'
  @config['account'][account_name]['redirect_uri'] = uri
end
reset() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 115
def reset
  send(:initialize)
end
save_config() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 104
def save_config
  require 'yaml'
  File.open(@path, File::RDWR | File::TRUNC | File::CREAT, 0600) do |f|
    f.write @config.to_yaml
  end
end
username() click to toggle source
# File lib/pocketbeuter/configfile.rb, line 69
def username
  @config['account'][account_name]['username']
end
username=(name) click to toggle source
# File lib/pocketbeuter/configfile.rb, line 73
def username=(name)
  @config['account'][account_name] ||= 'username'
  @config['account'][account_name]['username'] = name
end