java/src/org/jruby/jubilee/Server.java in jubilee-0.4.0 vs java/src/org/jruby/jubilee/Server.java in jubilee-0.4.1

- old
+ new

@@ -1,14 +1,18 @@ package org.jruby.jubilee; -import org.vertx.java.core.*; -import org.vertx.java.core.http.*; - import org.jruby.*; -import org.jruby.runtime.*; -import org.jruby.runtime.builtin.*; import org.jruby.anno.JRubyMethod; +import org.jruby.runtime.Block; +import org.jruby.runtime.ObjectAllocator; +import org.jruby.runtime.ThreadContext; +import org.jruby.runtime.builtin.IRubyObject; +import org.vertx.java.core.Handler; +import org.vertx.java.core.Vertx; +import org.vertx.java.core.VertxFactory; +import org.vertx.java.core.http.HttpServer; +import org.vertx.java.core.http.HttpServerRequest; import org.vertx.java.core.json.JsonArray; import org.vertx.java.core.json.JsonObject; public class Server extends RubyObject { final private Vertx vertx; @@ -17,10 +21,11 @@ private boolean running; private boolean ssl = false; private String keyStorePath; private String keyStorePassword; private String eventBusPrefix; + private int numberOfWorkers; private int port; private String host; public static void createServerClass(Ruby runtime) { RubyModule mJubilee = runtime.defineModule("Jubilee"); @@ -55,17 +60,20 @@ RubySymbol host_k = runtime.newSymbol("Host"); RubySymbol ssl_k = runtime.newSymbol("ssl"); RubySymbol keystore_path_k = runtime.newSymbol("keystore_path"); RubySymbol keystore_password_k = runtime.newSymbol("keystore_password"); RubySymbol eventbus_prefix_k = runtime.newSymbol("eventbus_prefix"); - this.port = RubyInteger.num2int(options.op_aref(context, port_k)); + RubySymbol number_of_workers_k = runtime.newSymbol("number_of_workers"); + this.port = RubyInteger.fix2int(options.op_aref(context, port_k)); if (options.has_key_p(host_k).isTrue()) { this.host = options.op_aref(context, host_k).toString(); } else { this.host = "0.0.0.0"; } this.ssl = options.op_aref(context, ssl_k).isTrue(); - this.app = new RackApplication(app, this.ssl); + if (options.has_key_p(number_of_workers_k).isTrue()) + this.numberOfWorkers = RubyInteger.fix2int(options.op_aref(context, number_of_workers_k)); + this.app = new RackApplication(app, this.ssl, this.numberOfWorkers); if (options.has_key_p(keystore_path_k).isTrue()) { this.keyStorePath = options.op_aref(context, keystore_path_k).toString(); this.keyStorePassword = options.op_aref(context, keystore_password_k).toString(); } if (options.has_key_p(eventbus_prefix_k).isTrue()) {