Session session = getSession();
AgentContext agentContext = session.getAgentContext();
String rubyCode = “include_class \”lotus.domino.Database\”\n” +
“include_class \”lotus.domino.Document\”\n” +
“db = $agentcontext.current_database\n” +
“doc = db.createDocument\n” +
“10000.times {|x| doc.replaceItemValue(\”Test\”, \”#{x}\”) }\n”;
for (int loop = 0; loop < 5; loop ++)
{
// Java test code
Date start = new Date();
Database db = agentContext.getCurrentDatabase();
Document doc = db.createDocument();
for (int i = 0; i < 10000; i ++)
{
doc.replaceItemValue(”Test”, Integer.toString(i));
}
Date end = new Date();
System.out.println(”Java notes code: ” + (end.getTime() - start.getTime()) + “ms”);
start = new Date();
BSFManager.registerScriptingEngine(”ruby”,
“org.jruby.javasupport.bsf.JRubyEngine”,
new String[] { “rb” });
BSFManager manager = new BSFManager();
/* Import an object using declareBean then you can access it in JRuby with $ */
manager.declareBean(”agentcontext”, agentContext, AgentContext.class);
manager.exec(”ruby”, “(java)”, 1, 1, rubyCode);
end = new Date();
System.out.println(”JRuby notes code: ” + (end.getTime() - start.getTime()) + “ms”);
}