class RankMirror::RemotePackman

Public Class Methods

new() click to toggle source
# File lib/rankmirror/distro/remote/packman.rb, line 5
def initialize
        @mirrors = []
end

Public Instance Methods

fetch() click to toggle source
# File lib/rankmirror/distro/remote/packman.rb, line 9
def fetch
        cache = RankMirror::Cache.new("http://packman.links2linux.de/mirrors").fetch
        doc = Nokogiri::HTML(open(cache))
        doc.xpath('//td[@class="mirrortable mirror"]').each do |td|
                unless td.at_xpath("a").nil? # ignore rsync mirror
                        v = td.at_xpath("a/@href").value
                        v << "/" unless /^.*\/$/.match(v)
                        v << "suse/"
                        @mirrors << v unless v.index("ftp://")
                end
        end
        return @mirrors
end