glassfish 0.9.5-universal-java → 1.0.0-universal-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. data/History.txt +247 -0
  2. data/LICENSE.txt +774 -0
  3. data/README.txt +140 -0
  4. data/bin/gfrake +5 -1
  5. data/bin/glassfish +5 -7
  6. data/generators/gfrake/templates/glassfish.yml +39 -0
  7. data/lib/command_line_parser.rb +29 -40
  8. data/lib/config.rb +57 -63
  9. data/lib/glassfish.rb +3 -79
  10. data/{modules → lib/java}/akuma.jar +0 -0
  11. data/lib/java/gf-jruby-connector.jar +0 -0
  12. data/lib/java/glassfish-embedded-nucleus.jar +0 -0
  13. data/lib/java/glassfish-gem.jar +0 -0
  14. data/lib/java/grizzly-jruby-module.jar +0 -0
  15. data/lib/java/grizzly-jruby.jar +0 -0
  16. data/lib/jruby/rack/grizzly_helper.rb +230 -0
  17. data/lib/jruby/rack/merb.rb +34 -0
  18. data/lib/jruby/rack/rackup.rb +46 -0
  19. data/lib/jruby/rack/rails.rb +29 -0
  20. data/lib/jruby/rack/sinatra.rb +18 -0
  21. data/lib/jruby/rails_path.rb +11 -0
  22. data/lib/{templates/profile.properties → rack/adapter/merb.rb} +18 -7
  23. data/lib/rack/adapter/rails.rb +268 -0
  24. data/lib/rack/handler/grizzly.rb +59 -0
  25. data/lib/server.rb +164 -0
  26. data/lib/version.rb +1 -1
  27. metadata +83 -153
  28. data/bin/glassfish_rails +0 -61
  29. data/config/asadminenv.conf +0 -6
  30. data/config/asenv.bat +0 -29
  31. data/config/asenv.conf +0 -31
  32. data/config/glassfish.container +0 -4
  33. data/domains/domain1/config/admin-keyfile +0 -3
  34. data/domains/domain1/config/cacerts.jks +0 -0
  35. data/domains/domain1/config/default-web.xml +0 -1133
  36. data/domains/domain1/config/domain-passwords +0 -0
  37. data/domains/domain1/config/domain.xml +0 -190
  38. data/domains/domain1/config/glassfish_gem_version.yml +0 -7
  39. data/domains/domain1/config/keyfile +0 -6
  40. data/domains/domain1/config/keystore.jks +0 -0
  41. data/domains/domain1/config/logging.properties +0 -46
  42. data/domains/domain1/config/login.conf +0 -21
  43. data/domains/domain1/config/server.policy +0 -170
  44. data/domains/domain1/config/sun-acc.xml +0 -40
  45. data/domains/domain1/docroot/index.html +0 -83
  46. data/domains/domain1/master-password +0 -0
  47. data/lib/appclient/appclientlogin.conf +0 -10
  48. data/lib/appclient/client.policy +0 -79
  49. data/lib/appclient/wss-client-config-1.0.xml +0 -84
  50. data/lib/appclient/wss-client-config-2.0.xml +0 -96
  51. data/lib/registration/servicetag-registry.xml +0 -18
  52. data/lib/templates/cacerts.jks +0 -0
  53. data/lib/templates/default-web.xml +0 -1133
  54. data/lib/templates/docroot/index.html +0 -83
  55. data/lib/templates/domain.xml +0 -180
  56. data/lib/templates/domain.xml.xsl +0 -100
  57. data/lib/templates/keyfile +0 -6
  58. data/lib/templates/keystore.jks +0 -0
  59. data/lib/templates/logging.properties +0 -48
  60. data/lib/templates/login.conf +0 -21
  61. data/lib/templates/server.policy +0 -170
  62. data/lib/templates/sun-acc.xml +0 -40
  63. data/modules/admin-cli.jar +0 -0
  64. data/modules/api-exporter.jar +0 -0
  65. data/modules/asm-all-repackaged.jar +0 -0
  66. data/modules/auto-depends.jar +0 -0
  67. data/modules/bean-validator.jar +0 -0
  68. data/modules/branding.jar +0 -0
  69. data/modules/cli-framework.jar +0 -0
  70. data/modules/common-util.jar +0 -0
  71. data/modules/config-api.jar +0 -0
  72. data/modules/config.jar +0 -0
  73. data/modules/deployment-admin.jar +0 -0
  74. data/modules/deployment-autodeploy.jar +0 -0
  75. data/modules/deployment-common.jar +0 -0
  76. data/modules/flashlight-agent.jar +0 -0
  77. data/modules/flashlight-framework.jar +0 -0
  78. data/modules/gf-jruby-connector.jar +0 -0
  79. data/modules/gfprobe-provider-client.jar +0 -0
  80. data/modules/glassfish-api.jar +0 -0
  81. data/modules/glassfish-ee-api.jar +0 -0
  82. data/modules/glassfish-extra-jre-packages.jar +0 -0
  83. data/modules/glassfish-gem.jar +0 -0
  84. data/modules/glassfish.jar +0 -0
  85. data/modules/grizzly-comet.jar +0 -0
  86. data/modules/grizzly-cometd.jar +0 -0
  87. data/modules/grizzly-compat.jar +0 -0
  88. data/modules/grizzly-config.jar +0 -0
  89. data/modules/grizzly-framework.jar +0 -0
  90. data/modules/grizzly-http.jar +0 -0
  91. data/modules/grizzly-jruby-module.jar +0 -0
  92. data/modules/grizzly-jruby.jar +0 -0
  93. data/modules/grizzly-messagesbus.jar +0 -0
  94. data/modules/grizzly-portunif.jar +0 -0
  95. data/modules/grizzly-rcm.jar +0 -0
  96. data/modules/grizzly-utils.jar +0 -0
  97. data/modules/hk2-core.jar +0 -0
  98. data/modules/hk2.jar +0 -0
  99. data/modules/internal-api.jar +0 -0
  100. data/modules/kernel.jar +0 -0
  101. data/modules/launcher.jar +0 -0
  102. data/modules/org.apache.felix.configadmin.jar +0 -0
  103. data/modules/org.apache.felix.fileinstall.jar +0 -0
  104. data/modules/org.apache.felix.shell.jar +0 -0
  105. data/modules/org.apache.felix.shell.remote.jar +0 -0
  106. data/modules/org.apache.felix.shell.tui.jar +0 -0
  107. data/modules/osgi-main.jar +0 -0
  108. data/modules/pkg-client.jar +0 -0
  109. data/modules/tiger-types-osgi.jar +0 -0
