From 20f3c6add638e5ee53ca2e1ada4fb1ac160337d4 Mon Sep 17 00:00:00 2001 From: Ray Greenwell Date: Thu, 13 Aug 2009 06:17:57 +0000 Subject: [PATCH] Change how the actionscript services are generated, so that the client is not required. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5905 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/presents/tools/InvocationTask.java | 5 +++-- .../com/threerings/presents/tools/marshaller_as.tmpl | 9 +++++---- src/java/com/threerings/presents/tools/service_as.tmpl | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/java/com/threerings/presents/tools/InvocationTask.java b/src/java/com/threerings/presents/tools/InvocationTask.java index 5065e296c..3bac795ab 100644 --- a/src/java/com/threerings/presents/tools/InvocationTask.java +++ b/src/java/com/threerings/presents/tools/InvocationTask.java @@ -235,11 +235,12 @@ public abstract class InvocationTask extends Task if (buf.length() > 0) { buf.append(", "); } + String index = String.valueOf(skipFirst ? ii : (ii+1)); String arg; if (_ilistener.isAssignableFrom(args[ii])) { - arg = GenUtil.boxASArgument(args[ii], "listener" + (ii+1)); + arg = GenUtil.boxASArgument(args[ii], "listener" + index); } else { - arg = GenUtil.boxASArgument(args[ii], "arg" + (ii+1)); + arg = GenUtil.boxASArgument(args[ii], "arg" + index); } buf.append(arg); } diff --git a/src/java/com/threerings/presents/tools/marshaller_as.tmpl b/src/java/com/threerings/presents/tools/marshaller_as.tmpl index 4f5603def..94d7599e5 100644 --- a/src/java/com/threerings/presents/tools/marshaller_as.tmpl +++ b/src/java/com/threerings/presents/tools/marshaller_as.tmpl @@ -22,13 +22,14 @@ public class ${name}Marshaller extends InvocationMarshaller public static const $m.code :int = $velocityCount; // from interface ${name}Service - public function $m.method.name ($m.getASArgList(false)) :void + public function $m.method.name ($m.getASArgList(true)) :void { #foreach ($la in $m.listenerArgs) - var listener$la.index :$la.actionScriptMarshaller = new ${la.actionScriptMarshaller}(); - listener${la.index}.listener = arg$la.index; +#set ($argIdx = $la.index - 1) + var listener$argIdx :$la.actionScriptMarshaller = new ${la.actionScriptMarshaller}(); + listener${argIdx}.listener = arg$argIdx; #end - sendRequest(arg1, $m.code, [ + sendRequest($m.code, [ $m.getASWrappedArgList(true) ]); } diff --git a/src/java/com/threerings/presents/tools/service_as.tmpl b/src/java/com/threerings/presents/tools/service_as.tmpl index e18e29f3b..cce5a8848 100644 --- a/src/java/com/threerings/presents/tools/service_as.tmpl +++ b/src/java/com/threerings/presents/tools/service_as.tmpl @@ -14,7 +14,7 @@ public interface ${name}Service extends InvocationService #end // from Java interface ${name}Service - function $m.method.name ($m.getASArgList(false)) :void; + function $m.method.name ($m.getASArgList(true)) :void; #end } }