class Slack::Emogen::Config

Attributes

login[R]
password[R]
url[R]

Public Class Methods

build_message() click to toggle source
# File lib/slack/emogen/config.rb, line 18
      def build_message
        puts <<-EOS

        enter your slack url
        ex) https://example.slack.com/

        EOS

        url = STDIN.gets.chop

        puts <<-EOS
        enter your slack login mail address
        ex) hogemoge@example.com
        EOS

        login = STDIN.gets.chop

        puts <<-EOS
        enter your slack password
        ex) doraemon
        EOS

        password = STDIN.gets.chop

        [url, login, password]
      end
find_or_create!() click to toggle source
# File lib/slack/emogen/config.rb, line 6
def find_or_create!
  @@yml_path = File.join($root_path, "config.yml")
  opts =
    if File.exist?(@@yml_path)
      YAML::load_file @@yml_path
    else
      url, login, password = build_message
      setup(url, login, password)
    end
  new(opts)
end
new(opts) click to toggle source
# File lib/slack/emogen/config.rb, line 60
def initialize(opts)
  _opts = opts.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
  @url = _opts.fetch(:url)
  @login = _opts.fetch(:login)
  @password = _opts.fetch(:password)
end
setup(url, login, password) click to toggle source
# File lib/slack/emogen/config.rb, line 45
      def setup(url, login, password)
        File.open(@@yml_path, "w") do |f|
          content = <<-EOS
            url: '#{url}'
            login: '#{login}'
            password: '#{password}'
          EOS
          f.write(content)
        end
        {url: url, login: login, password: password}
      end