mondrian-olap 0.5.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +5 -5
  2. data/Changelog.md +86 -0
  3. data/LICENSE-Mondrian.txt +87 -0
  4. data/LICENSE.txt +1 -1
  5. data/README.md +43 -40
  6. data/VERSION +1 -1
  7. data/lib/mondrian/jars/commons-collections-3.2.2.jar +0 -0
  8. data/lib/mondrian/jars/commons-dbcp-1.4.jar +0 -0
  9. data/lib/mondrian/jars/commons-io-2.2.jar +0 -0
  10. data/lib/mondrian/jars/commons-lang-2.6.jar +0 -0
  11. data/lib/mondrian/jars/commons-logging-1.2.jar +0 -0
  12. data/lib/mondrian/jars/commons-pool-1.5.7.jar +0 -0
  13. data/lib/mondrian/jars/commons-vfs2-2.2.jar +0 -0
  14. data/lib/mondrian/jars/eigenbase-xom-1.3.5.jar +0 -0
  15. data/lib/mondrian/jars/guava-17.0.jar +0 -0
  16. data/lib/mondrian/jars/log4j-1.2.17.jar +0 -0
  17. data/lib/mondrian/jars/log4j.properties +2 -4
  18. data/lib/mondrian/jars/mondrian-9.1.0.0.jar +0 -0
  19. data/lib/mondrian/jars/olap4j-1.2.0.jar +0 -0
  20. data/lib/mondrian/olap/connection.rb +252 -67
  21. data/lib/mondrian/olap/cube.rb +63 -2
  22. data/lib/mondrian/olap/error.rb +37 -8
  23. data/lib/mondrian/olap/query.rb +41 -21
  24. data/lib/mondrian/olap/result.rb +163 -44
  25. data/lib/mondrian/olap/schema.rb +42 -3
  26. data/lib/mondrian/olap/schema_element.rb +25 -6
  27. data/lib/mondrian/olap/schema_udf.rb +21 -16
  28. data/spec/connection_role_spec.rb +69 -13
  29. data/spec/connection_spec.rb +3 -2
  30. data/spec/cube_cache_control_spec.rb +261 -0
  31. data/spec/cube_spec.rb +32 -4
  32. data/spec/fixtures/MondrianTest.xml +1 -6
  33. data/spec/fixtures/MondrianTestOracle.xml +1 -6
  34. data/spec/mondrian_spec.rb +71 -1
  35. data/spec/query_spec.rb +323 -25
  36. data/spec/rake_tasks.rb +253 -159
  37. data/spec/schema_definition_spec.rb +314 -61
  38. data/spec/spec_helper.rb +115 -45
  39. data/spec/support/data/customers.csv +10902 -0
  40. data/spec/support/data/product_classes.csv +101 -0
  41. data/spec/support/data/products.csv +101 -0
  42. data/spec/support/data/sales.csv +101 -0
  43. data/spec/support/data/time.csv +731 -0
  44. metadata +126 -124
  45. data/LICENSE-Mondrian.html +0 -259
  46. data/lib/mondrian/jars/commons-collections-3.2.jar +0 -0
  47. data/lib/mondrian/jars/commons-dbcp-1.2.1.jar +0 -0
  48. data/lib/mondrian/jars/commons-logging-1.1.1.jar +0 -0
  49. data/lib/mondrian/jars/commons-pool-1.2.jar +0 -0
  50. data/lib/mondrian/jars/commons-vfs-1.0.jar +0 -0
  51. data/lib/mondrian/jars/eigenbase-xom-1.3.1.jar +0 -0
  52. data/lib/mondrian/jars/log4j-1.2.14.jar +0 -0
  53. data/lib/mondrian/jars/mondrian.jar +0 -0
  54. data/lib/mondrian/jars/olap4j-1.0.1.539.jar +0 -0
