org.jruby.RubyInstanceConfig Java Examples
The following examples show how to use
org.jruby.RubyInstanceConfig.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: RubyScript.java From marathonv5 with Apache License 2.0 | 6 votes |
protected Callable<Ruby> getInitRuby(final Writer out, final Writer err) { return new Callable<Ruby>() { @Override public Ruby call() throws Exception { RubyInstanceConfig config = new RubyInstanceConfig(); config.setCompileMode(CompileMode.OFF); List<String> loadPaths = new ArrayList<String>(); setModule(loadPaths); String appRubyPath = System.getProperty(PROP_APPLICATION_RUBYPATH); if (appRubyPath != null) { StringTokenizer tok = new StringTokenizer(appRubyPath, ";"); while (tok.hasMoreTokens()) { loadPaths.add(tok.nextToken().replace('/', File.separatorChar)); } } config.setOutput(new PrintStream(new WriterOutputStream(out))); config.setError(new PrintStream(new WriterOutputStream(err))); Ruby interpreter = JavaEmbedUtils.initialize(loadPaths, config); interpreter.evalScriptlet("require 'selenium/webdriver'"); interpreter.evalScriptlet("require 'marathon/results'"); interpreter.evalScriptlet("require 'marathon/playback-" + framework + "'"); return interpreter; } }; }
Example #2
Source File: RubyConsole.java From ramus with GNU General Public License v3.0 | 5 votes |
public JComponent createComponent() { JPanel panel = new JPanel(); JPanel console = new JPanel(); panel.setLayout(new BorderLayout()); final JEditorPane text = new JTextPane(); text.setMargin(new Insets(8, 8, 8, 8)); text.setCaretColor(new Color(0xa4, 0x00, 0x00)); text.setBackground(new Color(0xf2, 0xf2, 0xf2)); text.setForeground(new Color(0xa4, 0x00, 0x00)); Font font = findFont("Monospaced", Font.PLAIN, 14, new String[]{ "Monaco", "Andale Mono"}); text.setFont(font); JScrollPane pane = new JScrollPane(); pane.setViewportView(text); pane.setBorder(BorderFactory.createLineBorder(Color.darkGray)); panel.add(pane, BorderLayout.CENTER); console.validate(); final TextAreaReadline tar = new TextAreaReadline(text, getString("Wellcom") + " \n\n"); RubyInstanceConfig config = new RubyInstanceConfig() { { //setInput(tar.getInputStream()); //setOutput(new PrintStream(tar.getOutputStream())); //setError(new PrintStream(tar.getOutputStream())); setObjectSpaceEnabled(false); } }; Ruby runtime = Ruby.newInstance(config); tar.hookIntoRuntimeWithStreams(runtime); run(runtime); return panel; }
Example #3
Source File: DocumentController.java From sc-generator with Apache License 2.0 | 5 votes |
@Bean public Asciidoctor asciidoctor() { RubyInstanceConfig rubyInstanceConfig = new RubyInstanceConfig(); rubyInstanceConfig.setLoader(this.getClass().getClassLoader()); JavaEmbedUtils.initialize(Arrays.asList("META-INF/jruby.home/lib/ruby/2.0", "classpath:/gems/asciidoctor-1.5.4/lib"), rubyInstanceConfig); return create(this.getClass().getClassLoader()); }
Example #4
Source File: EnvironmentInjector.java From asciidoctorj with Apache License 2.0 | 4 votes |
EnvironmentInjector(RubyInstanceConfig config) { this.config = config; }