Sha256: 25cc2d881afd9cd04d3d958cfa3bf6a91fd7e62b0bb9817fe5460294ac8a025a
Contents?: true
Size: 1.59 KB
Versions: 2
Compression:
Stored size: 1.59 KB
Contents
require 'massive_sitemap/writer/file' require 'massive_sitemap/writer/gzip_file' require 'massive_sitemap/builder/rotating' require 'massive_sitemap/builder/index' require 'massive_sitemap/lock' require 'massive_sitemap/ping' # Page at -> <url> # http://example.de/dir/ # Index at -> <index_url> # http://sitemap.example.de/index-dir/ # Save at -> <root> # /root/dir/ -> <document_root>/<document_path> module MassiveSitemap DEFAULTS = { # global :index_url => nil, :gzip => false, :writer => MassiveSitemap::Writer::File, # writer :root => '.', :force_overwrite => false, :filename => "sitemap.xml", :index_filename => "sitemap_index.xml", # builder :url => nil, :indent_by => 2, } def generate(options = {}, &block) lock! do @options = DEFAULTS.merge options unless @options[:url] raise ArgumentError, 'you must specify ":url" string' end @options[:index_url] ||= @options[:url] if @options[:max_urls] && !Builder::Rotating::NUM_URLS.member?(@options[:max_urls]) raise ArgumentError, %Q(":max_urls" must be greater than #{NUM_URLS.min} and smaller than #{NUM_URLS.max}) end @options[:writer] = Writer::GzipFile if @options[:gzip] @writer = @options.delete(:writer).new @options Builder::Rotating.generate(@writer, @options, &block) @writer.set(:filename => @options[:index_filename]) Builder::Index.generate(@writer, @options.merge(:url => @options[:index_url])) end end module_function :generate end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
massive_sitemap-2.0.0.rc6 | lib/massive_sitemap.rb |
massive_sitemap-2.0.0.rc5 | lib/massive_sitemap.rb |