jasperserver4r 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +3 -0
- data/.gitignore +25 -0
- data/CHANGELOG.rdoc +3 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +90 -0
- data/Rakefile +68 -0
- data/VERSION.yml +4 -0
- data/jasperserver4r.gemspec +60 -0
- data/lib/jasperserver4r.rb +62 -0
- data/lib/jasperserver4r/jasperserverlogger.rb +47 -0
- data/lib/jasperserver4r/reportschedulerservice.rb +306 -0
- data/lib/jasperserver4r/reportschedulerservicedriver.rb +105 -0
- data/lib/jasperserver4r/reportschedulerservicemappingregistry.rb +307 -0
- data/test/common_utils.rb +14 -0
- data/test/test_report_scheduler.rb +426 -0
- metadata +75 -0
data/.document
ADDED
data/.gitignore
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
## MAC OS
|
2
|
+
.DS_Store
|
3
|
+
|
4
|
+
## TEXTMATE
|
5
|
+
*.tmproj
|
6
|
+
tmtags
|
7
|
+
|
8
|
+
## EMACS
|
9
|
+
*~
|
10
|
+
\#*
|
11
|
+
.\#*
|
12
|
+
|
13
|
+
## VIM
|
14
|
+
*.swp
|
15
|
+
|
16
|
+
## Aptana
|
17
|
+
*.project
|
18
|
+
*.loadpath
|
19
|
+
|
20
|
+
## PROJECT::GENERAL
|
21
|
+
coverage
|
22
|
+
rdoc
|
23
|
+
pkg
|
24
|
+
|
25
|
+
## PROJECT::SPECIFIC
|
data/CHANGELOG.rdoc
ADDED
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2009 all4miller
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
= JasperServer4r Library
|
2
|
+
|
3
|
+
jasperserver4r is a ruby library for utilising the JasperServer web services
|
4
|
+
API. jasperserver4r allows you to use all the methods defined by the report
|
5
|
+
scheduling service. This library was developed and tested against JasperServer v3.5.0 so it
|
6
|
+
may not work with earlier versions. Support for the repository service is under
|
7
|
+
development. Documentation and comments are a work in progress.
|
8
|
+
|
9
|
+
= Useful Web Resources
|
10
|
+
|
11
|
+
- {JasperServer API discussion forum}[http://groups.google.com/group/jasperserver4r]
|
12
|
+
- {JasperServer API documentation}[http://jasperserver4r.rubyforge.org/rdoc/]
|
13
|
+
- {This project's github page}[http://github.com/all4miller/jasperserver4r]
|
14
|
+
- {JasperServer CE home}[http://jasperforge.org/projects/jasperserver]
|
15
|
+
- {JasperServer web services guide v3.5.0}[http://jasperserver.sourceforge.net/docs/3-5-0/JasperServer-Web-Services-Guide.pdf]
|
16
|
+
|
17
|
+
= Installation
|
18
|
+
|
19
|
+
Install from rubyforge:
|
20
|
+
$ gem install jasperserver4r
|
21
|
+
|
22
|
+
The following gem libraries are required:
|
23
|
+
- soap4r v1.5.8
|
24
|
+
- httpclient v2.1.2 or greater
|
25
|
+
|
26
|
+
= Using the client library
|
27
|
+
|
28
|
+
=== Basic example
|
29
|
+
|
30
|
+
It's pretty easy to use.
|
31
|
+
See http://docs.rubygems.org/read/chapter/3#page70 for how to set the rubygem
|
32
|
+
environment. Then:
|
33
|
+
require 'jasperserver4r'
|
34
|
+
client = JasperServer::API.new( username, password )
|
35
|
+
schedule_service = client.get_report_scheduler_service( endpoint url )
|
36
|
+
scheduled_jobs = schedule_service.getAllJobs
|
37
|
+
creates a driver for the JasperServer web services API and retrieves a list of
|
38
|
+
all schedules jobs currently defined in the JasperServer repository. Username
|
39
|
+
and password are valid JasperServer portal credentials. The
|
40
|
+
get_report_scheduler_service endpoint url defaults to
|
41
|
+
http://localhost:8080/jasperserver/services/ReportScheduler
|
42
|
+
|
43
|
+
Will be adding more examples asap. Check out the tests for sample usage of each
|
44
|
+
available operation. The web services guide mentioned above is a good resource
|
45
|
+
for detailed descriptions of available operations.
|
46
|
+
|
47
|
+
=== Logging
|
48
|
+
|
49
|
+
It is often useful to see a trace of the raw SOAP XML being sent and received.
|
50
|
+
The quickest way of achieving this when debugging your application is by setting
|
51
|
+
the JASPERSERVER4R_DEBUG environment variable to TRUE; e.g. in the bash shell:
|
52
|
+
$ export JASPERSERVER4R_DEBUG=TRUE
|
53
|
+
or from your Ruby code:
|
54
|
+
ENV['JASPERSERVER4R_DEBUG'] = 'TRUE'
|
55
|
+
|
56
|
+
This will output the SOAP XML to stderr, which will usually show up in your
|
57
|
+
terminal window.
|
58
|
+
|
59
|
+
There's also the option of logging requests and XML to files. In order to enable
|
60
|
+
this, you should use the write_to_file method of the loggers inside your JasperServer::API object:
|
61
|
+
|
62
|
+
client = JasperServer::API.new
|
63
|
+
client.xml_logger.log_to_file
|
64
|
+
|
65
|
+
This logs the full SOAP XML being sent and received over the wire. These will be written
|
66
|
+
to the current directory by default, but you can specify a path as an optional
|
67
|
+
parameter to log_to_file:
|
68
|
+
client.xml_logger.log_to_file('/var/log/my_app')
|
69
|
+
|
70
|
+
The file will be named soap_xml.
|
71
|
+
|
72
|
+
|
73
|
+
= Docs for Developers
|
74
|
+
|
75
|
+
$ rake rerdoc
|
76
|
+
to regenerate the project documentation if needed
|
77
|
+
|
78
|
+
$ rake build
|
79
|
+
to package the gem and create a release
|
80
|
+
|
81
|
+
$ rake test
|
82
|
+
to run unit tests on the library
|
83
|
+
|
84
|
+
$ rake -T
|
85
|
+
for a list of available tasks
|
86
|
+
|
87
|
+
|
88
|
+
= Copyright/License Info
|
89
|
+
|
90
|
+
Copyright (c) 2009 all4miller. See MIT-LICENSE for details.
|
data/Rakefile
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
|
4
|
+
begin
|
5
|
+
require 'jeweler'
|
6
|
+
Jeweler::Tasks.new do |gem|
|
7
|
+
# Basic information
|
8
|
+
gem.name = "jasperserver4r"
|
9
|
+
gem.summary = "Client library for the JasperServer Web Services API."
|
10
|
+
gem.description = <<-EOS
|
11
|
+
JasperServer4r provides an easy way to access the JasperServer Web Services API in Ruby.
|
12
|
+
Currently the following JasperServer Web Services are supported:
|
13
|
+
* Report Scheduling
|
14
|
+
EOS
|
15
|
+
|
16
|
+
# Metadata
|
17
|
+
gem.email = "all4miller@gmail.com"
|
18
|
+
gem.homepage = "http://github.com/all4miller/jasperserver4r"
|
19
|
+
gem.authors = ["all4miller"]
|
20
|
+
gem.rubyforge_project = 'jasperserver4r'
|
21
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
22
|
+
end
|
23
|
+
Jeweler::GemcutterTasks.new
|
24
|
+
Jeweler::RubyforgeTasks.new
|
25
|
+
rescue LoadError
|
26
|
+
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
27
|
+
end
|
28
|
+
|
29
|
+
require 'rake/testtask'
|
30
|
+
Rake::TestTask.new(:test) do |test|
|
31
|
+
test.libs << 'lib' << 'test'
|
32
|
+
test.pattern = 'test/**/test_*.rb'
|
33
|
+
test.verbose = true
|
34
|
+
end
|
35
|
+
|
36
|
+
begin
|
37
|
+
require 'rcov/rcovtask'
|
38
|
+
Rcov::RcovTask.new do |test|
|
39
|
+
test.libs << 'test'
|
40
|
+
test.pattern = 'test/**/test_*.rb'
|
41
|
+
test.verbose = true
|
42
|
+
end
|
43
|
+
rescue LoadError
|
44
|
+
task :rcov do
|
45
|
+
abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
require 'rake/rdoctask'
|
50
|
+
Rake::RDocTask.new do |rdoc|
|
51
|
+
# Try to use darkfish-rdoc to generate the docs
|
52
|
+
begin
|
53
|
+
require 'hanna/rdoctask'
|
54
|
+
rescue LoadError
|
55
|
+
# Do nothing, give up and continue with whatever is the default.
|
56
|
+
end
|
57
|
+
|
58
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
59
|
+
rdoc.rdoc_dir = 'rdoc'
|
60
|
+
rdoc.title = "jasperserver4r #{version}"
|
61
|
+
rdoc.rdoc_files.include('README*')
|
62
|
+
rdoc.rdoc_files.include("lib/jasperserver4r")
|
63
|
+
rdoc.rdoc_files.include('lib/jasperserver4r/*Service.rb')
|
64
|
+
end
|
65
|
+
|
66
|
+
task :test => :check_dependencies
|
67
|
+
|
68
|
+
task :default => :test
|
data/VERSION.yml
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{jasperserver4r}
|
8
|
+
s.version = "0.1.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["all4miller"]
|
12
|
+
s.date = %q{2009-10-26}
|
13
|
+
s.description = %q{JasperServer4r provides an easy way to access the JasperServer Web Services API in Ruby.
|
14
|
+
Currently the following JasperServer Web Services are supported:
|
15
|
+
* Report Scheduling
|
16
|
+
}
|
17
|
+
s.email = %q{all4miller@gmail.com}
|
18
|
+
s.extra_rdoc_files = [
|
19
|
+
"README.rdoc"
|
20
|
+
]
|
21
|
+
s.files = [
|
22
|
+
".document",
|
23
|
+
".gitignore",
|
24
|
+
".loadpath",
|
25
|
+
"CHANGELOG.rdoc",
|
26
|
+
"MIT-LICENSE",
|
27
|
+
"README.rdoc",
|
28
|
+
"Rakefile",
|
29
|
+
"VERSION.yml",
|
30
|
+
"jasperserver4r.gemspec",
|
31
|
+
"lib/jasperserver4r.rb",
|
32
|
+
"lib/jasperserver4r/jasperserverlogger.rb",
|
33
|
+
"lib/jasperserver4r/reportschedulerservice.rb",
|
34
|
+
"lib/jasperserver4r/reportschedulerservicedriver.rb",
|
35
|
+
"lib/jasperserver4r/reportschedulerservicemappingregistry.rb",
|
36
|
+
"test/common_utils.rb",
|
37
|
+
"test/test_report_scheduler.rb"
|
38
|
+
]
|
39
|
+
s.homepage = %q{http://github.com/all4miller/jasperserver4r}
|
40
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
41
|
+
s.require_paths = ["lib"]
|
42
|
+
s.rubyforge_project = %q{jasperserver4r}
|
43
|
+
s.rubygems_version = %q{1.3.5}
|
44
|
+
s.summary = %q{Client library for the JasperServer Web Services API.}
|
45
|
+
s.test_files = [
|
46
|
+
"test/test_report_scheduler.rb",
|
47
|
+
"test/common_utils.rb"
|
48
|
+
]
|
49
|
+
|
50
|
+
if s.respond_to? :specification_version then
|
51
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
52
|
+
s.specification_version = 3
|
53
|
+
|
54
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
55
|
+
else
|
56
|
+
end
|
57
|
+
else
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
gem 'soap4r', '=1.5.8'
|
3
|
+
require 'jasperserver4r/reportschedulerservicedriver'
|
4
|
+
require 'jasperserver4r/jasperserverlogger'
|
5
|
+
|
6
|
+
# Main namespace for all the client library's modules and classes.
|
7
|
+
module JasperServer
|
8
|
+
|
9
|
+
# Wrapper class that serves as the main point of access for all the API usage.
|
10
|
+
#
|
11
|
+
# Holds all the services, as well as login credentials.
|
12
|
+
#
|
13
|
+
class API
|
14
|
+
|
15
|
+
# JasperServerLogger object used for logging SOAP XML
|
16
|
+
attr_reader :xml_logger
|
17
|
+
|
18
|
+
public
|
19
|
+
|
20
|
+
# Constructor for API.
|
21
|
+
#
|
22
|
+
# Args:
|
23
|
+
# - username: Valid JasperServer account username
|
24
|
+
# - password: Valid JasperServer account password
|
25
|
+
#
|
26
|
+
def initialize(username, password)
|
27
|
+
@username = username
|
28
|
+
@password = password
|
29
|
+
log_to_console = !ENV['JASPERSERVER4R_DEBUG'].nil? &&
|
30
|
+
ENV['JASPERSERVER4R_DEBUG'].upcase == 'TRUE'
|
31
|
+
@xml_logger = JasperServerLogger.new('soap_xml', log_to_console)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Obtain an ReportSchedulerService service, given a valid end point.
|
35
|
+
#
|
36
|
+
# Args:
|
37
|
+
# - endpoint_url: Valid endpoint_url
|
38
|
+
#
|
39
|
+
# Returns:
|
40
|
+
# The service wrapper for the intended service.
|
41
|
+
#
|
42
|
+
def get_report_scheduler_service(endpoint_url = nil)
|
43
|
+
driver = JasperServer::ReportSchedulerService::ReportSchedulerInterface.new(endpoint_url)
|
44
|
+
driver.options["protocol.http.basic_auth"] << [endpoint_url, @username, @password]
|
45
|
+
driver.wiredump_dev = @xml_logger
|
46
|
+
return driver
|
47
|
+
end
|
48
|
+
|
49
|
+
# Obtain an Repositiry service, given a valid end point.
|
50
|
+
#
|
51
|
+
# Args:
|
52
|
+
# - endpoint_url: Valid endpoint_url
|
53
|
+
#
|
54
|
+
# Returns:
|
55
|
+
# The service wrapper for the intended service.
|
56
|
+
#
|
57
|
+
def get_repository_service(endpoint_url = nil)
|
58
|
+
#TODO impliment repository service
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'logger'
|
2
|
+
|
3
|
+
module JasperServer
|
4
|
+
|
5
|
+
# Wrapper class to handle logging to console and/or files.
|
6
|
+
class JasperServerLogger
|
7
|
+
|
8
|
+
# Constructor for JasperServerLogger.
|
9
|
+
#
|
10
|
+
# Args:
|
11
|
+
# - filename: the filename for the log file to be written (if log_to_file is
|
12
|
+
# called)
|
13
|
+
# - log_to_console: boolean, indicates whether or not to log to the console
|
14
|
+
#
|
15
|
+
def initialize(filename, log_to_console=false)
|
16
|
+
@filename = filename
|
17
|
+
@loggers = []
|
18
|
+
if log_to_console
|
19
|
+
stderr_logger = Logger.new(STDERR)
|
20
|
+
stderr_logger.level = Logger::INFO
|
21
|
+
@loggers << stderr_logger
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
# Enables logging to a file.
|
26
|
+
# May be called several times to log to multiple files.
|
27
|
+
#
|
28
|
+
# Args:
|
29
|
+
# - path: where to write the file (defaults to current dir). Path only, do
|
30
|
+
# not provide filename.
|
31
|
+
#
|
32
|
+
def log_to_file(path='.')
|
33
|
+
new_logger = Logger.new(File.join(path, @filename))
|
34
|
+
new_logger.level = Logger::INFO
|
35
|
+
@loggers << new_logger
|
36
|
+
|
37
|
+
return nil
|
38
|
+
end
|
39
|
+
|
40
|
+
# Overload << operator to perform logging.
|
41
|
+
def << (text)
|
42
|
+
@loggers.each do |logger|
|
43
|
+
logger.info text.to_s
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,306 @@
|
|
1
|
+
require 'xsd/qname'
|
2
|
+
|
3
|
+
module JasperServer
|
4
|
+
module ReportSchedulerService
|
5
|
+
|
6
|
+
# JobTrigger
|
7
|
+
# - id - SOAP::SOAPLong
|
8
|
+
# - version - SOAP::SOAPInt
|
9
|
+
# - timezone - SOAP::SOAPString
|
10
|
+
# - startDate - SOAP::SOAPDateTime
|
11
|
+
# - endDate - SOAP::SOAPDateTime
|
12
|
+
class JobTrigger
|
13
|
+
attr_accessor :id
|
14
|
+
attr_accessor :version
|
15
|
+
attr_accessor :timezone
|
16
|
+
attr_accessor :startDate
|
17
|
+
attr_accessor :endDate
|
18
|
+
|
19
|
+
def initialize(id = nil, version = nil, timezone = nil, startDate = nil, endDate = nil)
|
20
|
+
@id = id
|
21
|
+
@version = version
|
22
|
+
@timezone = timezone
|
23
|
+
@startDate = startDate
|
24
|
+
@endDate = endDate
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobCalendarTrigger
|
29
|
+
# id - SOAP::SOAPLong
|
30
|
+
# version - SOAP::SOAPInt
|
31
|
+
# timezone - SOAP::SOAPString
|
32
|
+
# startDate - SOAP::SOAPDateTime
|
33
|
+
# endDate - SOAP::SOAPDateTime
|
34
|
+
# minutes - SOAP::SOAPString
|
35
|
+
# hours - SOAP::SOAPString
|
36
|
+
# daysType - CalendarDaysType
|
37
|
+
# weekDays - ArrayOf_xsd_int
|
38
|
+
# monthDays - SOAP::SOAPString
|
39
|
+
# months - ArrayOf_xsd_int
|
40
|
+
class JobCalendarTrigger < JobTrigger
|
41
|
+
attr_accessor :id
|
42
|
+
attr_accessor :version
|
43
|
+
attr_accessor :timezone
|
44
|
+
attr_accessor :startDate
|
45
|
+
attr_accessor :endDate
|
46
|
+
attr_accessor :minutes
|
47
|
+
attr_accessor :hours
|
48
|
+
attr_accessor :daysType
|
49
|
+
attr_accessor :weekDays
|
50
|
+
attr_accessor :monthDays
|
51
|
+
attr_accessor :months
|
52
|
+
|
53
|
+
def initialize(id = nil, version = nil, timezone = nil, startDate = nil, endDate = nil, minutes = nil, hours = nil, daysType = nil, weekDays = nil, monthDays = nil, months = nil)
|
54
|
+
@id = id
|
55
|
+
@version = version
|
56
|
+
@timezone = timezone
|
57
|
+
@startDate = startDate
|
58
|
+
@endDate = endDate
|
59
|
+
@minutes = minutes
|
60
|
+
@hours = hours
|
61
|
+
@daysType = daysType
|
62
|
+
@weekDays = weekDays
|
63
|
+
@monthDays = monthDays
|
64
|
+
@months = months
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobSimpleTrigger
|
69
|
+
# id - SOAP::SOAPLong
|
70
|
+
# version - SOAP::SOAPInt
|
71
|
+
# timezone - SOAP::SOAPString
|
72
|
+
# startDate - SOAP::SOAPDateTime
|
73
|
+
# endDate - SOAP::SOAPDateTime
|
74
|
+
# occurrenceCount - SOAP::SOAPInt
|
75
|
+
# recurrenceInterval - SOAP::SOAPInt
|
76
|
+
# recurrenceIntervalUnit - IntervalUnit
|
77
|
+
class JobSimpleTrigger < JobTrigger
|
78
|
+
attr_accessor :id
|
79
|
+
attr_accessor :version
|
80
|
+
attr_accessor :timezone
|
81
|
+
attr_accessor :startDate
|
82
|
+
attr_accessor :endDate
|
83
|
+
attr_accessor :occurrenceCount
|
84
|
+
attr_accessor :recurrenceInterval
|
85
|
+
attr_accessor :recurrenceIntervalUnit
|
86
|
+
|
87
|
+
def initialize(id = nil, version = nil, timezone = nil, startDate = nil, endDate = nil, occurrenceCount = nil, recurrenceInterval = nil, recurrenceIntervalUnit = nil)
|
88
|
+
@id = id
|
89
|
+
@version = version
|
90
|
+
@timezone = timezone
|
91
|
+
@startDate = startDate
|
92
|
+
@endDate = endDate
|
93
|
+
@occurrenceCount = occurrenceCount
|
94
|
+
@recurrenceInterval = recurrenceInterval
|
95
|
+
@recurrenceIntervalUnit = recurrenceIntervalUnit
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobMailNotification
|
100
|
+
# id - SOAP::SOAPLong
|
101
|
+
# version - SOAP::SOAPInt
|
102
|
+
# toAddresses - ArrayOf_xsd_string
|
103
|
+
# subject - SOAP::SOAPString
|
104
|
+
# messageText - SOAP::SOAPString
|
105
|
+
# resultSendType - ResultSendType
|
106
|
+
# skipEmptyReports - SOAP::SOAPBoolean
|
107
|
+
class JobMailNotification
|
108
|
+
attr_accessor :id
|
109
|
+
attr_accessor :version
|
110
|
+
attr_accessor :toAddresses
|
111
|
+
attr_accessor :subject
|
112
|
+
attr_accessor :messageText
|
113
|
+
attr_accessor :resultSendType
|
114
|
+
attr_accessor :skipEmptyReports
|
115
|
+
|
116
|
+
def initialize(id = nil, version = nil, toAddresses = nil, subject = nil, messageText = nil, resultSendType = nil, skipEmptyReports = nil)
|
117
|
+
@id = id
|
118
|
+
@version = version
|
119
|
+
@toAddresses = toAddresses
|
120
|
+
@subject = subject
|
121
|
+
@messageText = messageText
|
122
|
+
@resultSendType = resultSendType
|
123
|
+
@skipEmptyReports = skipEmptyReports
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobParameter
|
128
|
+
# name - SOAP::SOAPString
|
129
|
+
# value - (any)
|
130
|
+
class JobParameter
|
131
|
+
attr_accessor :name
|
132
|
+
attr_accessor :value
|
133
|
+
|
134
|
+
def initialize(name = nil, value = nil)
|
135
|
+
@name = name
|
136
|
+
@value = value
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobRepositoryDestination
|
141
|
+
# id - SOAP::SOAPLong
|
142
|
+
# version - SOAP::SOAPInt
|
143
|
+
# folderURI - SOAP::SOAPString
|
144
|
+
# sequentialFilenames - SOAP::SOAPBoolean
|
145
|
+
# overwriteFiles - SOAP::SOAPBoolean
|
146
|
+
# outputDescription - SOAP::SOAPString
|
147
|
+
# timestampPattern - SOAP::SOAPString
|
148
|
+
class JobRepositoryDestination
|
149
|
+
attr_accessor :id
|
150
|
+
attr_accessor :version
|
151
|
+
attr_accessor :folderURI
|
152
|
+
attr_accessor :sequentialFilenames
|
153
|
+
attr_accessor :overwriteFiles
|
154
|
+
attr_accessor :outputDescription
|
155
|
+
attr_accessor :timestampPattern
|
156
|
+
|
157
|
+
def initialize(id = nil, version = nil, folderURI = nil, sequentialFilenames = nil, overwriteFiles = nil, outputDescription = nil, timestampPattern = nil)
|
158
|
+
@id = id
|
159
|
+
@version = version
|
160
|
+
@folderURI = folderURI
|
161
|
+
@sequentialFilenames = sequentialFilenames
|
162
|
+
@overwriteFiles = overwriteFiles
|
163
|
+
@outputDescription = outputDescription
|
164
|
+
@timestampPattern = timestampPattern
|
165
|
+
end
|
166
|
+
end
|
167
|
+
|
168
|
+
# {http://www.jasperforge.org/jasperserver/ws}Job
|
169
|
+
# id - SOAP::SOAPLong
|
170
|
+
# version - SOAP::SOAPInt
|
171
|
+
# reportUnitURI - SOAP::SOAPString
|
172
|
+
# username - SOAP::SOAPString
|
173
|
+
# label - SOAP::SOAPString
|
174
|
+
# description - SOAP::SOAPString
|
175
|
+
# simpleTrigger - JobSimpleTrigger
|
176
|
+
# calendarTrigger - JobCalendarTrigger
|
177
|
+
# parameters - ArrayOfJobParameter
|
178
|
+
# baseOutputFilename - SOAP::SOAPString
|
179
|
+
# outputFormats - ArrayOf_xsd_string
|
180
|
+
# outputLocale - SOAP::SOAPString
|
181
|
+
# repositoryDestination - JobRepositoryDestination
|
182
|
+
# mailNotification - JobMailNotification
|
183
|
+
class Job
|
184
|
+
attr_accessor :id
|
185
|
+
attr_accessor :version
|
186
|
+
attr_accessor :reportUnitURI
|
187
|
+
attr_accessor :username
|
188
|
+
attr_accessor :label
|
189
|
+
attr_accessor :description
|
190
|
+
attr_accessor :simpleTrigger
|
191
|
+
attr_accessor :calendarTrigger
|
192
|
+
attr_accessor :parameters
|
193
|
+
attr_accessor :baseOutputFilename
|
194
|
+
attr_accessor :outputFormats
|
195
|
+
attr_accessor :outputLocale
|
196
|
+
attr_accessor :repositoryDestination
|
197
|
+
attr_accessor :mailNotification
|
198
|
+
|
199
|
+
def initialize(id = nil, version = nil, reportUnitURI = nil, username = nil, label = nil, description = nil, simpleTrigger = nil, calendarTrigger = nil, parameters = nil, baseOutputFilename = nil, outputFormats = nil, outputLocale = nil, repositoryDestination = nil, mailNotification = nil)
|
200
|
+
@id = id
|
201
|
+
@version = version
|
202
|
+
@reportUnitURI = reportUnitURI
|
203
|
+
@username = username
|
204
|
+
@label = label
|
205
|
+
@description = description
|
206
|
+
@simpleTrigger = simpleTrigger
|
207
|
+
@calendarTrigger = calendarTrigger
|
208
|
+
@parameters = parameters
|
209
|
+
@baseOutputFilename = baseOutputFilename
|
210
|
+
@outputFormats = outputFormats
|
211
|
+
@outputLocale = outputLocale
|
212
|
+
@repositoryDestination = repositoryDestination
|
213
|
+
@mailNotification = mailNotification
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
# {http://www.jasperforge.org/jasperserver/ws}JobSummary
|
218
|
+
# id - SOAP::SOAPLong
|
219
|
+
# version - SOAP::SOAPInt
|
220
|
+
# reportUnitURI - SOAP::SOAPString
|
221
|
+
# username - SOAP::SOAPString
|
222
|
+
# label - SOAP::SOAPString
|
223
|
+
# state - RuntimeJobState
|
224
|
+
# previousFireTime - SOAP::SOAPDateTime
|
225
|
+
# nextFireTime - SOAP::SOAPDateTime
|
226
|
+
class JobSummary
|
227
|
+
attr_accessor :id
|
228
|
+
attr_accessor :version
|
229
|
+
attr_accessor :reportUnitURI
|
230
|
+
attr_accessor :username
|
231
|
+
attr_accessor :label
|
232
|
+
attr_accessor :state
|
233
|
+
attr_accessor :previousFireTime
|
234
|
+
attr_accessor :nextFireTime
|
235
|
+
|
236
|
+
def initialize(id = nil, version = nil, reportUnitURI = nil, username = nil, label = nil, state = nil, previousFireTime = nil, nextFireTime = nil)
|
237
|
+
@id = id
|
238
|
+
@version = version
|
239
|
+
@reportUnitURI = reportUnitURI
|
240
|
+
@username = username
|
241
|
+
@label = label
|
242
|
+
@state = state
|
243
|
+
@previousFireTime = previousFireTime
|
244
|
+
@nextFireTime = nextFireTime
|
245
|
+
end
|
246
|
+
end
|
247
|
+
|
248
|
+
# {http://www.jasperforge.org/jasperserver/ws}ArrayOf_xsd_long
|
249
|
+
class ArrayOf_xsd_long < ::Array
|
250
|
+
end
|
251
|
+
|
252
|
+
# {http://www.jasperforge.org/jasperserver/ws}ArrayOf_xsd_int
|
253
|
+
class ArrayOf_xsd_int < ::Array
|
254
|
+
end
|
255
|
+
|
256
|
+
# {http://www.jasperforge.org/jasperserver/ws}ArrayOf_xsd_string
|
257
|
+
class ArrayOf_xsd_string < ::Array
|
258
|
+
end
|
259
|
+
|
260
|
+
# {http://www.jasperforge.org/jasperserver/ws}ArrayOfJobParameter
|
261
|
+
class ArrayOfJobParameter < ::Array
|
262
|
+
end
|
263
|
+
|
264
|
+
# {http://www.jasperforge.org/jasperserver/ws}ArrayOfJobSummary
|
265
|
+
class ArrayOfJobSummary < ::Array
|
266
|
+
end
|
267
|
+
|
268
|
+
# {http://www.jasperforge.org/jasperserver/ws}IntervalUnit
|
269
|
+
class IntervalUnit < ::String
|
270
|
+
DAY = IntervalUnit.new("DAY")
|
271
|
+
HOUR = IntervalUnit.new("HOUR")
|
272
|
+
MINUTE = IntervalUnit.new("MINUTE")
|
273
|
+
WEEK = IntervalUnit.new("WEEK")
|
274
|
+
end
|
275
|
+
|
276
|
+
# {http://www.jasperforge.org/jasperserver/ws}CalendarDaysType
|
277
|
+
class CalendarDaysType < ::String
|
278
|
+
ALL = CalendarDaysType.new("ALL")
|
279
|
+
MONTH = CalendarDaysType.new("MONTH")
|
280
|
+
WEEK = CalendarDaysType.new("WEEK")
|
281
|
+
end
|
282
|
+
|
283
|
+
# {http://www.jasperforge.org/jasperserver/ws}ResultSendType
|
284
|
+
class ResultSendType < ::String
|
285
|
+
SEND = ResultSendType.new("SEND")
|
286
|
+
SEND_ATTACHMENT = ResultSendType.new("SEND_ATTACHMENT")
|
287
|
+
end
|
288
|
+
|
289
|
+
# {http://www.jasperforge.org/jasperserver/ws}RuntimeJobState
|
290
|
+
class RuntimeJobState < ::String
|
291
|
+
COMPLETE = RuntimeJobState.new("COMPLETE")
|
292
|
+
ERROR = RuntimeJobState.new("ERROR")
|
293
|
+
EXECUTING = RuntimeJobState.new("EXECUTING")
|
294
|
+
NORMAL = RuntimeJobState.new("NORMAL")
|
295
|
+
PAUSED = RuntimeJobState.new("PAUSED")
|
296
|
+
UNKNOWN = RuntimeJobState.new("UNKNOWN")
|
297
|
+
end
|
298
|
+
|
299
|
+
# getAllJobs
|
300
|
+
class GetAllJobs #:nodoc: all
|
301
|
+
def initialize
|
302
|
+
end
|
303
|
+
end
|
304
|
+
|
305
|
+
end
|
306
|
+
end
|