Commit 9f5a6494 authored by yihua.huang's avatar yihua.huang

add support for JDK6 #93

parent c6c56ad5
...@@ -55,34 +55,35 @@ public class ScriptProcessor implements PageProcessor { ...@@ -55,34 +55,35 @@ public class ScriptProcessor implements PageProcessor {
context.setAttribute("page", page, ScriptContext.ENGINE_SCOPE); context.setAttribute("page", page, ScriptContext.ENGINE_SCOPE);
context.setAttribute("config", site, ScriptContext.ENGINE_SCOPE); context.setAttribute("config", site, ScriptContext.ENGINE_SCOPE);
try { try {
switch (language) { switch (language) {
case JavaScript: case JavaScript:
engine.eval(defines + "\n" + script, context); engine.eval(defines + "\n" + script, context);
NativeObject o = (NativeObject) engine.get("result"); NativeObject o = (NativeObject) engine.get("result");
if (o != null) { if (o != null) {
for (Map.Entry<Object, Object> objectObjectEntry : o.entrySet()) { for (Object o1 : o.getIds()) {
page.getResultItems().put(objectObjectEntry.getKey().toString(), objectObjectEntry.getValue()); String key = String.valueOf(o1);
page.getResultItems().put(key, NativeObject.getProperty(o, key));
}
} }
} break;
break; case JRuby:
case JRuby: RubyHash oRuby = (RubyHash) engine.eval(defines + "\n" + script, context);
RubyHash oRuby=(RubyHash)engine.eval(defines+"\n"+script,context); Iterator itruby = oRuby.entrySet().iterator();
Iterator itruby = oRuby.entrySet().iterator(); while (itruby.hasNext()) {
while (itruby.hasNext()) { Map.Entry pairs = (Map.Entry) itruby.next();
Map.Entry pairs = (Map.Entry)itruby.next(); page.getResultItems().put(pairs.getKey().toString(), pairs.getValue());
page.getResultItems().put(pairs.getKey().toString(),pairs.getValue()); }
} break;
break; case Jython:
case Jython: engine.eval(defines + "\n" + script, context);
engine.eval(defines + "\n" + script, context); PyDictionary oJython = (PyDictionary) engine.get("result");
PyDictionary oJython=(PyDictionary)engine.get("result"); Iterator it = oJython.entrySet().iterator();
Iterator it = oJython.entrySet().iterator(); while (it.hasNext()) {
while (it.hasNext()) { Map.Entry pairs = (Map.Entry) it.next();
Map.Entry pairs = (Map.Entry)it.next(); page.getResultItems().put(pairs.getKey().toString(), pairs.getValue());
page.getResultItems().put(pairs.getKey().toString(),pairs.getValue()); }
} break;
break; }
}
} catch (ScriptException e) { } catch (ScriptException e) {
e.printStackTrace(); e.printStackTrace();
} }
......
...@@ -9,3 +9,4 @@ var config = { ...@@ -9,3 +9,4 @@ var config = {
title = $("div.BlogTitle h1"), title = $("div.BlogTitle h1"),
content = $("div.BlogContent") content = $("div.BlogContent")
urls("http://my\\.oschina\\.net/flashsword/blog/\\d+") urls("http://my\\.oschina\\.net/flashsword/blog/\\d+")
config;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment