View Javadoc
1   package us.codecraft.webmagic.scripts.languages;
2   
3   import java.util.Iterator;
4   import java.util.Map;
5   
6   import javax.script.ScriptEngine;
7   import javax.script.ScriptException;
8   
9   import org.jruby.RubyHash;
10  
11  import us.codecraft.webmagic.Page;
12  
13  public class JRuby extends Language {
14      public JRuby() {
15          super("jruby","ruby/defines.rb","");
16      }
17  
18      public void process(ScriptEngine engine, String defines, String script, Page page) throws ScriptException {
19          RubyHash oRuby = (RubyHash) engine.eval(defines + "\n" + script, engine.getContext());
20          Iterator itruby = oRuby.entrySet().iterator();
21          while (itruby.hasNext()) {
22              Map.Entry pairs = (Map.Entry) itruby.next();
23              page.getResultItems().put(pairs.getKey().toString(), pairs.getValue());
24          }
25      }
26  }