com.sun.grizzly.jruby.rack.SinatraApplicationFactory Maven / Gradle / Ivy
package com.sun.grizzly.jruby.rack;
import org.jruby.Ruby;
import org.jruby.javasupport.JavaEmbedUtils;
import org.jruby.runtime.builtin.IRubyObject;
import java.util.logging.Logger;
/**
* @author Jacob Kesser
*/
public class SinatraApplicationFactory extends DefaultRackApplicationFactory {
public SinatraApplicationFactory(Logger logger, String root) {
super(logger, root);
}
public IRubyObject createApplicationObject(Ruby runtime) {
runtime.defineReadonlyVariable("$glassfish_appRoot", JavaEmbedUtils.javaToRuby(runtime,appRoot));
runtime.evalScriptlet("require 'jruby/rack/sinatra'");
return runtime.evalScriptlet(
"Rack::Handler::Grizzly.new(Sinatra::Application.new)");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy