|
From: Márcio V. d. S. <mv...@us...> - 2007-09-26 19:36:21
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/dsl/ruby In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv14368/src/java/net/sf/tail/dsl/ruby Modified Files: RubyDSL.java Log Message: Index: RubyDSL.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/dsl/ruby/RubyDSL.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** RubyDSL.java 20 Sep 2007 23:11:39 -0000 1.2 --- RubyDSL.java 26 Sep 2007 19:36:22 -0000 1.3 *************** *** 1,7 **** package net.sf.tail.dsl.ruby; ! import java.util.Arrays; ! import java.util.LinkedHashSet; ! import java.util.List; import java.util.Set; --- 1,5 ---- package net.sf.tail.dsl.ruby; ! import java.util.HashSet; import java.util.Set; *************** *** 17,22 **** import net.sf.tail.indicator.simple.ClosePriceIndicator; - import org.jruby.RubyArray; - public class RubyDSL implements TailDSL { --- 15,18 ---- *************** *** 49,60 **** ScriptEngine engine = factory.getEngineByName("jruby"); engine.put("series", series); engine.put("close", new ClosePriceIndicator(series)); ! Object o = engine.eval(header + code); ! RubyArray array = (RubyArray) o; ! List<Strategy> strategies = Arrays.asList((Strategy[]) array.toArray(new Strategy[0])); ! return new LinkedHashSet<Strategy>(strategies); } --- 45,57 ---- ScriptEngine engine = factory.getEngineByName("jruby"); + Set<Strategy> strategies = new HashSet<Strategy>(); + engine.put("strategies", strategies); engine.put("series", series); engine.put("close", new ClosePriceIndicator(series)); ! engine.eval(header + code); ! ! return strategies; } |