<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>examples/all.rb</filename>
    </added>
    <added>
      <filename>examples/primary.rb</filename>
    </added>
    <added>
      <filename>lib/columbus/feed.rb</filename>
    </added>
    <added>
      <filename>lib/columbus/link.rb</filename>
    </added>
    <added>
      <filename>lib/columbus/redirect_follower.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -0,0 +1,46 @@
+require 'logger'
+require 'net/http'
+require 'uri'
+require 'rubygems'
+require 'hpricot'
+
+require File.dirname(__FILE__) + '/columbus/feed'
+require File.dirname(__FILE__) + '/columbus/link'
+require File.dirname(__FILE__) + '/columbus/redirect_follower'
+
+class Columbus
+  attr_reader :url
+  
+  def initialize(url)
+    @url = url
+  end
+  
+  def primary
+    @primary ||= begin
+      response     = RedirectFollower.new(url).resolve
+      @url     = response.url
+      if hpricot_link = parse_links(response.body)[0]
+        link_to_feed(hpricot_link)
+      end
+    end
+  end
+  
+  def all
+    @all ||= begin
+      response = RedirectFollower.new(url).resolve
+      @url = response.url
+      parse_links(response.body).map { |hpricot_link| link_to_feed(hpricot_link) }
+    end
+  end
+  
+  def link_to_feed(element)
+    link = Link.new(url, element.attributes['href'], element.attributes['title'])
+    Feed.new(link.absolute_url, link.clean_title)
+  end
+  
+  def parse_links(html)
+    Hpricot(html).search('link').select do |link|
+      link.attributes['type'] =~ /application\/(rss|atom)\+xml/i
+    end
+  end
+end
\ No newline at end of file</diff>
      <filename>lib/columbus.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,7 @@
 require 'rubygems'
 require 'test/unit'
 require 'shoulda'
+require 'fakeweb'
 
 $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
 $LOAD_PATH.unshift(File.dirname(__FILE__))</diff>
      <filename>test/test_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>c651b1f14067718cafc35a39860a0aa833032f74</id>
    </parent>
  </parents>
  <author>
    <name>John Nunemaker</name>
    <email>nunemaker@gmail.com</email>
  </author>
  <url>http://github.com/jnunemaker/columbus/commit/56b6890f559f9d32bfc3e6f36f7f564bc2065d52</url>
  <id>56b6890f559f9d32bfc3e6f36f7f564bc2065d52</id>
  <committed-date>2009-03-25T17:09:51-07:00</committed-date>
  <authored-date>2009-03-25T17:09:51-07:00</authored-date>
  <message>Initial commit of working code. Need some automated tests now.</message>
  <tree>aa1d14c7b3c6d8dbcb15b9c09a6573edecaa3042</tree>
  <committer>
    <name>John Nunemaker</name>
    <email>nunemaker@gmail.com</email>
  </committer>
</commit>