metadata CHANGED
@@ -1,227 +1,215 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mondrian-olap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Raimonds Simanovskis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-29 00:00:00.000000000 Z
11
+ date: 2021-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: nokogiri
15
- version_requirements: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - '>='
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
14
  requirement: !ruby/object:Gem::Requirement
21
15
  requirements:
22
- - - '>='
16
+ - - ">="
23
17
  - !ruby/object:Gem::Version
24
18
  version: '0'
25
- prerelease: false
19
+ name: nokogiri
26
20
  type: :runtime
27
- - !ruby/object:Gem::Dependency
28
- name: bundler
21
+ prerelease: false
29
22
  version_requirements: !ruby/object:Gem::Requirement
30
23
  requirements:
31
- - - '>='
24
+ - - ">="
32
25
  - !ruby/object:Gem::Version
33
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
34
28
  requirement: !ruby/object:Gem::Requirement
35
29
  requirements:
36
- - - '>='
30
+ - - ">="
37
31
  - !ruby/object:Gem::Version
38
32
  version: '0'
39
- prerelease: false
33
+ name: bundler
40
34
  type: :development
41
- - !ruby/object:Gem::Dependency
42
- name: rake
35
+ prerelease: false
43
36
  version_requirements: !ruby/object:Gem::Requirement
44
37
  requirements:
45
- - - '>='
38
+ - - ">="
46
39
  - !ruby/object:Gem::Version
47
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
48
42
  requirement: !ruby/object:Gem::Requirement
49
43
  requirements:
50
- - - '>='
44
+ - - "~>"
51
45
  - !ruby/object:Gem::Version
52
- version: '0'
53
- prerelease: false
46
+ version: 10.3.2
47
+ name: rake
54
48
  type: :development
55
- - !ruby/object:Gem::Dependency
56
- name: rspec
49
+ prerelease: false
57
50
  version_requirements: !ruby/object:Gem::Requirement
58
51
  requirements:
59
- - - '>='
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: '0'
54
+ version: 10.3.2
55
+ - !ruby/object:Gem::Dependency
62
56
  requirement: !ruby/object:Gem::Requirement
63
57
  requirements:
64
- - - '>='
58
+ - - "~>"
65
59
  - !ruby/object:Gem::Version
66
- version: '0'
67
- prerelease: false
60
+ version: 2.14.0
61
+ name: rspec
68
62
  type: :development
69
- - !ruby/object:Gem::Dependency
70
- name: rdoc
63
+ prerelease: false
71
64
  version_requirements: !ruby/object:Gem::Requirement
72
65
  requirements:
73
- - - '>='
66
+ - - "~>"
74
67
  - !ruby/object:Gem::Version
75
- version: '0'
68
+ version: 2.14.0
69
+ - !ruby/object:Gem::Dependency
76
70
  requirement: !ruby/object:Gem::Requirement
77
71
  requirements:
78
- - - '>='
72
+ - - "~>"
79
73
  - !ruby/object:Gem::Version
80
- version: '0'
81
- prerelease: false
74
+ version: 4.2.2
75
+ name: rdoc
82
76
  type: :development
83
- - !ruby/object:Gem::Dependency
84
- name: jdbc-mysql
77
+ prerelease: false
85
78
  version_requirements: !ruby/object:Gem::Requirement
86
79
  requirements:
87
- - - '>='
80
+ - - "~>"
88
81
  - !ruby/object:Gem::Version
89
- version: '0'
82
+ version: 4.2.2
83
+ - !ruby/object:Gem::Dependency
90
84
  requirement: !ruby/object:Gem::Requirement
91
85
  requirements:
92
- - - '>='
86
+ - - "~>"
93
87
  - !ruby/object:Gem::Version
94
- version: '0'
95
- prerelease: false
88
+ version: 8.0.17
89
+ name: jdbc-mysql
96
90
  type: :development
97
- - !ruby/object:Gem::Dependency
98
- name: jdbc-postgres
91
+ prerelease: false
99
92
  version_requirements: !ruby/object:Gem::Requirement
