Class: Est::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/est.rb

Overview

Code base abstraction

Instance Method Summary collapse

Constructor Details

#initialize(opts) ⇒ Base

Ctor.

opts

Options



63
64
65
66
67
# File 'lib/est.rb', line 63

def initialize(opts)
  @opts = opts
  Est.log.level = Logger::INFO if @opts.verbose?
  Est.log.info "my version is #{Est::VERSION}"
end

Instance Method Details

#xmlObject

Generate XML.



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'lib/est.rb', line 70

def xml
  dir = @opts.dir? ? @opts[:dir] : Dir.pwd
  Est.log.info "reading #{dir}"
  estimates = Estimates::Const.new(Estimates.new(dir))
  sanitize(
    Nokogiri::XML::Builder.new do |xml|
      xml << "<?xml-stylesheet type='text/xsl' href='#{xsl}'?>"
      xml.estimate(attrs) do
        xml.total estimates.total
        unless estimates.iterate.empty?
          xml.ests do
            estimates.iterate.each do |est|
              xml.est do
                xml.date est.date
                xml.total est.total
                xml.author est.author
              end
            end
          end
        end
      end
    end.to_xml
  )
end