Guest User

Untitled

a guest
Apr 25th, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. package org.rubyforge.rawr;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.io.InputStream;
  6. import java.io.IOException;
  7. import java.net.URL;
  8.  
  9.  
  10. import java.util.ArrayList;
  11. import org.jruby.Ruby;
  12. import org.jruby.RubyInstanceConfig;
  13. import org.jruby.javasupport.JavaEmbedUtils;
  14.  
  15. public class Main
  16. {
  17. public static void main(String[] args) throws Exception
  18. {
  19. RubyInstanceConfig config = new RubyInstanceConfig();
  20. config.setArgv(args);
  21. Ruby runtime = JavaEmbedUtils.initialize(new ArrayList(0), config);
  22. String mainRubyFile = "main";
  23.  
  24. ArrayList<String> config_data = new ArrayList<String>();
  25. try{
  26. java.io.InputStream ins = Main.class.getClassLoader().getResourceAsStream("run_configuration");
  27. if (ins == null ) {
  28. System.err.println("Did not find configuration file 'run_configuration', using defaults.");
  29. } else {
  30. config_data = getConfigFileContents(ins);
  31. }
  32. }
  33. catch(IOException ioe)
  34. {
  35. System.err.println("Error loading run configuration file 'run_configuration', using defaults: " + ioe);
  36. }
  37. catch(java.lang.NullPointerException npe)
  38. {
  39. System.err.println("Error loading run configuration file 'run_configuration', using defaults: " + npe );
  40. }
  41.  
  42. for(String line : config_data) {
  43. String[] parts = line.split(":");
  44. if("main_ruby_file".equals(parts[0].replaceAll(" ", ""))) {
  45. mainRubyFile = parts[1].replaceAll(" ", "");
  46. }
  47. }
  48.  
  49. runtime.evalScriptlet("require '" + mainRubyFile + "'");
  50. }
  51.  
  52. public static URL getResource(String path) {
  53. return Main.class.getClassLoader().getResource(path);
  54. }
  55.  
  56. private static ArrayList<String> getConfigFileContents(InputStream input) throws IOException, java.lang.NullPointerException {
  57. BufferedReader reader = new BufferedReader(new InputStreamReader(input));
  58. String line;
  59. ArrayList<String> contents = new ArrayList<String>();
  60.  
  61. while ((line = reader.readLine()) != null) {
  62. contents.add(line);
  63. }
  64. reader.close();
  65. return(contents);
  66. }
  67. }
Add Comment
Please, Sign In to add comment