jasperserver4r 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ LICENSE
@@ -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
@@ -0,0 +1,3 @@
1
+ 0.1
2
+ - First version, not fully tested
3
+ - works for report scheduling only
@@ -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.
@@ -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.
@@ -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
@@ -0,0 +1,4 @@
1
+ ---
2
+ :patch: 0
3
+ :major: 0
4
+ :minor: 1
@@ -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