100
93
  requirements:
101
- - - '>='
94
+ - - "~>"
102
95
  - !ruby/object:Gem::Version
103
- version: '0'
96
+ version: 8.0.17
97
+ - !ruby/object:Gem::Dependency
104
98
  requirement: !ruby/object:Gem::Requirement
105
99
  requirements:
106
- - - '>='
100
+ - - "~>"
107
101
  - !ruby/object:Gem::Version
108
- version: '0'
109
- prerelease: false
102
+ version: 42.2.14
103
+ name: jdbc-postgres
110
104
  type: :development
111
- - !ruby/object:Gem::Dependency
112
- name: jdbc-luciddb
105
+ prerelease: false
113
106
  version_requirements: !ruby/object:Gem::Requirement
114
107
  requirements:
115
- - - '>='
108
+ - - "~>"
116
109
  - !ruby/object:Gem::Version
117
- version: '0'
110
+ version: 42.2.14
111
+ - !ruby/object:Gem::Dependency
118
112
  requirement: !ruby/object:Gem::Requirement
119
113
  requirements:
120
- - - '>='
114
+ - - "~>"
121
115
  - !ruby/object:Gem::Version
122
- version: '0'
123
- prerelease: false
124
- type: :development
125
- - !ruby/object:Gem::Dependency
116
+ version: 1.3.1
126
117
  name: jdbc-jtds
118
+ type: :development
119
+ prerelease: false
127
120
  version_requirements: !ruby/object:Gem::Requirement
128
121
  requirements:
129
- - - ~>
122
+ - - "~>"
130
123
  - !ruby/object:Gem::Version
131
- version: 1.2.8
124
+ version: 1.3.1
125
+ - !ruby/object:Gem::Dependency
132
126
  requirement: !ruby/object:Gem::Requirement
133
127
  requirements:
134
- - - ~>
128
+ - - "~>"
135
129
  - !ruby/object:Gem::Version
136
- version: 1.2.8
137
- prerelease: false
138
- type: :development
139
- - !ruby/object:Gem::Dependency
130
+ version: 4.2.11
140
131
  name: activerecord
132
+ type: :development
133
+ prerelease: false
141
134
  version_requirements: !ruby/object:Gem::Requirement
142
135
  requirements:
143
- - - '>='
136
+ - - "~>"
144
137
  - !ruby/object:Gem::Version
145
- version: '0'
138
+ version: 4.2.11
139
+ - !ruby/object:Gem::Dependency
146
140
  requirement: !ruby/object:Gem::Requirement
147
141
  requirements:
148
- - - '>='
142
+ - - "~>"
149
143
  - !ruby/object:Gem::Version
150
- version: '0'
151
- prerelease: false
152
- type: :development
153
- - !ruby/object:Gem::Dependency
144
+ version: 1.3.25
154
145
  name: activerecord-jdbc-adapter
146
+ type: :development
147
+ prerelease: false
155
148
  version_requirements: !ruby/object:Gem::Requirement
156
149
  requirements:
157
- - - '>='
150
+ - - "~>"
158
151
  - !ruby/object:Gem::Version
159
- version: '0'
152
+ version: 1.3.25
153
+ - !ruby/object:Gem::Dependency
160
154
  requirement: !ruby/object:Gem::Requirement
161
155
  requirements:
162
- - - '>='
156
+ - - "~>"
163
157
  - !ruby/object:Gem::Version
164
- version: '0'
165
- prerelease: false
166
- type: :development
167
- - !ruby/object:Gem::Dependency
158
+ version: 1.6.9
168
159
  name: activerecord-oracle_enhanced-adapter
160
+ type: :development
161
+ prerelease: false
169
162
  version_requirements: !ruby/object:Gem::Requirement
170
163
  requirements:
171
- - - '>='
164
+ - - "~>"
172
165
  - !ruby/object:Gem::Version
173
- version: '0'
166
+ version: 1.6.9
167
+ - !ruby/object:Gem::Dependency
174
168
  requirement: !ruby/object:Gem::Requirement
