lib/ebooks.rb in ebooks-0.0.1 vs lib/ebooks.rb in ebooks-0.1.0

- old
+ new

@@ -1,21 +1,50 @@ -require "ebooks/version" - require 'rubygems' require 'thread' require 'csv' require 'twitter' require 'marky_markov' +require 'yaml' +$:.unshift(File.dirname(__FILE__)) + +require 'ebooks/version' +require 'ebooks/core_ext' + module Ebooks autoload :Generator, 'ebooks/generator' autoload :Twitter, 'ebooks/twitter' + def self.read_config_file(file = '~/.ebooks') + contents = File.read(file.sub('~', ENV["HOME"])) + YAML.load(contents) + end + def self.configuration(overrides = {}) + { + :tweets_csv_path => 'tweets.csv', + :corpus_path => 'markov_dict.txt', + :dictionary_name => 'dictionary', # don't include the .mmd + :twitter => { + :consumer_key => '', + :consumer_secret => '', + :oauth_token => '', + :oauth_token_secret => '' + } + }.deep_merge(overrides) + end + def self.generate(overrides = {}) + config = self.configuration(overrides) + generator = Ebooks::Generator.new(config) + + generator.generate_sentence end - def self.generate(config = {}) - config = self.configuration(config) + def self.tweet(overrides = {}) + config = self.configuration(overrides) + sentence = self.generate(overrides) + + Ebooks::Twitter.new(config[:twitter]).tweet(sentence) end end