jubilee 2.1.0.beta-java → 2.1.0.rc1-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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +13 -1
  3. data/README.md +65 -54
  4. data/Rakefile +23 -21
  5. data/examples/chatapp/Gemfile +1 -2
  6. data/examples/chatapp/Gemfile.lock +2 -2
  7. data/examples/chatapp/README.md +14 -2
  8. data/examples/chatapp/app.rb +1 -0
  9. data/examples/chatapp/config.json +4 -0
  10. data/examples/chatapp/config.ru +0 -2
  11. data/jars/annotations-1.3.2.jar +0 -0
  12. data/jars/lang-jruby-2.1.0-final.jar +0 -0
  13. data/jars/log4j-1.2.16.jar +0 -0
  14. data/jars/slf4j-api-1.6.2.jar +0 -0
  15. data/jars/vertx-core-2.1.2.jar +0 -0
  16. data/jars/{vertx-hazelcast-2.1.1.jar → vertx-hazelcast-2.1.2.jar} +0 -0
  17. data/jars/{vertx-platform-2.1.1.jar → vertx-platform-2.1.2.jar} +0 -0
  18. data/lib/container.rb +117 -0
  19. data/lib/{vertx → core}/buffer.rb +1 -1
  20. data/lib/core/datagram.rb +280 -0
  21. data/lib/core/dns.rb +143 -0
  22. data/lib/{vertx → core}/event_bus.rb +79 -8
  23. data/lib/core/file_system.rb +479 -0
  24. data/lib/{vertx → core}/http.rb +635 -5
  25. data/lib/core/net.rb +251 -0
  26. data/lib/core/network_support.rb +77 -0
  27. data/lib/core/parsetools.rb +105 -0
  28. data/lib/{vertx → core}/shared_data.rb +2 -2
  29. data/lib/core/sock_js.rb +116 -0
  30. data/lib/{vertx → core}/ssl_support.rb +21 -1
  31. data/lib/{vertx → core}/streams.rb +32 -21
  32. data/lib/{vertx → core}/tcp_support.rb +22 -36
  33. data/lib/core/timers.rb +73 -0
  34. data/lib/core/vertx_require.rb +25 -0
  35. data/lib/{vertx → core}/wrapped_handler.rb +0 -0
  36. data/lib/jubilee.rb +5 -8
  37. data/lib/jubilee/cli.rb +1 -1
  38. data/lib/jubilee/jubilee.jar +0 -0
  39. data/lib/jubilee/jubilee_require.rb +24 -0
  40. data/lib/jubilee/version.rb +1 -1
  41. data/lib/test_utils.rb +66 -0
  42. data/lib/vertx.rb +13 -10
  43. data/lib/vertx_tests.rb +8 -0
  44. data/pom.xml +351 -0
  45. data/src/main/assembly/mod.xml +21 -0
  46. data/{java/src → src/main/java}/jubilee/JubileeService.java +0 -0
  47. data/{java/src → src/main/java}/org/jruby/jubilee/Const.java +0 -0
  48. data/{java/src → src/main/java}/org/jruby/jubilee/JubileeVerticle.java +12 -2
  49. data/src/main/java/org/jruby/jubilee/JubileeVerticleFactory.java +258 -0
  50. data/{java/src → src/main/java}/org/jruby/jubilee/RackApplication.java +3 -1
  51. data/{java/src → src/main/java}/org/jruby/jubilee/RackEnvironment.java +2 -2
  52. data/{java/src → src/main/java}/org/jruby/jubilee/RackEnvironmentHash.java +0 -0
  53. data/{java/src → src/main/java}/org/jruby/jubilee/RackInput.java +0 -0
  54. data/{java/src → src/main/java}/org/jruby/jubilee/RackResponse.java +0 -0
  55. data/{java/src → src/main/java}/org/jruby/jubilee/RubyCallable.java +0 -0
  56. data/{java/src → src/main/java}/org/jruby/jubilee/RubyHttpServerResponse.java +0 -0
  57. data/{java/src → src/main/java}/org/jruby/jubilee/RubyNetSocket.java +0 -0
  58. data/{java/src → src/main/java}/org/jruby/jubilee/RubyPlatformManager.java +0 -0
  59. data/{java/src → src/main/java}/org/jruby/jubilee/impl/RubyIORackInput.java +0 -0
  60. data/{java/src → src/main/java}/org/jruby/jubilee/impl/RubyNullIO.java +0 -0
  61. data/{java/src → src/main/java}/org/jruby/jubilee/utils/RubyHelper.java +0 -0
  62. data/{java/src → src/main/java}/org/jruby/jubilee/vertx/JubileeVertx.java +0 -0
  63. data/{java → src/main}/resources/META-INF/services/org.vertx.java.core.spi.cluster.ClusterManagerFactory +0 -0
  64. data/src/main/resources/META-INF/services/org.vertx.java.deploy.impl.jruby.JubileeVerticleFactory +1 -0
  65. data/{java → src/main}/resources/default-cluster.xml +0 -0
  66. data/src/main/resources/mod.json +11 -0
  67. data/test/jubilee/test_upload.rb +3 -1
  68. data/vertx_classpath.txt +12 -0
  69. metadata +69 -47
  70. data/Guardfile +0 -24
  71. data/jars/vertx-core-2.1.1.jar +0 -0
  72. data/java/src/org/jruby/jubilee/RubyChannel.java +0 -89
  73. data/lib/vertx/README.md +0 -7
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
5
+
6
+ <formats>
7
+ <format>zip</format>
8
+ </formats>
9
+
10
+ <includeBaseDirectory>false</includeBaseDirectory>
11
+
12
+ <fileSets>
13
+ <fileSet>
14
+ <outputDirectory></outputDirectory>
15
+ <directory>${mods.directory}/${module.name}</directory>
16
+ <includes>
17
+ <include>**</include>
18
+ </includes>
19
+ </fileSet>
20
+ </fileSets>
21
+ </assembly>
@@ -3,7 +3,6 @@ package org.jruby.jubilee;
3
3
  import org.jruby.Ruby;
