Changeset 93
- Timestamp:
- 03/22/10 11:20:10 (2 years ago)
- Files:
-
- trunk/templates/cs/proxy.vm (modified) (2 diffs)
- trunk/test/expectations/cs/asdoclet/test/TestProxyInterfaceProxy.cs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/templates/cs/proxy.vm
r86 r93 15 15 #end 16 16 public class $typeDescriptor.typeName#generics($typeDescriptor)#implements($typeDescriptor)#bounds($typeDescriptor) { 17 protected virtual T DispatchCall<T>(string methodName, params object[] args) {18 return default(T);17 protected virtual object DispatchCall(System.Type type, string methodName, params object[] args) { 18 return null; 19 19 } 20 20 21 protected virtual void BeginDispatchCall <T>(string methodName, object async, params object[] args) {21 protected virtual void BeginDispatchCall(System.Type type, string methodName, object async, params object[] args) { 22 22 } 23 23 … … 31 31 #modifiers($methodDescriptor, 'virtual')public #method($methodDescriptor) { 32 32 #if($methodDescriptor.async)#if($methodDescriptor.callbackType.qualifiedTypeName == "void") 33 BeginDispatchCall <object>("${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end);33 BeginDispatchCall(typeof(object), "${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end); 34 34 #else 35 BeginDispatchCall <#type($methodDescriptor.callbackType)>("${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end);35 BeginDispatchCall(typeof(#type($methodDescriptor.callbackType)), "${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end); 36 36 #end#else#if($methodDescriptor.qualifiedTypeName == "void") 37 DispatchCall <object>("${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end);37 DispatchCall(typeof(object), "${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end); 38 38 #else 39 return DispatchCall<#type($methodDescriptor)>("${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end);39 return (<#type($methodDescriptor)>) DispatchCall(typeof<#type($methodDescriptor)), "${methodDescriptor.methodName}"#foreach($parameterDescriptor in $methodDescriptor.parameterDescriptors), $parameterDescriptor.parameterName#end); 40 40 #end#end 41 41 } trunk/test/expectations/cs/asdoclet/test/TestProxyInterfaceProxy.cs
r86 r93 4 4 #region AsDoclet generated code 5 5 public class TestProxyInterfaceProxy : asdoclet.test.TestProxyInterface { 6 protected virtual T DispatchCall<T>(string methodName, params object[] args) {7 return default(T);6 protected virtual object DispatchCall(System.Type type, string methodName, params object[] args) { 7 return null; 8 8 } 9 9 10 protected virtual void BeginDispatchCall <T>(string methodName, object async, params object[] args) {10 protected virtual void BeginDispatchCall(System.Type type, string methodName, object async, params object[] args) { 11 11 } 12 12 13 13 virtual public void Foo(AsyncCallback<System.Collections.Generic.ICollection<java.sql.Date>> async, java.sql.Date bar) { 14 BeginDispatchCall <System.Collections.Generic.ICollection<java.sql.Date>>("foo", async, bar);14 BeginDispatchCall(typeof(System.Collections.Generic.ICollection<java.sql.Date>), "foo", async, bar); 15 15 } 16 16 virtual public void Foo(AsyncCallback async, string bar) { 17 BeginDispatchCall <object>("foo", async, bar);17 BeginDispatchCall(typeof(object), "foo", async, bar); 18 18 } 19 19 }