@@ -0,0 +1,247 @@
1
+ == 1.0.0
2
+
3
+ This is 1.0.0 final release of GlassFish gem. This release is based on GlassFish v3 final release. See GlassFish project page[http://glassfish.dev.java.net].
4
+
5
+ === New features in this release
6
+
7
+ 1. Implemented using GlassFish v3 embedded API.
8
+
9
+ 2. Startup time improvement. Almost 15-18% faster startup.
10
+
11
+ 3. Fully Rack compliant
12
+
13
+ 4. Support for running GlassFish gem by passing code block
14
+
15
+ GlassFish::Server.start(:address=>"127.0.0.1", :port=>4000) do
16
+ use Rack::CommonLogger
17
+ use Rack::ShowExceptions
18
+ map "/lobster" do
19
+ use Rack::Lint
20
+ run HelloWorld.new
21
+ run Proc.new {[200, {"Content-Type" => "text/html"}, "Hello"]}
22
+ end
23
+ end
24
+
25
+ 5. Lots of fixes for Sinatra support (extensions, middleware etc.)
26
+
27
+ 6. New -a CLI switch to bind to a given IP address
28
+
29
+ 7. Grizzly (NIO based HTTP library) configuration thru glassfish.yml
30
+
31
+ $ gfrake config
32
+
33
+ Then look inside config/glassfish.yml.
34
+
35
+ 8. Improved support for running Rackup scripts
36
+
37
+ === Bug fixes
38
+
39
+ 25812[http://rubyforge.org/tracker/index.php?func=detail&aid=25812&group_id=5450&atid=21080] ActionController::Request.remote_ip is not set
40
+
41
+ 26147[http://rubyforge.org/tracker/index.php?func=detail&aid=26147&group_id=5450&atid=21080] Setting Hostname IP Address Incorrectly
42
+
43
+ 26149[http://rubyforge.org/tracker/index.php?func=detail&aid=26149&group_id=5450&atid=21080] Glassfish Gem fails to load Rails application in the production environment
44
+
45
+ 26208[http://rubyforge.org/tracker/index.php?func=detail&aid=26208&group_id=5450&atid=21080] Can't get glassfish to start rails in thread-safe mode
46
+
47
+ 26821[http://rubyforge.org/tracker/index.php?func=detail&aid=26821&group_id=5450&atid=21080] Error when running rack app
48
+
49
+ 26866[http://rubyforge.org/tracker/index.php?func=detail&aid=26866&group_id=5450&atid=21080] JVM crash probably due to log file running over limit
50
+
51
+ 26935[http://rubyforge.org/tracker/index.php?func=detail&aid=26935&group_id=5450&atid=21080] rack.run_once not getting set
52
+
53
+ 27030[http://rubyforge.org/tracker/index.php?func=detail&aid=27030&group_id=5450&atid=21080] Extending CLASSPATH poisons glassfish gem?
54
+
55
+ 27125[http://rubyforge.org/tracker/index.php?func=detail&aid=27125&group_id=5450&atid=21080] Application Environment not passed to Sinatra
56
+
57
+ == 0.9.5
58
+
59
+ This is a quick update to 0.9.4.
60
+
61
+ Main difference between 0.9.4 and 0.9.5 is that glassfish_rails exits in 0.9.4 where as in 0.9.5 it prints deprecation message and runs the application. This is so that NetBean 6.7 RC1 can still run glassfish gem.
62
+
63
+ 7380[https://glassfish.dev.java.net/issues/show_bug.cgi?id=7380] Duplicate glassfish scripts in JRUBY_HOME/bin
64
+
65
+
66
+ == 0.9.4
67
+
68
+ ====Bugs fixed in this release
69
+
70
+ 23754[http://rubyforge.org/tracker/index.php?func=detail&aid=23754&group_id=5450&atid=21080] glassfish gem rails dependencies defect
71
+
72
+ 24633[http://rubyforge.org/tracker/index.php?func=detail&aid=24633&group_id=5450&atid=21080] Better checking for arguments
73
+
74
+ 24787[http://rubyforge.org/tracker/index.php?func=detail&aid=24787&group_id=5450&atid=21080] Problem with config.load_paths
75
+
76
+ 24828[http://rubyforge.org/tracker/index.php?func=detail&aid=24828&group_id=5450&atid=21080] deadlock in GFFileHandler
77
+
78
+ 25068[http://rubyforge.org/tracker/index.php?func=detail&aid=25068&group_id=5450&atid=21080] --pid option never works
79
+
80
+ 25169[http://rubyforge.org/tracker/index.php?func=detail&aid=25169&group_id=5450&atid=21080] Add support for logging message on console
81
+
82
+ 25252[http://rubyforge.org/tracker/index.php?func=detail&aid=25252&group_id=5450&atid=21080] cannot start if glassfish gem file is readonly: \domains\domain1\config\logging.properties
83
+
84
+ 25253[http://rubyforge.org/tracker/index.php?func=detail&aid=25253&group_id=5450&atid=21080] extra initialization of Rails inside grizzly-jruby.jar causes problems
85
+
86
+ 25254[http://rubyforge.org/tracker/index.php?func=detail&aid=25254&group_id=5450&atid=21080] grizzly helper in grizzly-jruby.jar doesn't handle numeric headers
87
+
88
+ 25424[http://rubyforge.org/tracker/index.php?func=detail&aid=25424&group_id=5450&atid=21080] can't find header dir for ruby
89
+
90
+ 25560[http://rubyforge.org/tracker/index.php?func=detail&aid=25560&group_id=5450&atid=21080] Starting multiple glassfish instances seems to have logging problems
91
+
92
+ 25970[http://rubyforge.org/tracker/index.php?func=detail&aid=25970&group_id=5450&atid=21080] Debugging via NetBeans: setting breakpoints fails with error message on server console.
93
+
94
+ 5404[https://glassfish.dev.java.net/issues/show_bug.cgi?id=5404] SQLite3 with v3 Gem requires additional database configuration
95
+
96
+ 7380[https://glassfish.dev.java.net/issues/show_bug.cgi?id=7380] Duplicate glassfish scripts in JRUBY_HOME/bin
97
+
98
+
99
+ == 0.9.3
100
+
101
+ ===New features in this release
102
+
103
+ * Support for daemon mode (only linux and Solaris)
104
+ * Logging improvements. Direct the log to a file using -P option. Controle log
105
+ level using <tt>--log-level</tt> option
106
+ * Support for config file, glassfish.yml. Try gfrake config and use it as
107
+ template. Also see <tt>--config</tt> option. Now you can provide the JVM
108
+ properties for GlassFish in daemon mode inside glassfish.yml.
109
+ * GlassFish Rake command: gfrake. Create a config file and do the cleanup
110
+ of temporary files created by GlassFish. See,
111
+
112
+ <tt>$gfrake -T</tt>
113
+ * Support for Sinatra and framework auto-detection
114
+ * Improved server busy handling. During app load new requests give 503 along
115
+ with "Server busy loading...." page instead of 404.
116
+
117
+ ====Bugs fixed in this release
118
+
119
+ =====RubyForge
120
+ 23719[http://rubyforge.org/tracker/index.php?func=detail&aid=23719&group_id=5450&atid=21080] When starting app, gf shows the index.html page which it shouldn't
121
+
122
+ 23721[http://rubyforge.org/tracker/index.php?func=detail&aid=23721&group_id=5450&atid=21080] starting gf requires sudo
123
+
124
+ 23723[http://rubyforge.org/tracker/index.php?func=detail&aid=23723&group_id=5450&atid=21080] Support Daemon mode
125
+
126
+ == 0.9.2
127
+
128
+ ====Bugs fixed in this release
129
+
130
+ Startup improvements.
131
+ =====RubyForge Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080]
132
+
133
+ 23279[http://rubyforge.org/tracker/index.php?func=detail&aid=23279&group_id=5450&atid=21080] com.sun.grizzly.jruby.rack.RackInitializationException: Bad file descriptor - Bad file descriptor
134
+
135
+ 23443[http://rubyforge.org/tracker/index.php?func=detail&aid=23443&group_id=5450&atid=21080] PUBLIC_ROOT variable not set correctly under mac osx in 0.9.1
136
+
137
+ ===== Java.net Issues[https://glassfish.dev.java.net/servlets/ProjectIssues]
138
+
139
+ 6959[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6959] com.sun.grizzly.jruby.rack.RackInitializationException: Bad file descriptor - Bad file descriptor
140
+
141
+ == 0.9.1
142
+ * Performance improvements. The request message headers are passed on from java to ruby using byte[] to avoid extra
143
+ encoding resulting from String conversion.
144
+
145
+ ====Bugs fixed in this release
146
+
147
+ =====RubyForge Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080]
148
+
149
+ 22724[http://rubyforge.org/tracker/index.php?func=detail&aid=22724&group_id=5450&atid=21080] "asadmin" in %JRUBY_HOME\bin should be renamed to avoid confliction
150
+
151
+ 22741[http://rubyforge.org/tracker/index.php?func=detail&aid=22741&group_id=5450&atid=21080] JRuby on Rails on Glassfish -- Unexplainable NameError
152
+
153
+ 22774[http://rubyforge.org/tracker/index.php?func=detail&aid=22774&group_id=5450&atid=21080] Gem 0.9.0 does not work in Production on Windows with JRuby 1.4+
154
+
155
+ 22793[http://rubyforge.org/tracker/index.php?func=detail&aid=22793&group_id=5450&atid=21080] 0.9.0 gem has 'Activator start error'
156
+
157
+ 22795[http://rubyforge.org/tracker/index.php?func=detail&aid=22795&group_id=5450&atid=21080] -p option throws BindException
158
+
159
+ 22836[http://rubyforge.org/tracker/index.php?func=detail&aid=22836&group_id=5450&atid=21080] Glassfish gem 0.9 problems on Ubuntu and Windows
160
+
161
+ 22861[http://rubyforge.org/tracker/index.php?func=detail&aid=22861&group_id=5450&atid=21080] Error if RAILS_GEM_VERSION isn't defined
162
+
163
+ 23007[http://rubyforge.org/tracker/index.php?func=detail&aid=23007&group_id=5450&atid=21080] uninitialized constant Rack while creating error app
164
+
165
+ 23090[http://rubyforge.org/tracker/index.php?func=detail&aid=23090&group_id=5450&atid=21080] Environment flag -e is not correctly used for Merb app
166
+
167
+ ===== Java.net Issues[https://glassfish.dev.java.net/servlets/ProjectIssues]
168
+ 6754[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6754] Running Typo in GlassFish Gem throws multiple exceptions
169
+
170
+ 6764[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6764] "Rails" text shows up when deploying anything
171
+
172
+ 6765[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6765] GlassFish Gem does not list rack as a dependency
173
+
174
+ 6767[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6767] Impossible to set production environment for merb
175
+
176
+ == 0.9.0
177
+ * Rack based
178
+ * Auto detection of Rails and Merb applications
179
+ * Merb support
180
+ * Just one command: 'glassfish' would deploy a Rails application or a Merb
181
+ application
182
+ * glassfish_rails deprecated but supported for backward compatibility
183
+ * JRuby Runtime Pool, see <tt>glassfish -h</tt>
184
+
185
+ Following issues fixed in this release
186
+
187
+ 3964[https://glassfish.dev.java.net/issues/show_bug.cgi?id=3964] Provide -port option to specify port for v3 gem
188
+
189
+ 6470[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6470] HTTP keep-alive not honored
190
+
191
+ 4823[https://glassfish.dev.java.net/issues/show_bug.cgi?id=4823] glassfish_rails command should attempt to load the current directory if none specified
192
+
193
+ 5446[https://glassfish.dev.java.net/issues/show_bug.cgi?id=5446] JRuby on Rails show request header in page
194
+
195
+ Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080] reported at rubyforge
196
+
197
+ == 0.3.1
198
+ * Scaffold adding duplicate entries with v3 gem 0.1.1
199
+
200
+ == 0.3.0
201
+ * 3976 Rails Gem: Static content not loading
202
+ * 5046 Two concurrent Rails apps are not accessible
203
+ * 5114 JRuby app directory deployment fails for both HK2 and Felix
204
+ * 5160 file uploading is not working when file size exceeds 10 KB
205
+
206
+ Issues reported at http://forums.java.net/jive/forum.jspa?forumID=138
207
+
208
+ * 19526 File upload problem using 0.1.2
209
+ * 20680 File uploading is not working when file size exceeds 10 KB
210
+ * Rails logs are wired thru the glassfish gem. Now you would be able to see the Rails log as part of glassfish_rails run.
211
+
212
+ == 0.1.2
213
+
214
+ * Scaffold created using Rails 2.0.2 adding duplicate entries with v3 gem 0.1.1
215
+ * After the execution of an Ajax request, all subsequent requests are also
216
+ treated as Ajax requests.
217
+ * When using observe_field for AJAX capabilities, it only works once and any
218
+ attempt afterwards returns the first selected dataset.
219
+ * Blank page returned if there are no Rails instances available.
220
+ * Based on comments from Thomas Enebo, have changed the way we were processing
221
+ requests as part of the gem.
222
+
223
+ == 0.1.1
224
+
225
+ * The name of the gem is being changed from GlassFish to glassfish. The rails
226
+ naming convention for the gems is with all lower case or with names that
227
+ contain underscore.
228
+ * Support for the applications to be deployed at the Root Context ("/") of the
229
+ server. The Webrick and Mongrel servers deploy the application to the root
230
+ context by default.
231
+ * Change the default port the server to be 3000 from 8080. Port 8080 has been
232
+ the default http port of the GlassFish application server, but since we are
233
+ targetting the Ruby on Rails market with this space, it is better to have the
234
+ http port set to 3000. At this stage I have also changed the SSL port from
235
+ the GlassFish default of 8181 to 3131 and the admin default port of 4848 to
236
+ be 3838.
237
+ * Provide command arguments to the script to specify the number of runtime to
238
+ be created. In v0.1.0 of the gem one could specify the number of runtimes if
239
+ it was passed in as a specified as a java system property. With this version
240
+ use could use the command -jruby -S glassfish_rails mephisto -n 2 to create 2
241
+ rails instance.
242
+ * Create instances of rails in parallel. This would speed up the startup of the
243
+ v3 gem
244
+
245
+ == 0.1.0
246
+
247
+ First release of GlassFish gem
@@ -0,0 +1,774 @@
1
+ COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
2
+
3
+
4
+ 1. Definitions.
5
+
6
+ 1.1. "Contributor" means each individual or entity that
7
+ creates or contributes to the creation of Modifications.
8
+
9
+ 1.2. "Contributor Version" means the combination of the
10
+ Original Software, prior Modifications used by a
11
+ Contributor (if any), and the Modifications made by that
12
+ particular Contributor.
13
+
14
+ 1.3. "Covered Software" means (a) the Original Software, or
15
+ (b) Modifications, or (c) the combination of files
16
+ containing Original Software with files containing
17
+ Modifications, in each case including portions thereof.
18
+
19
+ 1.4. "Executable" means the Covered Software in any form
20
+ other than Source Code.
21
+
22
+ 1.5. "Initial Developer" means the individual or entity
23
+ that first makes Original Software available under this
24
+ License.
25
+
26
+ 1.6. "Larger Work" means a work which combines Covered
27
+ Software or portions thereof with code not governed by the
28
+ terms of this License.
29
+
30
+ 1.7. "License" means this document.
31
+
32
+ 1.8. "Licensable" means having the right to grant, to the
33
+ maximum extent possible, whether at the time of the initial
34
+ grant or subsequently acquired, any and all of the rights
35
+ conveyed herein.
36
+
37
+ 1.9. "Modifications" means the Source Code and Executable
38
+ form of any of the following:
39
+
40
+ A. Any file that results from an addition to,
41
+ deletion from or modification of the contents of a
42
+ file containing Original Software or previous
43
+ Modifications;
44
+
45
+ B. Any new file that contains any part of the
46
+ Original Software or previous Modification; or
47
+
48
+ C. Any new file that is contributed or otherwise made
49
+ available under the terms of this License.
50
+
51
+ 1.10. "Original Software" means the Source Code and
52
+ Executable form of computer software code that is
53
+ originally released under this License.
54
+
55
+ 1.11. "Patent Claims" means any patent claim(s), now owned
56
+ or hereafter acquired, including without limitation,
57
+ method, process, and apparatus claims, in any patent
58
+ Licensable by grantor.
59
+
60
+ 1.12. "Source Code" means (a) the common form of computer
61
+ software code in which modifications are made and (b)
62
+ associated documentation included in or with such code.
63
+
64
+ 1.13. "You" (or "Your") means an individual or a legal
65
+ entity exercising rights under, and complying with all of
66
+ the terms of, this License. For legal entities, "You"
67
+ includes any entity which controls, is controlled by, or is
68
+ under common control with You. For purposes of this
69
+ definition, "control" means (a) the power, direct or
70
+ indirect, to cause the direction or management of such
71
+ entity, whether by contract or otherwise, or (b) ownership
72
+ of more than fifty percent (50%) of the outstanding shares
73
+ or beneficial ownership of such entity.
74
+
75
+ 2. License Grants.
76
+
77
+ 2.1. The Initial Developer Grant.
78
+
79
+ Conditioned upon Your compliance with Section 3.1 below and
80
+ subject to third party intellectual property claims, the
81
+ Initial Developer hereby grants You a world-wide,
82
+ royalty-free, non-exclusive license:
83
+
84
+ (a) under intellectual property rights (other than
85
+ patent or trademark) Licensable by Initial Developer,
86
+ to use, reproduce, modify, display, perform,
87
+ sublicense and distribute the Original Software (or
88
+ portions thereof), with or without Modifications,
89
+ and/or as part of a Larger Work; and
90
+
91
+ (b) under Patent Claims infringed by the making,
92
+ using or selling of Original Software, to make, have
93
+ made, use, practice, sell, and offer for sale, and/or
94
+ otherwise dispose of the Original Software (or
95
+ portions thereof).
96
+
97
+ (c) The licenses granted in Sections 2.1(a) and (b)
98
+ are effective on the date Initial Developer first
99
+ distributes or otherwise makes the Original Software
100
+ available to a third party under the terms of this
101
+ License.
102
+
103
+ (d) Notwithstanding Section 2.1(b) above, no patent
104
+ license is granted: (1) for code that You delete from
105
+ the Original Software, or (2) for infringements
106
+ caused by: (i) the modification of the Original
107
+ Software, or (ii) the combination of the Original
108
+ Software with other software or devices.
109
+
110
+ 2.2. Contributor Grant.
111
+
112
+ Conditioned upon Your compliance with Section 3.1 below and
113
+ subject to third party intellectual property claims, each
114
+ Contributor hereby grants You a world-wide, royalty-free,
115
+ non-exclusive license:
116
+
117
+ (a) under intellectual property rights (other than
118
+ patent or trademark) Licensable by Contributor to
119
+ use, reproduce, modify, display, perform, sublicense
120
+ and distribute the Modifications created by such
121
+ Contributor (or portions thereof), either on an
122
+ unmodified basis, with other Modifications, as
123
+ Covered Software and/or as part of a Larger Work; and
124
+
125
+
126
+ (b) under Patent Claims infringed by the making,
127
+ using, or selling of Modifications made by that
128
+ Contributor either alone and/or in combination with
129
+ its Contributor Version (or portions of such
130
+ combination), to make, use, sell, offer for sale,
131
+ have made, and/or otherwise dispose of: (1)
132
+ Modifications made by that Contributor (or portions
133
+ thereof); and (2) the combination of Modifications
134
+ made by that Contributor with its Contributor Version
135
+ (or portions of such combination).
136
+
137
+ (c) The licenses granted in Sections 2.2(a) and
138
+ 2.2(b) are effective on the date Contributor first
139
+ distributes or otherwise makes the Modifications
140
+ available to a third party.
141
+
142
+ (d) Notwithstanding Section 2.2(b) above, no patent
143
+ license is granted: (1) for any code that Contributor
144
+ has deleted from the Contributor Version; (2) for
145
+ infringements caused by: (i) third party
146
+ modifications of Contributor Version, or (ii) the
147
+ combination of Modifications made by that Contributor
148
+ with other software (except as part of the
149
+ Contributor Version) or other devices; or (3) under
150
+ Patent Claims infringed by Covered Software in the
151
+ absence of Modifications made by that Contributor.
152
+
153
+ 3. Distribution Obligations.
154
+
155
+ 3.1. Availability of Source Code.
156
+
157
+ Any Covered Software that You distribute or otherwise make
158
+ available in Executable form must also be made available in
159
+ Source Code form and that Source Code form must be
160
+ distributed only under the terms of this License. You must
161
+ include a copy of this License with every copy of the
162
+ Source Code form of the Covered Software You distribute or
163
+ otherwise make available. You must inform recipients of any
164
+ such Covered Software in Executable form as to how they can
165
+ obtain such Covered Software in Source Code form in a
166
+ reasonable manner on or through a medium customarily used
167
+ for software exchange.
168
+
169
+ 3.2. Modifications.
170
+
171
+ The Modifications that You create or to which You
172
+ contribute are governed by the terms of this License. You
173
+ represent that You believe Your Modifications are Your
174
+ original creation(s) and/or You have sufficient rights to
175
+ grant the rights conveyed by this License.
176
+
177
+ 3.3. Required Notices.
178
+
179
+ You must include a notice in each of Your Modifications
180
+ that identifies You as the Contributor of the Modification.
181
+ You may not remove or alter any copyright, patent or
182
+ trademark notices contained within the Covered Software, or
183
+ any notices of licensing or any descriptive text giving
184
+ attribution to any Contributor or the Initial Developer.
185
+
186
+ 3.4. Application of Additional Terms.
187
+
188
+ You may not offer or impose any terms on any Covered
189
+ Software in Source Code form that alters or restricts the
190
+ applicable version of this License or the recipients�
191
+ rights hereunder. You may choose to offer, and to charge a
192
+ fee for, warranty, support, indemnity or liability
193
+ obligations to one or more recipients of Covered Software.
194
+ However, you may do so only on Your own behalf, and not on
195
+ behalf of the Initial Developer or any Contributor. You
196
+ must make it absolutely clear that any such warranty,
197
+ support, indemnity or liability obligation is offered by
198
+ You alone, and You hereby agree to indemnify the Initial
199
+ Developer and every Contributor for any liability incurred
200
+ by the Initial Developer or such Contributor as a result of
201
+ warranty, support, indemnity or liability terms You offer.
202
+
203
+
204
+ 3.5. Distribution of Executable Versions.
205
+
206
+ You may distribute the Executable form of the Covered
207
+ Software under the terms of this License or under the terms
208
+ of a license of Your choice, which may contain terms
209
+ different from this License, provided that You are in
210
+ compliance with the terms of this License and that the
211
+ license for the Executable form does not attempt to limit
212
+ or alter the recipient�s rights in the Source Code form
213
+ from the rights set forth in this License. If You
214
+ distribute the Covered Software in Executable form under a
215
+ different license, You must make it absolutely clear that
216
+ any terms which differ from this License are offered by You
217
+ alone, not by the Initial Developer or Contributor. You
218
+ hereby agree to indemnify the Initial Developer and every
219
+ Contributor for any liability incurred by the Initial
220
+ Developer or such Contributor as a result of any such terms
221
+ You offer.
222
+
223
+ 3.6. Larger Works.
224
+
225
+ You may create a Larger Work by combining Covered Software
226
+ with other code not governed by the terms of this License
227
+ and distribute the Larger Work as a single product. In such
228
+ a case, You must make sure the requirements of this License
229
+ are fulfilled for the Covered Software.
230
+
231
+ 4. Versions of the License.
232
+
233
+ 4.1. New Versions.
234
+
235
+ Sun Microsystems, Inc. is the initial license steward and
236
+ may publish revised and/or new versions of this License
237
+ from time to time. Each version will be given a
238
+ distinguishing version number. Except as provided in
239
+ Section 4.3, no one other than the license steward has the
240
+ right to modify this License.
241
+
242
+ 4.2. Effect of New Versions.
243
+
244
+ You may always continue to use, distribute or otherwise
245
+ make the Covered Software available under the terms of the
246
+ version of the License under which You originally received
247
+ the Covered Software. If the Initial Developer includes a
248
+ notice in the Original Software prohibiting it from being
249
+ distributed or otherwise made available under any
250
+ subsequent version of the License, You must distribute and
251
+ make the Covered Software available under the terms of the
252
+ version of the License under which You originally received
253
+ the Covered Software. Otherwise, You may also choose to
254
+ use, distribute or otherwise make the Covered Software
255
+ available under the terms of any subsequent version of the
256
+ License published by the license steward.
257
+
258
+ 4.3. Modified Versions.
259
+
260
+ When You are an Initial Developer and You want to create a
261
+ new license for Your Original Software, You may create and
262
+ use a modified version of this License if You: (a) rename
263
+ the license and remove any references to the name of the
264
+ license steward (except to note that the license differs
265
+ from this License); and (b) otherwise make it clear that
266
+ the license contains terms which differ from this License.
267
+
268
+
269
+ 5. DISCLAIMER OF WARRANTY.
270
+
271
+ COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
272
+ BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
273
+ INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
274
+ SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
275
+ PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND
276
+ PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY
277
+ COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
278
+ INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF
279
+ ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF
280
+ WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
281
+ ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
282
+ DISCLAIMER.
283
+
284
+ 6. TERMINATION.
285
+
286
+ 6.1. This License and the rights granted hereunder will
287
+ terminate automatically if You fail to comply with terms
288
+ herein and fail to cure such breach within 30 days of
289
+ becoming aware of the breach. Provisions which, by their
290
+ nature, must remain in effect beyond the termination of
291
+ this License shall survive.
292
+
293
+ 6.2. If You assert a patent infringement claim (excluding
294
+ declaratory judgment actions) against Initial Developer or
295
+ a Contributor (the Initial Developer or Contributor against
296
+ whom You assert such claim is referred to as "Participant")
297
+ alleging that the Participant Software (meaning the
298
+ Contributor Version where the Participant is a Contributor
299
+ or the Original Software where the Participant is the
300
+ Initial Developer) directly or indirectly infringes any
301
+ patent, then any and all rights granted directly or
302
+ indirectly to You by such Participant, the Initial
303
+ Developer (if the Initial Developer is not the Participant)
304
+ and all Contributors under Sections 2.1 and/or 2.2 of this
305
+ License shall, upon 60 days notice from Participant
306
+ terminate prospectively and automatically at the expiration
307
+ of such 60 day notice period, unless if within such 60 day
308
+ period You withdraw Your claim with respect to the
309
+ Participant Software against such Participant either
310
+ unilaterally or pursuant to a written agreement with
311
+ Participant.
312
+
313
+ 6.3. In the event of termination under Sections 6.1 or 6.2
314
+ above, all end user licenses that have been validly granted
315
+ by You or any distributor hereunder prior to termination
316
+ (excluding licenses granted to You by any distributor)
317
+ shall survive termination.
318
+
319
+ 7. LIMITATION OF LIABILITY.
320
+
321
+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
322
+ (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
323
+ INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
324
+ COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
325
+ LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
326
+ CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
327
+ LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
328
+ STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
329
+ COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
330
+ INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
331
+ LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
332
+ INJURY RESULTING FROM SUCH PARTY�S NEGLIGENCE TO THE EXTENT
333
+ APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO
334
+ NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
335
+ CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
336
+ APPLY TO YOU.
337
+
338
+ 8. U.S. GOVERNMENT END USERS.
339
+
340
+ The Covered Software is a "commercial item," as that term is
341
+ defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
342
+ computer software" (as that term is defined at 48 C.F.R. �
343
+ 252.227-7014(a)(1)) and "commercial computer software
344
+ documentation" as such terms are used in 48 C.F.R. 12.212 (Sept.
345
+ 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
346
+ through 227.7202-4 (June 1995), all U.S. Government End Users
347
+ acquire Covered Software with only those rights set forth herein.
348
+ This U.S. Government Rights clause is in lieu of, and supersedes,
349
+ any other FAR, DFAR, or other clause or provision that addresses
350
+ Government rights in computer software under this License.
351
+
352
+ 9. MISCELLANEOUS.
353
+
354
+ This License represents the complete agreement concerning subject
355
+ matter hereof. If any provision of this License is held to be
356
+ unenforceable, such provision shall be reformed only to the
357
+ extent necessary to make it enforceable. This License shall be
358
+ governed by the law of the jurisdiction specified in a notice
359
+ contained within the Original Software (except to the extent
360
+ applicable law, if any, provides otherwise), excluding such
361
+ jurisdiction�s conflict-of-law provisions. Any litigation
362
+ relating to this License shall be subject to the jurisdiction of
363
+ the courts located in the jurisdiction and venue specified in a
364
+ notice contained within the Original Software, with the losing
365
+ party responsible for costs, including, without limitation, court
366
+ costs and reasonable attorneys� fees and expenses. The
367
+ application of the United Nations Convention on Contracts for the
368
+ International Sale of Goods is expressly excluded. Any law or
369
+ regulation which provides that the language of a contract shall
370
+ be construed against the drafter shall not apply to this License.
371
+ You agree that You alone are responsible for compliance with the
372
+ United States export administration regulations (and the export
373
+ control laws and regulation of any other countries) when You use,
374
+ distribute or otherwise make available any Covered Software.
375
+
376
+ 10. RESPONSIBILITY FOR CLAIMS.
377
+
378
+ As between Initial Developer and the Contributors, each party is
379
+ responsible for claims and damages arising, directly or
380
+ indirectly, out of its utilization of rights under this License
381
+ and You agree to work with Initial Developer and Contributors to
382
+ distribute such responsibility on an equitable basis. Nothing
383
+ herein is intended or shall be deemed to constitute any admission
384
+ of liability.
385
+
386
+ NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND
387
+ DISTRIBUTION LICENSE (CDDL)
388
+
389
+ The code released under the CDDL shall be governed by the laws of
390
+ the State of California (excluding conflict-of-law provisions).
391
+ Any litigation relating to this License shall be subject to the
392
+ jurisdiction of the Federal Courts of the Northern District of
393
+ California and the state courts of the State of California, with
394
+ venue lying in Santa Clara County, California.
395
+
396
+
397
+
398
+
399
+
400
+
401
+
402
+ GNU GENERAL PUBLIC LICENSE
403
+ Version 2, June 1991
404
+
405
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
406
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
407
+ Everyone is permitted to copy and distribute verbatim copies
408
+ of this license document, but changing it is not allowed.
409
+
410
+ Preamble
411
+
412
+ The licenses for most software are designed to take away your
413
+ freedom to share and change it. By contrast, the GNU General Public
414
+ License is intended to guarantee your freedom to share and change free
415
+ software--to make sure the software is free for all its users. This
416
+ General Public License applies to most of the Free Software
417
+ Foundation's software and to any other program whose authors commit to
418
+ using it. (Some other Free Software Foundation software is covered by
419
+ the GNU Library General Public License instead.) You can apply it to
420
+ your programs, too.
421
+
422
+ When we speak of free software, we are referring to freedom, not
423
+ price. Our General Public Licenses are designed to make sure that you
424
+ have the freedom to distribute copies of free software (and charge for
425
+ this service if you wish), that you receive source code or can get it
426
+ if you want it, that you can change the software or use pieces of it
427
+ in new free programs; and that you know you can do these things.
428
+
429
+ To protect your rights, we need to make restrictions that forbid
430
+ anyone to deny you these rights or to ask you to surrender the rights.
431
+ These restrictions translate to certain responsibilities for you if you
432
+ distribute copies of the software, or if you modify it.
433
+
434
+ For example, if you distribute copies of such a program, whether
435
+ gratis or for a fee, you must give the recipients all the rights that
436
+ you have. You must make sure that they, too, receive or can get the
437
+ source code. And you must show them these terms so they know their
438
+ rights.
439
+
440
+ We protect your rights with two steps: (1) copyright the software, and
441
+ (2) offer you this license which gives you legal permission to copy,
442
+ distribute and/or modify the software.
443
+
444
+ Also, for each author's protection and ours, we want to make certain
445
+ that everyone understands that there is no warranty for this free
446
+ software. If the software is modified by someone else and passed on, we
447
+ want its recipients to know that what they have is not the original, so
448
+ that any problems introduced by others will not reflect on the original
449
+ authors' reputations.
450
+
451
+ Finally, any free program is threatened constantly by software
452
+ patents. We wish to avoid the danger that redistributors of a free
453
+ program will individually obtain patent licenses, in effect making the
454
+ program proprietary. To prevent this, we have made it clear that any
455
+ patent must be licensed for everyone's free use or not licensed at all.
456
+
457
+ The precise terms and conditions for copying, distribution and
458
+ modification follow.
459
+
460
+ GNU GENERAL PUBLIC LICENSE
461
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
462
+
463
+ 0. This License applies to any program or other work which contains
464
+ a notice placed by the copyright holder saying it may be distributed
465
+ under the terms of this General Public License. The "Program", below,
466
+ refers to any such program or work, and a "work based on the Program"
467
+ means either the Program or any derivative work under copyright law:
468
+ that is to say, a work containing the Program or a portion of it,
469
+ either verbatim or with modifications and/or translated into another
470
+ language. (Hereinafter, translation is included without limitation in
471
+ the term "modification".) Each licensee is addressed as "you".
472
+
473
+ Activities other than copying, distribution and modification are not
474
+ covered by this License; they are outside its scope. The act of
475
+ running the Program is not restricted, and the output from the Program
476
+ is covered only if its contents constitute a work based on the
477
+ Program (independent of having been made by running the Program).
478
+ Whether that is true depends on what the Program does.
479
+
480
+ 1. You may copy and distribute verbatim copies of the Program's
481
+ source code as you receive it, in any medium, provided that you
482
+ conspicuously and appropriately publish on each copy an appropriate
483
+ copyright notice and disclaimer of warranty; keep intact all the
484
+ notices that refer to this License and to the absence of any warranty;
485
+ and give any other recipients of the Program a copy of this License
486
+ along with the Program.
487
+
488
+ You may charge a fee for the physical act of transferring a copy, and
489
+ you may at your option offer warranty protection in exchange for a fee.
490
+
491
+ 2. You may modify your copy or copies of the Program or any portion
492
+ of it, thus forming a work based on the Program, and copy and
493
+ distribute such modifications or work under the terms of Section 1
494
+ above, provided that you also meet all of these conditions:
495
+
496
+ a) You must cause the modified files to carry prominent notices
497
+ stating that you changed the files and the date of any change.
498
+
499
+ b) You must cause any work that you distribute or publish, that in
500
+ whole or in part contains or is derived from the Program or any
501
+ part thereof, to be licensed as a whole at no charge to all third
502
+ parties under the terms of this License.
503
+
504
+ c) If the modified program normally reads commands interactively
505
+ when run, you must cause it, when started running for such
506
+ interactive use in the most ordinary way, to print or display an
507
+ announcement including an appropriate copyright notice and a
508
+ notice that there is no warranty (or else, saying that you provide
509
+ a warranty) and that users may redistribute the program under
510
+ these conditions, and telling the user how to view a copy of this
511
+ License. (Exception: if the Program itself is interactive but
512
+ does not normally print such an announcement, your work based on
513
+ the Program is not required to print an announcement.)
514
+
515
+ These requirements apply to the modified work as a whole. If
516
+ identifiable sections of that work are not derived from the Program,
517
+ and can be reasonably considered independent and separate works in
518
+ themselves, then this License, and its terms, do not apply to those
519
+ sections when you distribute them as separate works. But when you
520
+ distribute the same sections as part of a whole which is a work based
521
+ on the Program, the distribution of the whole must be on the terms of
522
+ this License, whose permissions for other licensees extend to the
523
+ entire whole, and thus to each and every part regardless of who wrote it.
524
+
525
+ Thus, it is not the intent of this section to claim rights or contest
526
+ your rights to work written entirely by you; rather, the intent is to
527
+ exercise the right to control the distribution of derivative or
528
+ collective works based on the Program.
529
+
530
+ In addition, mere aggregation of another work not based on the Program
531
+ with the Program (or with a work based on the Program) on a volume of
532
+ a storage or distribution medium does not bring the other work under
533
+ the scope of this License.
534
+
535
+ 3. You may copy and distribute the Program (or a work based on it,
536
+ under Section 2) in object code or executable form under the terms of
537
+ Sections 1 and 2 above provided that you also do one of the following:
538
+
539
+ a) Accompany it with the complete corresponding machine-readable
540
+ source code, which must be distributed under the terms of Sections
541
+ 1 and 2 above on a medium customarily used for software
542
+ interchange; or,
543
+
544
+ b) Accompany it with a written offer, valid for at least three
545
+ years, to give any third party, for a charge no more than your
546
+ cost of physically performing source distribution, a complete
547
+ machine-readable copy of the corresponding source code, to be
548
+ distributed under the terms of Sections 1 and 2 above on a medium
549
+ customarily used for software interchange; or,
550
+
551
+ c) Accompany it with the information you received as to the offer
552
+ to distribute corresponding source code. (This alternative is
553
+ allowed only for noncommercial distribution and only if you
554
+ received the program in object code or executable form with such
555
+ an offer, in accord with Subsection b above.)
556
+
557
+ The source code for a work means the preferred form of the work for
558
+ making modifications to it. For an executable work, complete source
559
+ code means all the source code for all modules it contains, plus any
560
+ associated interface definition files, plus the scripts used to
561
+ control compilation and installation of the executable. However, as a
562
+ special exception, the source code distributed need not include
563
+ anything that is normally distributed (in either source or binary
564
+ form) with the major components (compiler, kernel, and so on) of the
565
+ operating system on which the executable runs, unless that component
566
+ itself accompanies the executable.
567
+
568
+ If distribution of executable or object code is made by offering
569
+ access to copy from a designated place, then offering equivalent
570
+ access to copy the source code from the same place counts as
571
+ distribution of the source code, even though third parties are not
572
+ compelled to copy the source along with the object code.
573
+
574
+ 4. You may not copy, modify, sublicense, or distribute the Program
575
+ except as expressly provided under this License. Any attempt
576
+ otherwise to copy, modify, sublicense or distribute the Program is
577
+ void, and will automatically terminate your rights under this License.
578
+ However, parties who have received copies, or rights, from you under
579
+ this License will not have their licenses terminated so long as such
580
+ parties remain in full compliance.
581
+
582
+ 5. You are not required to accept this License, since you have not
583
+ signed it. However, nothing else grants you permission to modify or
584
+ distribute the Program or its derivative works. These actions are
585
+ prohibited by law if you do not accept this License. Therefore, by
586
+ modifying or distributing the Program (or any work based on the
587
+ Program), you indicate your acceptance of this License to do so, and
588
+ all its terms and conditions for copying, distributing or modifying
589
+ the Program or works based on it.
590
+
591
+ 6. Each time you redistribute the Program (or any work based on the
592
+ Program), the recipient automatically receives a license from the
593
+ original licensor to copy, distribute or modify the Program subject to
594
+ these terms and conditions. You may not impose any further
595
+ restrictions on the recipients' exercise of the rights granted herein.
596
+ You are not responsible for enforcing compliance by third parties to
597
+ this License.
598
+
599
+ 7. If, as a consequence of a court judgment or allegation of patent
600
+ infringement or for any other reason (not limited to patent issues),
601
+ conditions are imposed on you (whether by court order, agreement or
602
+ otherwise) that contradict the conditions of this License, they do not
603
+ excuse you from the conditions of this License. If you cannot
604
+ distribute so as to satisfy simultaneously your obligations under this
605
+ License and any other pertinent obligations, then as a consequence you
606
+ may not distribute the Program at all. For example, if a patent
607
+ license would not permit royalty-free redistribution of the Program by
608
+ all those who receive copies directly or indirectly through you, then
609
+ the only way you could satisfy both it and this License would be to
610
+ refrain entirely from distribution of the Program.
611
+
612
+ If any portion of this section is held invalid or unenforceable under
613
+ any particular circumstance, the balance of the section is intended to
614
+ apply and the section as a whole is intended to apply in other
615
+ circumstances.
616
+
617
+ It is not the purpose of this section to induce you to infringe any
618
+ patents or other property right claims or to contest validity of any
619
+ such claims; this section has the sole purpose of protecting the
620
+ integrity of the free software distribution system, which is
621
+ implemented by public license practices. Many people have made
622
+ generous contributions to the wide range of software distributed
623
+ through that system in reliance on consistent application of that
624
+ system; it is up to the author/donor to decide if he or she is willing
625
+ to distribute software through any other system and a licensee cannot
626
+ impose that choice.
627
+
628
+ This section is intended to make thoroughly clear what is believed to
629
+ be a consequence of the rest of this License.
630
+
631
+ 8. If the distribution and/or use of the Program is restricted in
632
+ certain countries either by patents or by copyrighted interfaces, the
633
+ original copyright holder who places the Program under this License
634
+ may add an explicit geographical distribution limitation excluding
635
+ those countries, so that distribution is permitted only in or among
636
+ countries not thus excluded. In such case, this License incorporates
637
+ the limitation as if written in the body of this License.
638
+
639
+ 9. The Free Software Foundation may publish revised and/or new versions
640
+ of the General Public License from time to time. Such new versions will
641
+ be similar in spirit to the present version, but may differ in detail to
642
+ address new problems or concerns.
643
+
644
+ Each version is given a distinguishing version number. If the Program
645
+ specifies a version number of this License which applies to it and
646
+ "any later version", you have the option of following the terms and
647
+ conditions either of that version or of any later version published by
648
+ the Free Software Foundation. If the Program does not specify a
649
+ version number of this License, you may choose any version ever
650
+ published by the Free Software Foundation.
651
+
652
+ 10. If you wish to incorporate parts of the Program into other free
653
+ programs whose distribution conditions are different, write to the author
654
+ to ask for permission. For software which is copyrighted by the Free
655
+ Software Foundation, write to the Free Software Foundation; we sometimes
656
+ make exceptions for this. Our decision will be guided by the two goals
657
+ of preserving the free status of all derivatives of our free software and
658
+ of promoting the sharing and reuse of software generally.
659
+
660
+ NO WARRANTY
661
+
662
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
663
+ WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
664
+ EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
665
+ OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY
666
+ KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
667
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
668
+ PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
669
+ PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME
670
+ THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
671
+
672
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
673
+ WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
674
+ AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
675
+ FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
676
+ CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
677
+ PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
678
+ RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
679
+ FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF
680
+ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
681
+ DAMAGES.
682
+
683
+ END OF TERMS AND CONDITIONS
684
+
685
+ How to Apply These Terms to Your New Programs
686
+
687
+ If you develop a new program, and you want it to be of the greatest
688
+ possible use to the public, the best way to achieve this is to make it
689
+ free software which everyone can redistribute and change under these
690
+ terms.
691
+
692
+ To do so, attach the following notices to the program. It is safest
693
+ to attach them to the start of each source file to most effectively
694
+ convey the exclusion of warranty; and each file should have at least
695
+ the "copyright" line and a pointer to where the full notice is found.
696
+
697
+ <one line to give the program's name and a brief idea of what it does.>
698
+ Copyright (C) <year> <name of author>
699
+
700
+ This program is free software; you can redistribute it and/or modify
701
+ it under the terms of the GNU General Public License as published by
702
+ the Free Software Foundation; either version 2 of the License, or
703
+ (at your option) any later version.
704
+
705
+ This program is distributed in the hope that it will be useful,
706
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
707
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
708
+ GNU General Public License for more details.
709
+
710
+ You should have received a copy of the GNU General Public License
711
+ along with this program; if not, write to the Free Software
712
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
713
+
714
+
715
+ Also add information on how to contact you by electronic and paper mail.
716
+
717
+ If the program is interactive, make it output a short notice like this
718
+ when it starts in an interactive mode:
719
+
720
+ Gnomovision version 69, Copyright (C) year name of author
721
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
722
+ This is free software, and you are welcome to redistribute it
723
+ under certain conditions; type `show c' for details.
724
+
725
+ The hypothetical commands `show w' and `show c' should show the appropriate
726
+ parts of the General Public License. Of course, the commands you use may
727
+ be called something other than `show w' and `show c'; they could even be
728
+ mouse-clicks or menu items--whatever suits your program.
729
+
730
+ You should also get your employer (if you work as a programmer) or your
731
+ school, if any, to sign a "copyright disclaimer" for the program, if
732
+ necessary. Here is a sample; alter the names:
733
+
734
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
735
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
736
+
737
+ <signature of Ty Coon>, 1 April 1989
738
+ Ty Coon, President of Vice
739
+
740
+ This General Public License does not permit incorporating your program into
741
+ proprietary programs. If your program is a subroutine library, you may
742
+ consider it more useful to permit linking proprietary applications with the
743
+ library. If this is what you want to do, use the GNU Library General
744
+ Public License instead of this License.
745
+
746
+
747
+
748
+ "CLASSPATH" EXCEPTION TO THE GPL VERSION 2
749
+
750
+ Certain source files distributed by Sun Microsystems, Inc. are subject
751
+ to the following clarification and special exception to the GPL Version
752
+ 2, but only where Sun has expressly included in the particular source
753
+ file's header the words
754
+
755
+ "Sun designates this particular file as subject to the "Classpath"
756
+ exception as provided by Sun in the License file that accompanied this
757
+ code."
758
+
759
+ Linking this library statically or dynamically with other modules is
760
+ making a combined work based on this library. Thus, the terms and
761
+ conditions of the GNU General Public License Version 2 cover the whole
762
+ combination.
763
+
764
+ As a special exception, the copyright holders of this library give you
765
+ permission to link this library with independent modules to produce an
766
+ executable, regardless of the license terms of these independent modules,
767
+ and to copy and distribute the resulting executable under terms of your
768
+ choice, provided that you also meet, for each linked independent module,
769
+ the terms and conditions of the license of that module.? An independent
770
+ module is a module which is not derived from or based on this library.?
771
+ If you modify this library, you may extend this exception to your
772
+ version of the library, but you are not obligated to do so.? If you do
773
+ not wish to do so, delete this exception statement from your version.
774
+