4
4
  import org.jruby.RubyArray;
5
5
  import org.jruby.RubyInstanceConfig;
6
- import org.jruby.RubyString;
7
6
  import org.jruby.runtime.builtin.IRubyObject;
8
7
  import org.vertx.java.core.Handler;
9
8
  import org.vertx.java.core.http.HttpServer;
@@ -11,6 +10,7 @@ import org.vertx.java.core.http.HttpServerRequest;
11
10
  import org.vertx.java.core.json.JsonArray;
12
11
  import org.vertx.java.core.json.JsonObject;
13
12
  import org.vertx.java.platform.Verticle;
13
+ import org.vertx.java.platform.impl.JRubyVerticleFactory;
14
14
  import org.vertx.java.platform.impl.WrappedVertx;
15
15
 
16
16
  import java.io.IOException;
@@ -22,9 +22,18 @@ import java.util.List;
22
22
  * Created by isaiah on 23/01/2014.
23
23
  */
24
24
  public class JubileeVerticle extends Verticle {
25
+ private String rackup;
26
+
27
+ public JubileeVerticle(){}
28
+
29
+ public JubileeVerticle(String rackup) {
30
+ this.rackup = rackup;
31
+ }
25
32
 
26
33
  @Override
27
34
  public void start() {
35
+ JRubyVerticleFactory.vertx = vertx;
36
+ JRubyVerticleFactory.container = container;
28
37
  JsonObject config = container.config();
29
38
  HttpServer httpServer = vertx.createHttpServer();
30
39
  String root = config.getString("root", ".");
@@ -93,7 +102,8 @@ public class JubileeVerticle extends Verticle {
93
102
  }
94
103
 
95
104
  private IRubyObject initRackApplication(JsonObject config) {
96
- String rackup = config.getString("rackup");
105
+ if (this.rackup == null)
106
+ this.rackup = config.getString("rackup");
97
107
  String rackScript = "require 'rack'\n" +
98
108
  "require 'jubilee'\n" +
99
109
  "app, _ = Rack::Builder.parse_file('" + rackup + "')\n";
@@ -0,0 +1,258 @@
1
+ /*
2
+ * Copyright 2011-2012 the original author or authors.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ package org.jruby.jubilee;
18
+
19
+ import org.jruby.*;
20
+ import org.jruby.embed.EvalFailedException;
21
+ import org.jruby.embed.InvokeFailedException;
22
+ import org.jruby.embed.LocalContextScope;
23
+ import org.jruby.embed.ScriptingContainer;
24
+ import org.jruby.exceptions.RaiseException;
25
+ import org.jruby.runtime.builtin.IRubyObject;
26
+ import org.vertx.java.core.Handler;
27
+ import org.vertx.java.core.Vertx;
28
+ import org.vertx.java.core.VertxException;
29
+ import org.vertx.java.core.http.HttpServer;
30
+ import org.vertx.java.core.http.HttpServerRequest;
31
+ import org.vertx.java.core.json.JsonArray;
32
+ import org.vertx.java.core.json.JsonObject;
33
+ import org.vertx.java.core.logging.Logger;
34
+ import org.vertx.java.platform.Container;
35
+ import org.vertx.java.platform.Verticle;
36
+ import org.vertx.java.platform.VerticleFactory;
37
+ import org.vertx.java.platform.impl.WrappedVertx;
38
+ import org.vertx.java.platform.impl.JRubyVerticleFactory;
39
+
40
+ import java.io.*;
41
+ import java.util.List;
42
+ import java.util.concurrent.atomic.AtomicInteger;
43
+
44
+ public class JubileeVerticleFactory implements VerticleFactory {
45
+
46
+ private ClassLoader cl;
47
+ private ScriptingContainer scontainer;
48
+ private static final AtomicInteger seq = new AtomicInteger();
49
+
50
+ public static Vertx vertx;
51
+ public static Container container;
52
+
53
+ public JubileeVerticleFactory() {
54
+ }
55
+
56
+ @Override
57
+ public void init(Vertx vertx, Container container, ClassLoader cl) {
58
+ this.cl = cl;
59
+ // These statics are used by the Rhino scripts to look up references to vertx and the container
60
+ JRubyVerticleFactory.vertx = vertx;
61
+ JubileeVerticleFactory.vertx = vertx;
62
+ JubileeVerticleFactory.container = container;
63
+ ClassLoader old = Thread.currentThread().getContextClassLoader();
64
+ try {
65
+ Thread.currentThread().setContextClassLoader(cl);
66
+ this.scontainer = new ScriptingContainer(LocalContextScope.SINGLETHREAD);
67
+ scontainer.setCompatVersion(CompatVersion.RUBY1_9);
68
+ //Prevent JRuby from logging errors to stderr - we want to log ourselves
69
+ scontainer.setErrorWriter(new NullWriter());
70
+ } finally {
71
+ Thread.currentThread().setContextClassLoader(old);
72
+ }
73
+ }
74
+
75
+ @Override
76
+ public Verticle createVerticle(String rackup) throws Exception {
77
+ return new RackVerticle(rackup);
78
+ }
79
+
80
+ public void reportException(Logger logger, Throwable t) {
81
+ RaiseException je = null;
82
+ if (t instanceof EvalFailedException) {
83
+ EvalFailedException e = (EvalFailedException)t;
84
+ Throwable cause = e.getCause();
85
+ if (cause instanceof RaiseException) {
86
+ je = (RaiseException)cause;
87
+ }
88
+ } else if (t instanceof RaiseException) {
89
+ je = (RaiseException)t;
90
+ }
91
+
92
+ if (je != null) {
93
+
94
+ RubyException re = je.getException();
95
+
96
+ String msg;
97
+ if (re instanceof RubyNameError) {
98
+ RubyNameError rne = (RubyNameError)re;
99
+ msg = "Invalid or undefined name: " + rne.name().toString();
100
+ } else {
101
+ msg = re.message.toString();
102
+ }
103
+
104
+ StringBuilder backtrace = new StringBuilder();
105
+ IRubyObject bt = re.backtrace();
106
+
107
+ if (bt instanceof List) {
108
+ for (Object obj : (List<?>)bt) {
109
+ if (obj instanceof String) {
110
+ String line = (String)obj;
111
+ addToBackTrace(backtrace, line);
112
+ }
113
+ }
114
+ }
115
+ logger.error("Exception in Ruby verticle: " + msg +
116
+ "\n" + backtrace);
117
+ } else {
118
+ logger.error("Unexpected exception in Ruby verticle", t);
119
+ }
120
+ }
121
+
122
+ private void addToBackTrace(StringBuilder backtrace, String line) {
123
+ if (line.contains(".rb")) {
124
+ //We filter out any Java stack trace
125
+ backtrace.append(line).append('\n');
126
+ }
127
+ }
128
+
129
+ // This method synchronizes the callback into the JRuby code to make sure we don't have concurrent requires
130
+ // or loads occurring in the same JRuby container
131
+ public static synchronized void requireCallback(Runnable runnable) {
132
+ runnable.run();
133
+ }
134
+
135
+ // This MUST be static or we will get a leak since JRuby maintains it and a non static will hold a reference
136
+ // to this
137
+ private static class NullWriter extends Writer {
138
+
139
+ public void write(char[] cbuf, int off, int len) throws IOException {
140
+ }
141
+
142
+ public void flush() throws IOException {
143
+ }
144
+
145
+ public void close() throws IOException {
146
+ }
147
+ }
148
+
149
+ public void close() {
150
+ scontainer.clear();
151
+ // JRuby keeps a static reference to a runtime - we must clear this manually to avoid a leak
152
+ Ruby.clearGlobalRuntime();
153
+ }
154
+ public class RackVerticle extends Verticle {
155
+ public RackVerticle(String rackup) {
156
+ this.rackup = rackup;
157
+ this.vertx = JubileeVerticleFactory.vertx;
158
+ this.container = JubileeVerticleFactory.container;
159
+ }
160
+
161
+ public void start() {
162
+ JsonObject config = container.config();
163
+ synchronized (JubileeVerticleFactory.class) {
164
+ try (InputStream is = cl.getResourceAsStream(rackup)) {
165
+ if (is == null) {
166
+ throw new IllegalArgumentException("Cannot find verticle: " + rackup);
167
+ }
168
+ modName = "Mod___VertxInternalVert__" + seq.incrementAndGet();
169
+ StringBuilder svert = new StringBuilder( "require 'jubilee/jubilee_require'\n").append("module ").append(modName).append(";extend self;");
170
+ String rackScript = "require 'rack'\n" +
171
+ "require 'jubilee'\n" +
172
+ "app, _ = Rack::Builder.parse_file('" + rackup + "')\n";
173
+ if (!config.getBoolean("quiet", true) && config.getString("environment").equals("development")) {
174
+ rackScript += "logger = STDOUT\n" +
175
+ "app = Rack::CommonLogger.new(app, logger)\n";
176
+ }
177
+ rackScript += "Jubilee::Application.new(app)\n";
178
+ svert.append(rackScript);
179
+ svert.append("end");
180
+ rackApplication = (IRubyObject)scontainer.runScriptlet(new StringReader(svert.toString()), rackup);
181
+ } catch (Exception e) {
182
+ throw new VertxException(e);
183
+ }
184
+ }
185
+ httpServer = vertx.createHttpServer();
186
+
187
+ final RackApplication app;
188
+ boolean ssl = config.getBoolean("ssl", false);
189
+ try {
190
+ app = new RackApplication((WrappedVertx) vertx, rackApplication.getRuntime().getCurrentContext(), rackApplication, config);
191
+ httpServer.setAcceptBacklog(10000);
192
+ httpServer.requestHandler(new Handler<HttpServerRequest>() {
193
+ public void handle(final HttpServerRequest req) {
194
+ app.call(req);
195
+ }
196
+ });
197
+ if (config.containsField("event_bus")) {
198
+ JsonArray allowAll = new JsonArray();
199
+ allowAll.add(new JsonObject());
200
+
201
+ JsonArray incomingAllowed;
202
+ JsonArray outgoingAllowed;
203
+
204
+ if (config.containsField("event_bus_security")) {
205
+ JsonObject securitySettings = config.getObject("event_bus_security");
206
+ incomingAllowed = securitySettings.getArray("incoming", allowAll);
207
+ outgoingAllowed = securitySettings.getArray("outgoing", allowAll);
208
+ } else {
209
+ incomingAllowed = allowAll;
210
+ outgoingAllowed = allowAll;
211
+ }
212
+ JsonObject ebconf = new JsonObject();
213
+ ebconf.putString("prefix", config.getString("event_bus"));
214
+ vertx.createSockJSServer(httpServer).bridge(ebconf, incomingAllowed, outgoingAllowed);
215
+
216
+ }
217
+ if (ssl) httpServer.setSSL(true).setKeyStorePath(config.getString("keystore_path"))
218
+ .setKeyStorePassword(config.getString("keystore_password"));
219
+ httpServer.listen(config.getInteger("port", 8080), config.getString("host", "localhost"));
220
+ } catch (IOException e) {
221
+ container.logger().fatal("Failed to create RackApplication");
222
+ }
223
+ }
224
+
225
+ @Override
226
+ public void stop() {
227
+ if (this.httpServer != null)
228
+ this.httpServer.close();
229
+ if (rackApplication != null) {
230
+ try {
231
+ // We call the script with receiver = null - this causes the method to be called on the top level
232
+ // script
233
+ scontainer.callMethod(rackApplication, "vertx_stop");
234
+ } catch (InvokeFailedException e) {
235
+ Throwable cause = e.getCause();
236
+ if (cause instanceof RaiseException) {
237
+ // Gosh, this is a bit long winded!
238
+ RaiseException re = (RaiseException) cause;
239
+ String msg = "(NoMethodError) undefined method `vertx_stop'";
240
+ if (re.getMessage().startsWith(msg)) {
241
+ // OK - method is not mandatory
242
+ return;
243
+ }
244
+ }
245
+ throw e;
246
+ } finally {
247
+ // Remove the module const
248
+ scontainer.runScriptlet("Object.send(:remove_const, :" + modName + ")");
249
+ }
250
+ }
251
+ }
252
+
253
+ private String rackup;
254
+ private IRubyObject rackApplication;
255
+ private String modName;
256
+ private HttpServer httpServer;
257
+ }
258
+ }
@@ -41,7 +41,7 @@ public class RackApplication {
41
41
 
42
42
  public RackApplication(WrappedVertx vertx, ThreadContext context, IRubyObject app, JsonObject config) throws IOException {
43
43
  this.app = app;
44
- this.ssl = config.getBoolean("ssl");
44
+ this.ssl = config.getBoolean("ssl", false);
45
45
  this.hideErrorStack = config.getBoolean("hide_error_stack", false);
46
46
  this.vertx = vertx;
47
47
  this.runtime = context.runtime;
@@ -92,10 +92,12 @@ public class RackApplication {
92
92
  try {
93
93
  // This is a different context, do NOT replace runtime.getCurrentContext()
94
94
  IRubyObject result = app.callMethod(runtime.getCurrentContext(), "call", rackEnv.getEnv(request, input, ssl));
95
+ /*
95
96
  if (request.isHijacked()) {
96
97
  // It's the hijacker's response to close the socket.
97
98
  return;
98
99
  }
100
+ */
99
101
  RackResponse response = (RackResponse) JavaEmbedUtils.rubyToJava(runtime, result, RackResponse.class);
100
102
  RubyHttpServerResponse resp = new RubyHttpServerResponse(runtime,
101
103
  httpServerResponseClass, request);
@@ -100,8 +100,8 @@ public class RackEnvironment {
100
100
  env.lazyPut(RACK_KEY.RUN_ONCE, runtime.getFalse(), false);
101
101
 
102
102
  // Hijack handling
103
- env.lazyPut(RACK_KEY.HIJACK_P, runtime.getTrue(), false);
104
- env.lazyPut(RACK_KEY.HIJACK, hijackProc(env, request), false);
103
+ env.lazyPut(RACK_KEY.HIJACK_P, runtime.getFalse(), false);
104
+ // env.lazyPut(RACK_KEY.HIJACK, hijackProc(env, request), false);
105
105
 
106
106
 
107
107
  final int contentLength = getContentLength(headers);
@@ -0,0 +1 @@
1
+ org.vertx.java.deploy.impl.jruby.JubileeVerticleFactory
@@ -0,0 +1,11 @@
1
+ {
2
+ "system": true,
3
+ "resident": true,
4
+ "includes": "io.vertx~lang-jruby~2.1.0-final",
5
+
6
+ "description":"Rack application runner",
7
+ "licenses": ["MIT"],
8
+ "author": "isaiah",
9
+ "keywords": ["rack", "rails"],
10
+ "homepage": "https://github.com/isaiah/jubilee"
11
+ }
@@ -128,7 +128,9 @@ class TestUpload < MiniTest::Unit::TestCase
128
128
  assert_raises(Errno::ECONNRESET, Errno::EPIPE) do
129
129
  16384.times { sock.syswrite(buf) }
130
130
  end
131
- sock.gets
131
+ assert_raises(Errno::ECONNRESET) do
132
+ sock.gets
133
+ end
132
134
  sock.close
133
135
  end
134
136
 
@@ -0,0 +1,12 @@
1
+ # This file contains information on where to find the resources of your module during development
2
+ # This file is used when running your module as you develop - it tells Vert.x where to find
3
+ # the resources of your module
4
+
5
+ # Feel free to edit it if you have a non standard project structure and put the resources of your
6
+ # module elsewhere
7
+
8
+ src/main/resources
9
+ target/classes
10
+ target/dependencies
11
+ lib/
12
+ bin
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jubilee
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0.beta
4
+ version: 2.1.0.rc1
5
5
  platform: java
6
6
  authors:
7
7
  - Isaiah Peng
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-24 00:00:00.000000000 Z
11
+ date: 2014-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rack
15
- version_requirements: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - '>='
18
- - !ruby/object:Gem::Version
19
- version: 1.4.1
20
14
  requirement: !ruby/object:Gem::Requirement
21
15
  requirements:
22
16
  - - '>='
23
17
  - !ruby/object:Gem::Version
24
18
  version: 1.4.1
19
+ name: rack
25
20
  prerelease: false
26
21
  type: :runtime
27
- - !ruby/object:Gem::Dependency
28
- name: spoon
29
22
  version_requirements: !ruby/object:Gem::Requirement
30
23
  requirements:
31
- - - ~>
24
+ - - '>='
32
25
  - !ruby/object:Gem::Version
33
- version: 0.0.4
26
+ version: 1.4.1
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.0.4
33
+ name: spoon
39
34
  prerelease: false
40
35
  type: :runtime
41
- - !ruby/object:Gem::Dependency
42
- name: jeweler
43
36
  version_requirements: !ruby/object:Gem::Requirement
44
37
  requirements:
45
38
  - - ~>
46
39
  - !ruby/object:Gem::Version
47
- version: 1.8.7
40
+ version: 0.0.4
41
+ - !ruby/object:Gem::Dependency
48
42
  requirement: !ruby/object:Gem::Requirement
49
43
  requirements:
50
44
  - - ~>
51
45
  - !ruby/object:Gem::Version
52
46
  version: 1.8.7
47
+ name: jeweler
53
48
  prerelease: false
54
49
  type: :development
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.8.7
55
55
  description: Jubilee is a rack server for JRuby built upon the high performance Vertx platform. It provides the best features of Vertx such as EventBus, SharedData, and clustering.
56
56
  email: issaria@gmail.com
57
57
  executables:
@@ -67,7 +67,6 @@ files:
67
67
  - CHANGELOG
68
68
  - Gemfile
69
69
  - Gemfile.lock
70
- - Guardfile
71
70
  - KNOWN_ISSUES
72
71
  - LICENSE.txt
73
72
  - README.md
@@ -79,6 +78,7 @@ files:
79
78
  - examples/chatapp/Gemfile.lock
80
79
  - examples/chatapp/README.md
81
80
  - examples/chatapp/app.rb
81
+ - examples/chatapp/config.json
82
82
  - examples/chatapp/config.ru
83
83
  - examples/chatapp/public/assets/javascripts/application.js
84
84
  - examples/chatapp/public/assets/javascripts/jquery.js
@@ -89,53 +89,52 @@ files:
89
89
  - examples/client/vertxbus.js
90
90
  - examples/jubilee.conf.rb
91
91
  - examples/keystore.jks
92
+ - jars/annotations-1.3.2.jar
92
93
  - jars/hazelcast-3.2.3.jar
93
94
  - jars/jackson-annotations-2.2.2.jar
94
95
  - jars/jackson-core-2.2.2.jar
95
96
  - jars/jackson-databind-2.2.2.jar
97
+ - jars/lang-jruby-2.1.0-final.jar
98
+ - jars/log4j-1.2.16.jar
96
99
  - jars/netty-all-4.0.20.Final.jar
97
- - jars/vertx-core-2.1.1.jar
98
- - jars/vertx-hazelcast-2.1.1.jar
99
- - jars/vertx-platform-2.1.1.jar
100
- - java/resources/META-INF/services/org.vertx.java.core.spi.cluster.ClusterManagerFactory
101
- - java/resources/default-cluster.xml
102
- - java/src/jubilee/JubileeService.java
103
- - java/src/org/jruby/jubilee/Const.java
104
- - java/src/org/jruby/jubilee/JubileeVerticle.java
105
- - java/src/org/jruby/jubilee/RackApplication.java
106
- - java/src/org/jruby/jubilee/RackEnvironment.java
107
- - java/src/org/jruby/jubilee/RackEnvironmentHash.java
108
- - java/src/org/jruby/jubilee/RackInput.java
109
- - java/src/org/jruby/jubilee/RackResponse.java
110
- - java/src/org/jruby/jubilee/RubyCallable.java
111
- - java/src/org/jruby/jubilee/RubyChannel.java
112
- - java/src/org/jruby/jubilee/RubyHttpServerResponse.java
113
- - java/src/org/jruby/jubilee/RubyNetSocket.java
114
- - java/src/org/jruby/jubilee/RubyPlatformManager.java
115
- - java/src/org/jruby/jubilee/impl/RubyIORackInput.java
116
- - java/src/org/jruby/jubilee/impl/RubyNullIO.java
117
- - java/src/org/jruby/jubilee/utils/RubyHelper.java
118
- - java/src/org/jruby/jubilee/vertx/JubileeVertx.java
100
+ - jars/slf4j-api-1.6.2.jar
101
+ - jars/vertx-core-2.1.2.jar
102
+ - jars/vertx-hazelcast-2.1.2.jar
103
+ - jars/vertx-platform-2.1.2.jar
119
104
  - jubilee.gemspec
105
+ - lib/container.rb
106
+ - lib/core/buffer.rb
107
+ - lib/core/datagram.rb
108
+ - lib/core/dns.rb
109
+ - lib/core/event_bus.rb
110
+ - lib/core/file_system.rb
111
+ - lib/core/http.rb
112
+ - lib/core/net.rb
113
+ - lib/core/network_support.rb
114
+ - lib/core/parsetools.rb
115
+ - lib/core/shared_data.rb
116
+ - lib/core/sock_js.rb
117
+ - lib/core/ssl_support.rb
118
+ - lib/core/streams.rb
119
+ - lib/core/tcp_support.rb
120
+ - lib/core/timers.rb
121
+ - lib/core/vertx_require.rb
122
+ - lib/core/wrapped_handler.rb
120
123
  - lib/jubilee.rb
121
124
  - lib/jubilee/application.rb
122
125
  - lib/jubilee/cli.rb
123
126
  - lib/jubilee/configuration.rb
124
127
  - lib/jubilee/const.rb
128
+ - lib/jubilee/jubilee.jar
129
+ - lib/jubilee/jubilee_require.rb
125
130
  - lib/jubilee/response.rb
126
131
  - lib/jubilee/server.rb
127
132
  - lib/jubilee/version.rb
128
133
  - lib/rack/handler/jubilee.rb
134
+ - lib/test_utils.rb
129
135
  - lib/vertx.rb
130
- - lib/vertx/README.md
131
- - lib/vertx/buffer.rb
132
- - lib/vertx/event_bus.rb
133
- - lib/vertx/http.rb
134
- - lib/vertx/shared_data.rb
135
- - lib/vertx/ssl_support.rb
136
- - lib/vertx/streams.rb
137
- - lib/vertx/tcp_support.rb
138
- - lib/vertx/wrapped_handler.rb
136
+ - lib/vertx_tests.rb
137
+ - pom.xml
139
138
  - spec/apps/rack/basic/config.ru
140
139
  - spec/apps/rails4/basic/.gitignore
141
140
  - spec/apps/rails4/basic/Gemfile
@@ -210,6 +209,28 @@ files:
210
209
  - spec/integration/basic_rails4_spec.rb
211
210
  - spec/integration/basic_sinatra_spec.rb
212
211
  - spec/spec_helper.rb
212
+ - src/main/assembly/mod.xml
213
+ - src/main/java/jubilee/JubileeService.java
214
+ - src/main/java/org/jruby/jubilee/Const.java
215
+ - src/main/java/org/jruby/jubilee/JubileeVerticle.java
216
+ - src/main/java/org/jruby/jubilee/JubileeVerticleFactory.java
217
+ - src/main/java/org/jruby/jubilee/RackApplication.java
218
+ - src/main/java/org/jruby/jubilee/RackEnvironment.java
219
+ - src/main/java/org/jruby/jubilee/RackEnvironmentHash.java
220
+ - src/main/java/org/jruby/jubilee/RackInput.java
221
+ - src/main/java/org/jruby/jubilee/RackResponse.java
222
+ - src/main/java/org/jruby/jubilee/RubyCallable.java
223
+ - src/main/java/org/jruby/jubilee/RubyHttpServerResponse.java
224
+ - src/main/java/org/jruby/jubilee/RubyNetSocket.java
225
+ - src/main/java/org/jruby/jubilee/RubyPlatformManager.java
226
+ - src/main/java/org/jruby/jubilee/impl/RubyIORackInput.java
227
+ - src/main/java/org/jruby/jubilee/impl/RubyNullIO.java
228
+ - src/main/java/org/jruby/jubilee/utils/RubyHelper.java
229
+ - src/main/java/org/jruby/jubilee/vertx/JubileeVertx.java
230
+ - src/main/resources/META-INF/services/org.vertx.java.core.spi.cluster.ClusterManagerFactory
231
+ - src/main/resources/META-INF/services/org.vertx.java.deploy.impl.jruby.JubileeVerticleFactory
232
+ - src/main/resources/default-cluster.xml
233
+ - src/main/resources/mod.json
213
234
  - test/.ruby-version
214
235
  - test/apps/app.rb
215
236
  - test/apps/checker.ru
@@ -238,6 +259,7 @@ files:
238
259
  - test/jubilee/test_server.rb
239
260
  - test/jubilee/test_upload.rb
240
261
  - test/test_helper.rb
262
+ - vertx_classpath.txt
241
263
  homepage: http://isaiah.github.io/jubilee
242
264
  licenses:
243
265
  - MIT