175
169
  requirements:
176
- - - '>='
170
+ - - ">="
177
171
  - !ruby/object:Gem::Version
178
172
  version: '0'
179
- prerelease: false
180
- type: :development
181
- - !ruby/object:Gem::Dependency
182
173
  name: pry
174
+ type: :development
175
+ prerelease: false
183
176
  version_requirements: !ruby/object:Gem::Requirement
184
177
  requirements:
185
- - - '>='
178
+ - - ">="
186
179
  - !ruby/object:Gem::Version
187
180
  version: '0'
181
+ - !ruby/object:Gem::Dependency
188
182
  requirement: !ruby/object:Gem::Requirement
189
183
  requirements:
190
- - - '>='
184
+ - - ">="
191
185
  - !ruby/object:Gem::Version
192
186
  version: '0'
193
- prerelease: false
194
- type: :development
195
- - !ruby/object:Gem::Dependency
196
187
  name: therubyrhino
188
+ type: :development
189
+ prerelease: false
197
190
  version_requirements: !ruby/object:Gem::Requirement
198
191
  requirements:
199
- - - '>='
192
+ - - ">="
200
193
  - !ruby/object:Gem::Version
201
194
  version: '0'
195
+ - !ruby/object:Gem::Dependency
202
196
  requirement: !ruby/object:Gem::Requirement
203
197
  requirements:
204
- - - '>='
198
+ - - ">="
205
199
  - !ruby/object:Gem::Version
206
200
  version: '0'
207
- prerelease: false
208
- type: :development
209
- - !ruby/object:Gem::Dependency
210
201
  name: coffee-script
202
+ type: :development
203
+ prerelease: false
211
204
  version_requirements: !ruby/object:Gem::Requirement
212
205
  requirements:
213
- - - '>='
206
+ - - ">="
214
207
  - !ruby/object:Gem::Version
215
208
  version: '0'
216
- requirement: !ruby/object:Gem::Requirement
217
- requirements:
218
- - - '>='
219
- - !ruby/object:Gem::Version
220
- version: '0'
221
- prerelease: false
222
- type: :development
223
- description: |
224
- JRuby gem for performing multidimensional queries of relational database data using Mondrian OLAP Java library
209
+ description: 'JRuby gem for performing multidimensional queries of relational database
210
+ data using Mondrian OLAP Java library
211
+
212
+ '
225
213
  email:
226
214
  - raimonds.simanovskis@gmail.com
227
215
  executables: []
@@ -230,26 +218,29 @@ extra_rdoc_files:
230
218
  - README.md
231
219
  files:
232
220
  - Changelog.md
233
- - LICENSE-Mondrian.html
221
+ - LICENSE-Mondrian.txt
234
222
  - LICENSE.txt
235
223
  - README.md
236
224
  - VERSION
237
225
  - lib/mondrian-olap.rb
238
- - lib/mondrian/olap.rb
239
- - lib/mondrian/jars/commons-collections-3.2.jar
240
- - lib/mondrian/jars/commons-dbcp-1.2.1.jar
241
- - lib/mondrian/jars/commons-logging-1.1.1.jar
226
+ - lib/mondrian/jars/commons-collections-3.2.2.jar
227
+ - lib/mondrian/jars/commons-dbcp-1.4.jar
228
+ - lib/mondrian/jars/commons-io-2.2.jar
229
+ - lib/mondrian/jars/commons-lang-2.6.jar
230
+ - lib/mondrian/jars/commons-logging-1.2.jar
242
231
  - lib/mondrian/jars/commons-math-1.1.jar
243
- - lib/mondrian/jars/commons-pool-1.2.jar
244
- - lib/mondrian/jars/commons-vfs-1.0.jar
232
+ - lib/mondrian/jars/commons-pool-1.5.7.jar
233
+ - lib/mondrian/jars/commons-vfs2-2.2.jar
245
234
  - lib/mondrian/jars/eigenbase-properties-1.1.2.jar
