Class: JasperserverRails::Jasperserver

Inherits:
Object
  • Object
show all
Defined in:
lib/jasperserver-rails/jasperserver-dsl.rb

Instance Method Summary collapse

Constructor Details

#initialize(&block) ⇒ Jasperserver

Returns a new instance of Jasperserver.



19
20
21
22
# File 'lib/jasperserver-rails/jasperserver-dsl.rb', line 19

def initialize(&block)
  instance_eval(&block) if block_given?
  
end

Instance Method Details

#generate_report(&block) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/jasperserver-rails/jasperserver-dsl.rb', line 24

def generate_report(&block)
  instance_eval(&block) if block_given?
  
  # Run report
  params = URI.encode_www_form(self.get_params) if self.get_params.present?
  report_path = [
    'rest_v2',
    'reports',
    "#{self.get_report}.#{self.get_format}?#{params}"
  ].join '/'
  RestClient.get(
    URI.join(
      config[:url],
      report_path
    ).to_s,
    { cookies: @cookie }
  )
end

#run_report(filename, &block) ⇒ Object



43
44
45
46
47
48
# File 'lib/jasperserver-rails/jasperserver-dsl.rb', line 43

def run_report(filename, &block)
  FileUtils.mkdir_p(File.expand_path(filename).split('/')[0..-2].join('/'))
  f = File.new(filename, 'wb')
  f.write(generate_report(&block).body)
  f.close
end