lib/slurper.rb in slurper-1.1.8 vs lib/slurper.rb in slurper-2.0.0

- old
+ new

@@ -1,60 +1,18 @@ +require 'active_support' +require 'active_support/core_ext/object' require 'yaml' -require 'story' -YAML::ENGINE.yamler='syck' +module Slurper -class Slurper + autoload :Client, 'slurper/client' + autoload :Config, 'slurper/config' + autoload :Engine, 'slurper/engine' + autoload :Story, 'slurper/story' + autoload :User, 'slurper/user' - attr_accessor :story_file, :stories - def self.slurp(story_file, reverse) - slurper = new(story_file) - slurper.load_stories - slurper.prepare_stories + slurper = Engine.new(story_file) slurper.stories.reverse! unless reverse - slurper.create_stories + slurper.process end - - def initialize(story_file) - self.story_file = story_file - end - - def load_stories - self.stories = YAML.load(yamlize_story_file) - end - - def prepare_stories - stories.each { |story| story.prepare } - end - - def create_stories - puts "Preparing to slurp #{stories.size} stories into Tracker..." - stories.each_with_index do |story, index| - begin - if story.save - puts "#{index+1}. #{story.name}" - else - puts "Slurp failed. #{story.errors.full_messages}" - end - rescue ActiveResource::ConnectionError => e - msg = "Slurp failed on story " - if story.attributes["name"] - msg << story.attributes["name"] - else - msg << "##{options[:reverse] ? index + 1 : stories.size - index }" - end - puts msg + ". Error: #{e}" - end - end - end - - protected - - def yamlize_story_file - IO.read(story_file). - gsub(/^/, " "). - gsub(/ ==.*/, "- !ruby/object:Story\n attributes:"). - gsub(/ description:$/, " description: |") - end - end