246
235
  - lib/mondrian/jars/eigenbase-resgen-1.3.1.jar
247
- - lib/mondrian/jars/eigenbase-xom-1.3.1.jar
236
+ - lib/mondrian/jars/eigenbase-xom-1.3.5.jar
237
+ - lib/mondrian/jars/guava-17.0.jar
248
238
  - lib/mondrian/jars/javacup-10k.jar
249
- - lib/mondrian/jars/log4j-1.2.14.jar
239
+ - lib/mondrian/jars/log4j-1.2.17.jar
250
240
  - lib/mondrian/jars/log4j.properties
251
- - lib/mondrian/jars/mondrian.jar
252
- - lib/mondrian/jars/olap4j-1.0.1.539.jar
241
+ - lib/mondrian/jars/mondrian-9.1.0.0.jar
242
+ - lib/mondrian/jars/olap4j-1.2.0.jar
243
+ - lib/mondrian/olap.rb
253
244
  - lib/mondrian/olap/connection.rb
254
245
  - lib/mondrian/olap/cube.rb
255
246
  - lib/mondrian/olap/error.rb
@@ -261,14 +252,20 @@ files:
261
252
  - lib/mondrian/olap/version.rb
262
253
  - spec/connection_role_spec.rb
263
254
  - spec/connection_spec.rb
255
+ - spec/cube_cache_control_spec.rb
264
256
  - spec/cube_spec.rb
257
+ - spec/fixtures/MondrianTest.xml
258
+ - spec/fixtures/MondrianTestOracle.xml
265
259
  - spec/mondrian_spec.rb
266
260
  - spec/query_spec.rb
267
261
  - spec/rake_tasks.rb
268
262
  - spec/schema_definition_spec.rb
269
263
  - spec/spec_helper.rb
270
- - spec/fixtures/MondrianTest.xml
271
- - spec/fixtures/MondrianTestOracle.xml
264
+ - spec/support/data/customers.csv
265
+ - spec/support/data/product_classes.csv
266
+ - spec/support/data/products.csv
267
+ - spec/support/data/sales.csv
268
+ - spec/support/data/time.csv
272
269
  - spec/support/matchers/be_like.rb
273
270
  homepage: http://github.com/rsim/mondrian-olap
274
271
  licenses:
@@ -280,29 +277,34 @@ require_paths:
280
277
  - lib
281
278
  required_ruby_version: !ruby/object:Gem::Requirement
282
279
  requirements:
283
- - - '>='
280
+ - - ">="
284
281
  - !ruby/object:Gem::Version
285
282
  version: '0'
286
283
  required_rubygems_version: !ruby/object:Gem::Requirement
287
284
  requirements:
288
- - - '>='
285
+ - - ">="
289
286
  - !ruby/object:Gem::Version
290
287
  version: '0'
291
288
  requirements: []
292
- rubyforge_project:
293
- rubygems_version: 2.1.9
289
+ rubygems_version: 3.0.6
294
290
  signing_key:
295
291
  specification_version: 4
296
292
  summary: JRuby API for Mondrian OLAP Java library
297
293
  test_files:
298
294
  - spec/connection_role_spec.rb
299
295
  - spec/connection_spec.rb
296
+ - spec/cube_cache_control_spec.rb
300
297
  - spec/cube_spec.rb
298
+ - spec/fixtures/MondrianTest.xml
299
+ - spec/fixtures/MondrianTestOracle.xml
301
300
  - spec/mondrian_spec.rb
302
301
  - spec/query_spec.rb
303
302
  - spec/rake_tasks.rb
304
303
  - spec/schema_definition_spec.rb
305
304
  - spec/spec_helper.rb
