Sha256: cbf9a76b37086de62d4a3c96803dd8e8f4bb3f7e523b311c11d3afac2d5b04be

Contents?: true

Size: 630 Bytes

Versions: 14

Compression:

Stored size: 630 Bytes

Contents

require 'singleton'
require 'nokogiri'

# Formats XML with standard indention.
# Credit: http://stackoverflow.com/questions/1898829/nokogiri-pretty-printing
module WDD
  module Utils
    class PrettyXml
      include Singleton

      def initialize
        @xsl ||= Nokogiri::XSLT(File.open(File.expand_path('../../resources/pretty_xml.xsl', __FILE__)))
      end

      def format source
        source = Nokogiri(source) if source.is_a? String
        @xsl.apply_to(source).to_s
      end
      
      class << self
        def format source
          PrettyXml.instance.format( source )
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
wdd-ruby-ext-0.6.3 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.6.2 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.6.0 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.5.1 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.5.0 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.4.4 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.4.3 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.4.2 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.4.1 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.4.0 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.3.3 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.3.2 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.3.1 lib/wdd-ruby-ext/utils/pretty_xml.rb
wdd-ruby-ext-0.3.0 lib/wdd-ruby-ext/utils/pretty_xml.rb