306
- - spec/fixtures/MondrianTest.xml
307
- - spec/fixtures/MondrianTestOracle.xml
305
+ - spec/support/data/customers.csv
306
+ - spec/support/data/product_classes.csv
307
+ - spec/support/data/products.csv
308
+ - spec/support/data/sales.csv
309
+ - spec/support/data/time.csv
308
310
  - spec/support/matchers/be_like.rb
@@ -1,259 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml"><head>
3
-
4
-
5
-
6
-
7
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
8
- <title>Eclipse Public License - Version 1.0</title>
9
- <style type="text/css">
10
- body {
11
- size: 8.5in 11.0in;
12
- margin: 0.25in 0.5in 0.25in 0.5in;
13
- tab-interval: 0.5in;
14
- }
15
- p {
16
- margin-left: auto;
17
- margin-top: 0.5em;
18
- margin-bottom: 0.5em;
19
- }
20
- p.list {
21
- margin-left: 0.5in;
22
- margin-top: 0.05em;
23
- margin-bottom: 0.05em;
24
- }
25
- </style>
26
-
27
- </head><body lang="EN-US">
28
-
29
- <h2>Eclipse Public License - v 1.0</h2>
30
-
31
- <p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
32
- PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
33
- DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
34
- AGREEMENT.</p>
35
-
36
- <p><b>1. DEFINITIONS</b></p>
37
-
38
- <p>"Contribution" means:</p>
39
-
40
- <p class="list">a) in the case of the initial Contributor, the initial
41
- code and documentation distributed under this Agreement, and</p>
42
- <p class="list">b) in the case of each subsequent Contributor:</p>
43
- <p class="list">i) changes to the Program, and</p>
44
- <p class="list">ii) additions to the Program;</p>
45
- <p class="list">where such changes and/or additions to the Program
46
- originate from and are distributed by that particular Contributor. A
47
- Contribution 'originates' from a Contributor if it was added to the
48
- Program by such Contributor itself or anyone acting on such
49
- Contributor's behalf. Contributions do not include additions to the
50
- Program which: (i) are separate modules of software distributed in
51
- conjunction with the Program under their own license agreement, and (ii)
52
- are not derivative works of the Program.</p>
53
-
54
- <p>"Contributor" means any person or entity that distributes
55
- the Program.</p>
56
-
57
- <p>"Licensed Patents" mean patent claims licensable by a
58
- Contributor which are necessarily infringed by the use or sale of its
59
- Contribution alone or when combined with the Program.</p>
60
-
61
- <p>"Program" means the Contributions distributed in accordance
62
- with this Agreement.</p>
63
-
64
- <p>"Recipient" means anyone who receives the Program under
65
- this Agreement, including all Contributors.</p>
66
-
67
- <p><b>2. GRANT OF RIGHTS</b></p>
68
-
69
- <p class="list">a) Subject to the terms of this Agreement, each
70
- Contributor hereby grants Recipient a non-exclusive, worldwide,
71
- royalty-free copyright license to reproduce, prepare derivative works
72
- of, publicly display, publicly perform, distribute and sublicense the
73
- Contribution of such Contributor, if any, and such derivative works, in
74
- source code and object code form.</p>
75
-
76
- <p class="list">b) Subject to the terms of this Agreement, each
77
- Contributor hereby grants Recipient a non-exclusive, worldwide,
78
- royalty-free patent license under Licensed Patents to make, use, sell,
79
- offer to sell, import and otherwise transfer the Contribution of such
80
- Contributor, if any, in source code and object code form. This patent
81
- license shall apply to the combination of the Contribution and the
82
- Program if, at the time the Contribution is added by the Contributor,
83
- such addition of the Contribution causes such combination to be covered
84
- by the Licensed Patents. The patent license shall not apply to any other
85
- combinations which include the Contribution. No hardware per se is
86
- licensed hereunder.</p>
87
-
88
- <p class="list">c) Recipient understands that although each Contributor
89
- grants the licenses to its Contributions set forth herein, no assurances
90
- are provided by any Contributor that the Program does not infringe the
91
- patent or other intellectual property rights of any other entity. Each
92
- Contributor disclaims any liability to Recipient for claims brought by
93
- any other entity based on infringement of intellectual property rights
94
- or otherwise. As a condition to exercising the rights and licenses
95
- granted hereunder, each Recipient hereby assumes sole responsibility to
96
- secure any other intellectual property rights needed, if any. For
97
- example, if a third party patent license is required to allow Recipient
98
- to distribute the Program, it is Recipient's responsibility to acquire
99
- that license before distributing the Program.</p>
100
-
101
- <p class="list">d) Each Contributor represents that to its knowledge it
102
- has sufficient copyright rights in its Contribution, if any, to grant
103
- the copyright license set forth in this Agreement.</p>
104
-
105
- <p><b>3. REQUIREMENTS</b></p>
106
-
107
- <p>A Contributor may choose to distribute the Program in object code
108
- form under its own license agreement, provided that:</p>
109
-
110
- <p class="list">a) it complies with the terms and conditions of this
111
- Agreement; and</p>
112
-
113
- <p class="list">b) its license agreement:</p>
114
-
115
- <p class="list">i) effectively disclaims on behalf of all Contributors
116
- all warranties and conditions, express and implied, including warranties
117
- or conditions of title and non-infringement, and implied warranties or
118
- conditions of merchantability and fitness for a particular purpose;</p>
119
-
120
- <p class="list">ii) effectively excludes on behalf of all Contributors
121
- all liability for damages, including direct, indirect, special,
122
- incidental and consequential damages, such as lost profits;</p>
123
-
124
- <p class="list">iii) states that any provisions which differ from this
125
- Agreement are offered by that Contributor alone and not by any other
126
- party; and</p>
127
-
128
- <p class="list">iv) states that source code for the Program is available
129
- from such Contributor, and informs licensees how to obtain it in a
130
- reasonable manner on or through a medium customarily used for software
131
- exchange.</p>
132
-
133
- <p>When the Program is made available in source code form:</p>
134
-
135
- <p class="list">a) it must be made available under this Agreement; and</p>
136
-
137
- <p class="list">b) a copy of this Agreement must be included with each
138
- copy of the Program.</p>
139
-
140
- <p>Contributors may not remove or alter any copyright notices contained
141
- within the Program.</p>
142
-
143
- <p>Each Contributor must identify itself as the originator of its
144
- Contribution, if any, in a manner that reasonably allows subsequent
145
- Recipients to identify the originator of the Contribution.</p>
146
-
147
- <p><b>4. COMMERCIAL DISTRIBUTION</b></p>
148
-
149
- <p>Commercial distributors of software may accept certain
150
- responsibilities with respect to end users, business partners and the
151
- like. While this license is intended to facilitate the commercial use of
152
- the Program, the Contributor who includes the Program in a commercial
153
- product offering should do so in a manner which does not create
154
- potential liability for other Contributors. Therefore, if a Contributor
155
- includes the Program in a commercial product offering, such Contributor
156
- ("Commercial Contributor") hereby agrees to defend and
157
- indemnify every other Contributor ("Indemnified Contributor")
158
- against any losses, damages and costs (collectively "Losses")
159
- arising from claims, lawsuits and other legal actions brought by a third
160
- party against the Indemnified Contributor to the extent caused by the
161
- acts or omissions of such Commercial Contributor in connection with its
162
- distribution of the Program in a commercial product offering. The
163
- obligations in this section do not apply to any claims or Losses
164
- relating to any actual or alleged intellectual property infringement. In
165
- order to qualify, an Indemnified Contributor must: a) promptly notify
166
- the Commercial Contributor in writing of such claim, and b) allow the
167
- Commercial Contributor to control, and cooperate with the Commercial
168
- Contributor in, the defense and any related settlement negotiations. The
169
- Indemnified Contributor may participate in any such claim at its own
170
- expense.</p>
171
-
172
- <p>For example, a Contributor might include the Program in a commercial
173
- product offering, Product X. That Contributor is then a Commercial
174
- Contributor. If that Commercial Contributor then makes performance
175
- claims, or offers warranties related to Product X, those performance
176
- claims and warranties are such Commercial Contributor's responsibility
177
- alone. Under this section, the Commercial Contributor would have to
178
- defend claims against the other Contributors related to those
179
- performance claims and warranties, and if a court requires any other
180
- Contributor to pay any damages as a result, the Commercial Contributor
181
- must pay those damages.</p>
182
-
183
- <p><b>5. NO WARRANTY</b></p>
184
-
185
- <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
186
- PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
187
- OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
188
- ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
189
- OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
190
- responsible for determining the appropriateness of using and
191
- distributing the Program and assumes all risks associated with its
192
- exercise of rights under this Agreement , including but not limited to
193
- the risks and costs of program errors, compliance with applicable laws,
194
- damage to or loss of data, programs or equipment, and unavailability or
195
- interruption of operations.</p>
196
-
197
- <p><b>6. DISCLAIMER OF LIABILITY</b></p>
198
-
199
- <p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
200
- NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
201
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
202
- WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
203
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
204
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
205
- DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
206
- HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
207
-
208
- <p><b>7. GENERAL</b></p>
209
-
210
- <p>If any provision of this Agreement is invalid or unenforceable under
211
- applicable law, it shall not affect the validity or enforceability of
212
- the remainder of the terms of this Agreement, and without further action
213
- by the parties hereto, such provision shall be reformed to the minimum
214
- extent necessary to make such provision valid and enforceable.</p>
215
-
216
- <p>If Recipient institutes patent litigation against any entity
217
- (including a cross-claim or counterclaim in a lawsuit) alleging that the
218
- Program itself (excluding combinations of the Program with other
219
- software or hardware) infringes such Recipient's patent(s), then such
220
- Recipient's rights granted under Section 2(b) shall terminate as of the
221
- date such litigation is filed.</p>
222
-
223
- <p>All Recipient's rights under this Agreement shall terminate if it
224
- fails to comply with any of the material terms or conditions of this
225
- Agreement and does not cure such failure in a reasonable period of time
226
- after becoming aware of such noncompliance. If all Recipient's rights
227
- under this Agreement terminate, Recipient agrees to cease use and
228
- distribution of the Program as soon as reasonably practicable. However,
229
- Recipient's obligations under this Agreement and any licenses granted by
230
- Recipient relating to the Program shall continue and survive.</p>
231
-
232
- <p>Everyone is permitted to copy and distribute copies of this
233
- Agreement, but in order to avoid inconsistency the Agreement is
234
- copyrighted and may only be modified in the following manner. The
235
- Agreement Steward reserves the right to publish new versions (including
236
- revisions) of this Agreement from time to time. No one other than the
237
- Agreement Steward has the right to modify this Agreement. The Eclipse
238
- Foundation is the initial Agreement Steward. The Eclipse Foundation may
239
- assign the responsibility to serve as the Agreement Steward to a
240
- suitable separate entity. Each new version of the Agreement will be
241
- given a distinguishing version number. The Program (including
242
- Contributions) may always be distributed subject to the version of the
243
- Agreement under which it was received. In addition, after a new version
244
- of the Agreement is published, Contributor may elect to distribute the
245
- Program (including its Contributions) under the new version. Except as
246
- expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
247
- rights or licenses to the intellectual property of any Contributor under
248
- this Agreement, whether expressly, by implication, estoppel or
249
- otherwise. All rights in the Program not expressly granted under this
250
- Agreement are reserved.</p>
251
-
252
- <p>This Agreement is governed by the laws of the State of New York and
253
- the intellectual property laws of the United States of America. No party
254
- to this Agreement will bring a legal action under this Agreement more
255
- than one year after the cause of action arose. Each party waives its
256
- rights to a jury trial in any resulting litigation.</p>
257
-
258
- </body></html>
259
-