diff options
author | Benoit Foucher <benoit@zeroc.com> | 2016-08-16 16:37:18 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2016-08-16 16:37:18 +0200 |
commit | 88293201e566c982830482601e878ff4bc643782 (patch) | |
tree | b0ffc2633b8404cde06d4786927b1f6b63024849 /csharp/test | |
parent | Fixed ICE-7273 - C# AMI test failure (diff) | |
download | ice-88293201e566c982830482601e878ff4bc643782.tar.bz2 ice-88293201e566c982830482601e878ff4bc643782.tar.xz ice-88293201e566c982830482601e878ff4bc643782.zip |
C# mapping changes
- user exceptions are no longer checked on the server side (ICE-6980)
- support for ["marshaled-result"] metadata
- AMD operations now return a Task
- improved dispatch interceptors
- PropertiesAdminI::setProperties impl. now invokes callbacks synchronously
Diffstat (limited to 'csharp/test')
43 files changed, 2179 insertions, 2267 deletions
diff --git a/csharp/test/Ice/admin/TestI.cs b/csharp/test/Ice/admin/TestI.cs index e3792434e8f..e8698575432 100644 --- a/csharp/test/Ice/admin/TestI.cs +++ b/csharp/test/Ice/admin/TestI.cs @@ -24,7 +24,6 @@ public class RemoteCommunicatorI : RemoteCommunicatorDisp_, Ice.PropertiesAdminU public RemoteCommunicatorI(Ice.Communicator communicator) { _communicator = communicator; - _called = false; } override public Ice.ObjectPrx getAdmin(Ice.Current current) @@ -36,20 +35,6 @@ public class RemoteCommunicatorI : RemoteCommunicatorDisp_, Ice.PropertiesAdminU { lock(this) { - // - // The client calls PropertiesAdmin::setProperties() and then invokes - // this operation. Since setProperties() is implemented using AMD, the - // client might receive its reply and then call getChanges() before our - // updated() method is called. We block here to ensure that updated() - // gets called before we return the most recent set of changes. - // - while(!_called) - { - System.Threading.Monitor.Wait(this); - } - - _called = false; - return _changes; } } @@ -58,7 +43,7 @@ public class RemoteCommunicatorI : RemoteCommunicatorDisp_, Ice.PropertiesAdminU { _communicator.getLogger().print(message); } - + override public void trace(string category, string message, Ice.Current current) { _communicator.getLogger().trace(category, message); @@ -98,14 +83,11 @@ public class RemoteCommunicatorI : RemoteCommunicatorDisp_, Ice.PropertiesAdminU lock(this) { _changes = changes; - _called = true; - System.Threading.Monitor.Pulse(this); } } private Ice.Communicator _communicator; private Dictionary<string, string> _changes; - private bool _called; } public class RemoteCommunicatorFactoryI : RemoteCommunicatorFactoryDisp_ @@ -165,7 +147,7 @@ public class RemoteCommunicatorFactoryI : RemoteCommunicatorFactoryDisp_ public void print(string message) { } - + public void trace(string category, string message) { } diff --git a/csharp/test/Ice/ami/AllTests.cs b/csharp/test/Ice/ami/AllTests.cs index 208ea217f32..723097ca599 100644 --- a/csharp/test/Ice/ami/AllTests.cs +++ b/csharp/test/Ice/ami/AllTests.cs @@ -749,7 +749,7 @@ public class AllTests : TestCommon.TestApp } catch(AggregateException ae) { - ae.Handle((ex) => + ae.Handle((ex) => { return ex is Test.TestIntfException; }); diff --git a/csharp/test/Ice/ami/Test.ice b/csharp/test/Ice/ami/Test.ice index b1ba2ac2a82..1bd696fdcd1 100644 --- a/csharp/test/Ice/ami/Test.ice +++ b/csharp/test/Ice/ami/Test.ice @@ -35,7 +35,7 @@ interface TestIntf ["amd"] void opAsyncDispatch(); ["amd"] int opWithResultAsyncDispatch(); - ["amd"] int opWithUEAsyncDispatch() + ["amd"] void opWithUEAsyncDispatch() throws TestIntfException; }; diff --git a/csharp/test/Ice/ami/TestI.cs b/csharp/test/Ice/ami/TestI.cs index f73bc540ce3..0aabc62501a 100644 --- a/csharp/test/Ice/ami/TestI.cs +++ b/csharp/test/Ice/ami/TestI.cs @@ -102,38 +102,29 @@ public class TestI : TestIntfDisp_ return false; } - override public async void - opAsyncDispatchAsync(Action response, Action<Exception> ex, Ice.Current current) + override public async Task + opAsyncDispatchAsync(Ice.Current current) { await System.Threading.Tasks.Task.Delay(10); - response(); } - override public async void - opWithResultAsyncDispatchAsync(Action<int> response, Action<Exception> ex, Ice.Current current) + override public async Task<int> + opWithResultAsyncDispatchAsync(Ice.Current current) { await System.Threading.Tasks.Task.Delay(10); test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); var r = await self(current).opWithResultAsync(); test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); - response(r); + return r; } - override public async void - opWithUEAsyncDispatchAsync(Action<int> response, Action<Exception> ex, Ice.Current current) + override public async Task + opWithUEAsyncDispatchAsync(Ice.Current current) { - try - { - test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); - await System.Threading.Tasks.Task.Delay(10); - test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); - await self(current).opWithUEAsync(); - } - catch(TestIntfException e) - { - test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); - ex(e); - } + test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); + await System.Threading.Tasks.Task.Delay(10); + test(Thread.CurrentThread.Name.Contains("Ice.ThreadPool.Server")); + await self(current).opWithUEAsync(); } TestIntfPrx diff --git a/csharp/test/Ice/background/Server.cs b/csharp/test/Ice/background/Server.cs index 0ced20a0176..2e1dcb3b7f7 100644 --- a/csharp/test/Ice/background/Server.cs +++ b/csharp/test/Ice/background/Server.cs @@ -10,6 +10,7 @@ using System; using System.IO; using System.Reflection; +using System.Threading.Tasks; [assembly: CLSCompliant(true)] @@ -21,21 +22,19 @@ public class Server { internal class LocatorI : Ice.LocatorDisp_ { - public override void - findAdapterByIdAsync(string adapter, Action<Ice.ObjectPrx> response, Action<Exception> exception, - Ice.Current current) + public override Task<Ice.ObjectPrx> + findAdapterByIdAsync(string adapter, Ice.Current current) { _controller.checkCallPause(current); Ice.Communicator communicator = current.adapter.getCommunicator(); - response(current.adapter.createDirectProxy(Ice.Util.stringToIdentity("dummy"))); + return Task<Ice.ObjectPrx>.FromResult(current.adapter.createDirectProxy(Ice.Util.stringToIdentity("dummy"))); } - public override void - findObjectByIdAsync(Ice.Identity id, Action<Ice.ObjectPrx> response, Action<Exception> exception, - Ice.Current current) + public override Task<Ice.ObjectPrx> + findObjectByIdAsync(Ice.Identity id, Ice.Current current) { _controller.checkCallPause(current); - response(current.adapter.createDirectProxy(id)); + return Task<Ice.ObjectPrx>.FromResult(current.adapter.createDirectProxy(id)); } public override Ice.LocatorRegistryPrx getRegistry(Ice.Current current) diff --git a/csharp/test/Ice/dictMapping/MyClassAMDI.cs b/csharp/test/Ice/dictMapping/MyClassAMDI.cs index 9f40b81fbc2..7a4cb23652d 100644 --- a/csharp/test/Ice/dictMapping/MyClassAMDI.cs +++ b/csharp/test/Ice/dictMapping/MyClassAMDI.cs @@ -8,70 +8,62 @@ // ********************************************************************** using System.Collections.Generic; -using System; +using System.Threading.Tasks; using Test; public sealed class MyClassI : MyClassDisp_ { - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void - opNVAsync(Dictionary<int, int> i, Action<MyClass_OpNVResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpNVResult> + opNVAsync(Dictionary<int, int> i, Ice.Current current) { - response(new MyClass_OpNVResult(i, i)); + return Task.FromResult<MyClass_OpNVResult>(new MyClass_OpNVResult(i, i)); } - public override void - opNRAsync(Dictionary<string, string> i, Action<MyClass_OpNRResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpNRResult> + opNRAsync(Dictionary<string, string> i, Ice.Current current) { - response(new MyClass_OpNRResult(i, i)); + return Task.FromResult<MyClass_OpNRResult>(new MyClass_OpNRResult(i, i)); } - public override void - opNDVAsync(Dictionary<string, Dictionary<int, int>> i, Action<MyClass_OpNDVResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpNDVResult> + opNDVAsync(Dictionary<string, Dictionary<int, int>> i, Ice.Current current) { - response(new MyClass_OpNDVResult(i, i)); + return Task.FromResult<MyClass_OpNDVResult>(new MyClass_OpNDVResult(i, i)); } - public override void - opNDRAsync(Dictionary<string, Dictionary<string, string>> i, Action<MyClass_OpNDRResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpNDRResult> + opNDRAsync(Dictionary<string, Dictionary<string, string>> i, Ice.Current current) { - response(new MyClass_OpNDRResult(i, i)); + return Task.FromResult<MyClass_OpNDRResult>(new MyClass_OpNDRResult(i, i)); } - public override void - opNDAISAsync(Dictionary<string, int[]> i, Action<MyClass_OpNDAISResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpNDAISResult> + opNDAISAsync(Dictionary<string, int[]> i, Ice.Current current) { - response(new MyClass_OpNDAISResult(i, i)); + return Task.FromResult<MyClass_OpNDAISResult>(new MyClass_OpNDAISResult(i, i)); } - public override void - opNDGISAsync(Dictionary<string, List<int>> i, Action<MyClass_OpNDGISResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpNDGISResult> + opNDGISAsync(Dictionary<string, List<int>> i, Ice.Current current) { - response(new MyClass_OpNDGISResult(i, i)); + return Task.FromResult<MyClass_OpNDGISResult>(new MyClass_OpNDGISResult(i, i)); } - public override void - opNDASSAsync(Dictionary<string, string[]> i, Action<MyClass_OpNDASSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpNDASSResult> + opNDASSAsync(Dictionary<string, string[]> i, Ice.Current current) { - response(new MyClass_OpNDASSResult(i, i)); + return Task.FromResult<MyClass_OpNDASSResult>(new MyClass_OpNDASSResult(i, i)); } - public override void - opNDGSSAsync(Dictionary<string, List<string>> i, Action<MyClass_OpNDGSSResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpNDGSSResult> + opNDGSSAsync(Dictionary<string, List<string>> i, Ice.Current current) { - response(new MyClass_OpNDGSSResult(i, i)); + return Task.FromResult<MyClass_OpNDGSSResult>(new MyClass_OpNDGSSResult(i, i)); } } diff --git a/csharp/test/Ice/dictMapping/TwowaysAMI.cs b/csharp/test/Ice/dictMapping/TwowaysAMI.cs index f0c0173b5b0..e3003419e28 100644 --- a/csharp/test/Ice/dictMapping/TwowaysAMI.cs +++ b/csharp/test/Ice/dictMapping/TwowaysAMI.cs @@ -9,9 +9,9 @@ using System; using System.Diagnostics; -using System.Threading; using System.Collections.Generic; using Test; +using System.Threading.Tasks; public class TwowaysAMI { @@ -82,7 +82,7 @@ public class TwowaysAMI { Dictionary<string, Dictionary<int, int>> i = (Dictionary<string, Dictionary<int, int>>)result.AsyncState; Dictionary<string, Dictionary<int, int>> o; - Dictionary<string, Dictionary<int, int>> r = + Dictionary<string, Dictionary<int, int>> r = MyClassPrxHelper.uncheckedCast(result.getProxy()).end_opNDV(out o, result); foreach(string key in i.Keys) { @@ -94,10 +94,10 @@ public class TwowaysAMI public void opNDRI(Ice.AsyncResult result) { - Dictionary<string, Dictionary<string, string>> i = + Dictionary<string, Dictionary<string, string>> i = (Dictionary<string, Dictionary<string, string>>)result.AsyncState; Dictionary<string, Dictionary<string, string>> o; - Dictionary<string, Dictionary<string, string>> r = + Dictionary<string, Dictionary<string, string>> r = MyClassPrxHelper.uncheckedCast(result.getProxy()).end_opNDR(out o, result); foreach(string key in i.Keys) { @@ -124,7 +124,7 @@ public class TwowaysAMI { Dictionary<string, List<int>> i = (Dictionary<string, List<int>>)result.AsyncState; Dictionary<string, List<int>> o; - Dictionary<string, List<int>> r = + Dictionary<string, List<int>> r = MyClassPrxHelper.uncheckedCast(result.getProxy()).end_opNDGIS(out o, result); foreach(string key in i.Keys) { @@ -138,7 +138,7 @@ public class TwowaysAMI { Dictionary<string, string[]> i = (Dictionary<string,string[]>)result.AsyncState; Dictionary<string, string[]> o; - Dictionary<string, string[]> r = + Dictionary<string, string[]> r = MyClassPrxHelper.uncheckedCast(result.getProxy()).end_opNDASS(out o, result); foreach(string key in i.Keys) { @@ -152,7 +152,7 @@ public class TwowaysAMI { Dictionary<string, List<string>> i = (Dictionary<string,List<string>>)result.AsyncState; Dictionary<string, List<string>> o; - Dictionary<string, List<string>> r = + Dictionary<string, List<string>> r = MyClassPrxHelper.uncheckedCast(result.getProxy()).end_opNDGSS(out o, result); foreach(string key in i.Keys) { diff --git a/csharp/test/Ice/exceptions/AllTests.cs b/csharp/test/Ice/exceptions/AllTests.cs index ab9b1a9ee6f..c7fe94f7497 100644 --- a/csharp/test/Ice/exceptions/AllTests.cs +++ b/csharp/test/Ice/exceptions/AllTests.cs @@ -200,8 +200,9 @@ public class AllTests : TestCommon.TestApp { test(ex.aMem == 1); } - catch(Exception) + catch(Exception ex) { + System.Console.WriteLine(ex); test(false); } diff --git a/csharp/test/Ice/exceptions/ThrowerAMDI.cs b/csharp/test/Ice/exceptions/ThrowerAMDI.cs index 90249133945..48a2477f777 100644 --- a/csharp/test/Ice/exceptions/ThrowerAMDI.cs +++ b/csharp/test/Ice/exceptions/ThrowerAMDI.cs @@ -9,6 +9,7 @@ using System; using System.Diagnostics; +using System.Threading.Tasks; using Test; public class ThrowerI : ThrowerDisp_ @@ -17,131 +18,139 @@ public class ThrowerI : ThrowerDisp_ { } - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void - supportsUndeclaredExceptionsAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public override Task<bool> + supportsUndeclaredExceptionsAsync(Ice.Current current) { - response(true); + return Task.FromResult<bool>(true); } - public override void - supportsAssertExceptionAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public override Task<bool> + supportsAssertExceptionAsync(Ice.Current current) { - response(false); + return Task.FromResult<bool>(false); } - public override void throwAasAAsync(int a, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwAasAAsync(int a, Ice.Current current) { - exception(new A(a)); + throw new A(a); } - public override void throwAorDasAorDAsync(int a, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwAorDasAorDAsync(int a, Ice.Current current) { if(a > 0) { - exception(new A(a)); + throw new A(a); } else { - exception(new D(a)); + throw new D(a); } } - public override void - throwBasAAsync(int a, int b, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwBasAAsync(int a, int b, Ice.Current current) { - exception(new B(a, b)); + //throw new B(a, b); + var s = new TaskCompletionSource<object>(); + s.SetException(new B(a,b)); + return s.Task; } - public override void - throwBasBAsync(int a, int b, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwBasBAsync(int a, int b, Ice.Current current) { - exception(new B(a, b)); + throw new B(a, b); } - public override void - throwCasAAsync(int a, int b, int c, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwCasAAsync(int a, int b, int c, Ice.Current current) { - exception(new C(a, b, c)); + throw new C(a, b, c); } - public override void - throwCasBAsync(int a, int b, int c, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwCasBAsync(int a, int b, int c, Ice.Current current) { - exception(new C(a, b, c)); + throw new C(a, b, c); } - public override void - throwCasCAsync(int a, int b, int c, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwCasCAsync(int a, int b, int c, Ice.Current current) { - exception(new C(a, b, c)); + throw new C(a, b, c); } - public override void - throwUndeclaredAAsync(int a, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwUndeclaredAAsync(int a, Ice.Current current) { - exception(new A(a)); + throw new A(a); } - public override void - throwUndeclaredBAsync(int a, int b, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwUndeclaredBAsync(int a, int b, Ice.Current current) { - exception(new B(a, b)); + throw new B(a, b); } - public override void - throwUndeclaredCAsync(int a, int b, int c, Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwUndeclaredCAsync(int a, int b, int c, Ice.Current current) { - exception(new C(a, b, c)); + throw new C(a, b, c); } - public override void - throwLocalExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwLocalExceptionAsync(Ice.Current current) { - exception(new Ice.TimeoutException()); + throw new Ice.TimeoutException(); } - public override void - throwNonIceExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwNonIceExceptionAsync(Ice.Current current) { throw new Exception(); } - public override void - throwAssertExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwAssertExceptionAsync(Ice.Current current) { Debug.Assert(false); + return null; } - public override void - throwMemoryLimitExceptionAsync(byte[] seq, Action<byte[]> response, Action<Exception> exception, - Ice.Current current) + public override Task<byte[]> + throwMemoryLimitExceptionAsync(byte[] seq, Ice.Current current) { - response(new byte[1024 * 20]); // 20KB is over the configured 10KB message size max. + return Task.FromResult<byte[]>(new byte[1024 * 20]); // 20KB is over the configured 10KB message size max. } - public override void - throwLocalExceptionIdempotentAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwLocalExceptionIdempotentAsync(Ice.Current current) { throw new Ice.TimeoutException(); } - - public override void - throwAfterResponseAsync(Action response, Action<Exception> exception, Ice.Current current) + + public override Task + throwAfterResponseAsync(Ice.Current current) { - response(); - throw new Exception(); + // Only supported with callback based AMD API + return null; + //throw new Exception(); } - public override void - throwAfterExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwAfterExceptionAsync(Ice.Current current) { - exception(new A()); - throw new Exception(); + // Only supported with callback based AMD API + throw new A(); + //throw new Exception(); } } diff --git a/csharp/test/Ice/interceptor/AMDInterceptorI.cs b/csharp/test/Ice/interceptor/AMDInterceptorI.cs deleted file mode 100644 index 1b5283026b0..00000000000 --- a/csharp/test/Ice/interceptor/AMDInterceptorI.cs +++ /dev/null @@ -1,125 +0,0 @@ -// ********************************************************************** -// -// Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved. -// -// This copy of Ice is licensed to you under the terms described in the -// ICE_LICENSE file included in this distribution. -// -// ********************************************************************** - -// -// A dispatch interceptor with special handling for AMD requests -// - -using System; - -class AMDInterceptorI : InterceptorI, Ice.DispatchInterceptorAsyncCallback -{ - class DispatchInterceptorAsyncCallbackI : Ice.DispatchInterceptorAsyncCallback - { - public bool response(bool ok) - { - test(ok); - return false; - } - - public bool exception(System.Exception ex) - { - test(ex is Test.RetryException); - return false; - } - }; - - - internal AMDInterceptorI(Ice.Object servant) : base(servant) - { - } - - public override Ice.DispatchStatus - dispatch(Ice.Request request) - { - Ice.Current current = request.getCurrent(); - lastOperation_ = current.operation; - - if(lastOperation_.Equals("amdAddWithRetry")) - { - for(int i = 0; i < 10; ++i) - { - Ice.DispatchInterceptorAsyncCallback cb = new DispatchInterceptorAsyncCallbackI(); - - lastStatus_ = servant_.ice_dispatch(request, cb); - test(lastStatus_ == Ice.DispatchStatus.DispatchAsync); - } - - request.getCurrent().ctx["retry"] = "no"; - } - - - lastStatus_ = servant_.ice_dispatch(request, this); - return lastStatus_; - } - - public bool response(bool ok) - { - setActualStatus(ok ? Ice.DispatchStatus.DispatchOK : Ice.DispatchStatus.DispatchUserException); - return true; - } - - public bool exception(Exception ex) - { - setActualStatus(ex); - return true; - } - - internal override void - clear() - { - base.clear(); - lock(this) - { - actualStatus_ = Ice.DispatchStatus.DispatchAsync; - exception_ = null; - } - } - - internal void - setActualStatus(Ice.DispatchStatus status) - { - lock(this) - { - actualStatus_ = status; - exception_ = null; - } - } - - internal void - setActualStatus(Exception ex) - { - lock(this) - { - exception_ = ex; - actualStatus_ = Ice.DispatchStatus.DispatchAsync; - } - } - - internal Ice.DispatchStatus - getActualStatus() - { - lock(this) - { - return actualStatus_; - } - } - - internal Exception - getException() - { - lock(this) - { - return exception_; - } - } - - private Ice.DispatchStatus actualStatus_; - private Exception exception_; -} diff --git a/csharp/test/Ice/interceptor/Client.cs b/csharp/test/Ice/interceptor/Client.cs index 14fc4d47a50..e50b0e34cd8 100644 --- a/csharp/test/Ice/interceptor/Client.cs +++ b/csharp/test/Ice/interceptor/Client.cs @@ -33,25 +33,25 @@ public class Client Console.Out.Write("testing simple interceptor... "); Console.Out.Flush(); test(interceptor.getLastOperation() == null); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); + test(!interceptor.getLastStatus()); prx.ice_ping(); test(interceptor.getLastOperation().Equals("ice_ping")); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchOK); + test(!interceptor.getLastStatus()); String typeId = prx.ice_id(); test(interceptor.getLastOperation().Equals("ice_id")); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchOK); + test(!interceptor.getLastStatus()); test(prx.ice_isA(typeId)); test(interceptor.getLastOperation().Equals("ice_isA")); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchOK); + test(!interceptor.getLastStatus()); test(prx.add(33, 12) == 45); test(interceptor.getLastOperation().Equals("add")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchOK)); + test(!interceptor.getLastStatus()); Console.WriteLine("ok"); Console.Out.Write("testing retry... "); Console.Out.Flush(); test(prx.addWithRetry(33, 12) == 45); test(interceptor.getLastOperation().Equals("addWithRetry")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchOK)); + test(!interceptor.getLastStatus()); Console.WriteLine("ok"); Console.Out.Write("testing user exception... "); Console.Out.Flush(); @@ -65,7 +65,7 @@ public class Client // expected } test(interceptor.getLastOperation().Equals("badAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchUserException)); + test(!interceptor.getLastStatus()); Console.WriteLine("ok"); Console.Out.Write("testing ONE... "); Console.Out.Flush(); @@ -80,7 +80,7 @@ public class Client // expected } test(interceptor.getLastOperation().Equals("notExistAdd")); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); + test(!interceptor.getLastStatus()); Console.WriteLine("ok"); Console.Out.Write("testing system exception... "); Console.Out.Flush(); @@ -103,38 +103,30 @@ public class Client test(false); } test(interceptor.getLastOperation().Equals("badSystemAdd")); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); + test(!interceptor.getLastStatus()); Console.WriteLine("ok"); - if(!prx.ice_isCollocationOptimized()) - { - Console.Out.Write("testing simple AMD... "); - Console.Out.Flush(); - test(prx.amdAdd(33, 12) == 45); - test(interceptor.getLastOperation().Equals("amdAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - Console.WriteLine("ok"); - } + return 0; } - private int runAmd(Test.MyObjectPrx prx, AMDInterceptorI interceptor) + private int runAmd(Test.MyObjectPrx prx, InterceptorI interceptor) { Console.Out.Write("testing simple interceptor... "); Console.Out.Flush(); test(interceptor.getLastOperation() == null); - test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); + test(!interceptor.getLastStatus()); test(prx.amdAdd(33, 12) == 45); test(interceptor.getLastOperation().Equals("amdAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - test(interceptor.getActualStatus().Equals(Ice.DispatchStatus.DispatchOK)); + test(interceptor.getLastStatus()); Console.WriteLine("ok"); + Console.Out.Write("testing retry... "); Console.Out.Flush(); test(prx.amdAddWithRetry(33, 12) == 45); test(interceptor.getLastOperation().Equals("amdAddWithRetry")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - test(interceptor.getActualStatus().Equals(Ice.DispatchStatus.DispatchOK)); + test(interceptor.getLastStatus()); Console.WriteLine("ok"); + Console.Out.Write("testing user exception... "); Console.Out.Flush(); try @@ -147,9 +139,9 @@ public class Client // expected } test(interceptor.getLastOperation().Equals("amdBadAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - test(interceptor.getActualStatus().Equals(Ice.DispatchStatus.DispatchUserException)); + test(interceptor.getLastStatus()); Console.WriteLine("ok"); + Console.Out.Write("testing ONE... "); Console.Out.Flush(); interceptor.clear(); @@ -163,10 +155,9 @@ public class Client // expected } test(interceptor.getLastOperation().Equals("amdNotExistAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - test(interceptor.getActualStatus() == Ice.DispatchStatus.DispatchAsync); - test(interceptor.getException() is Ice.ObjectNotExistException); + test(interceptor.getLastStatus()); Console.WriteLine("ok"); + Console.Out.Write("testing system exception... "); Console.Out.Flush(); interceptor.clear(); @@ -188,9 +179,7 @@ public class Client test(false); } test(interceptor.getLastOperation().Equals("amdBadSystemAdd")); - test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); - test(interceptor.getActualStatus() == Ice.DispatchStatus.DispatchAsync); - test(interceptor.getException() is MySystemException); + test(interceptor.getLastStatus()); Console.WriteLine("ok"); return 0; } @@ -207,10 +196,8 @@ public class Client Ice.Object servant = new MyObjectI(); InterceptorI interceptor = new InterceptorI(servant); - AMDInterceptorI amdInterceptor = new AMDInterceptorI(servant); Test.MyObjectPrx prx = Test.MyObjectPrxHelper.uncheckedCast(oa.addWithUUID(interceptor)); - Test.MyObjectPrx prxForAMD = Test.MyObjectPrxHelper.uncheckedCast(oa.addWithUUID(amdInterceptor)); Console.WriteLine("Collocation optimization on"); int rs = run(prx, interceptor); @@ -220,7 +207,8 @@ public class Client } Console.WriteLine("Now with AMD"); - rs = runAmd(prxForAMD, amdInterceptor); + interceptor.clear(); + rs = runAmd(prx, interceptor); if(rs != 0) { return rs; @@ -238,9 +226,8 @@ public class Client } Console.WriteLine("Now with AMD"); - amdInterceptor.clear(); - prxForAMD = Test.MyObjectPrxHelper.uncheckedCast(prxForAMD.ice_collocationOptimized(false)); - rs = runAmd(prxForAMD, amdInterceptor); + interceptor.clear(); + rs = runAmd(prx, interceptor); return rs; } diff --git a/csharp/test/Ice/interceptor/InterceptorI.cs b/csharp/test/Ice/interceptor/InterceptorI.cs index c25f7896248..094f1ab2861 100644 --- a/csharp/test/Ice/interceptor/InterceptorI.cs +++ b/csharp/test/Ice/interceptor/InterceptorI.cs @@ -8,6 +8,7 @@ // ********************************************************************** using System; +using System.Threading.Tasks; class InterceptorI : Ice.DispatchInterceptor { @@ -25,13 +26,13 @@ class InterceptorI : Ice.DispatchInterceptor } } - public override Ice.DispatchStatus + public override Task<Ice.OutputStream> dispatch(Ice.Request request) { Ice.Current current = request.getCurrent(); lastOperation_ = current.operation; - if(lastOperation_.Equals("addWithRetry")) + if(lastOperation_.Equals("addWithRetry") || lastOperation_.Equals("amdAddWithRetry")) { for(int i = 0; i < 10; ++i) { @@ -47,15 +48,15 @@ class InterceptorI : Ice.DispatchInterceptor // } } - + current.ctx["retry"] = "no"; } - - lastStatus_ = servant_.ice_dispatch(request); - return lastStatus_; + var task = servant_.ice_dispatch(request); + lastStatus_ = task != null; + return task; } - internal Ice.DispatchStatus + internal bool getLastStatus() { return lastStatus_; @@ -71,10 +72,10 @@ class InterceptorI : Ice.DispatchInterceptor clear() { lastOperation_ = null; - lastStatus_ = Ice.DispatchStatus.DispatchAsync; + lastStatus_ = false; } protected readonly Ice.Object servant_; protected string lastOperation_; - protected Ice.DispatchStatus lastStatus_ = Ice.DispatchStatus.DispatchAsync; + protected bool lastStatus_ = false; } diff --git a/csharp/test/Ice/interceptor/MyObjectI.cs b/csharp/test/Ice/interceptor/MyObjectI.cs index c07a7a214c9..c6c35153289 100644 --- a/csharp/test/Ice/interceptor/MyObjectI.cs +++ b/csharp/test/Ice/interceptor/MyObjectI.cs @@ -12,18 +12,18 @@ using System.Threading.Tasks; class MySystemException : Ice.SystemException { - public + public MySystemException() { } - - override public string + + override public string ice_id() { return "::MySystemException"; } }; - + class MyObjectI : Test.MyObjectDisp_ { protected static void @@ -35,13 +35,13 @@ class MyObjectI : Test.MyObjectDisp_ } } - public override int + public override int add(int x, int y, Ice.Current current) { return x + y; - } - - public override int + } + + public override int addWithRetry(int x, int y, Ice.Current current) { test(current != null); @@ -52,69 +52,87 @@ class MyObjectI : Test.MyObjectDisp_ return x + y; } throw new Test.RetryException(); - } + } - public override int + public override int badAdd(int x, int y, Ice.Current current) { throw new Test.InvalidInputException(); - } + } - public override int + public override int notExistAdd(int x, int y, Ice.Current current) { throw new Ice.ObjectNotExistException(); - } - - public override int + } + + public override int badSystemAdd(int x, int y, Ice.Current current) { throw new MySystemException(); - } + } // // AMD // - public override async void - amdAddAsync(int x, int y, Action<int> response, Action<Exception> exception, Ice.Current current) + public override async Task<int> + amdAddAsync(int x, int y, Ice.Current current) { await Task.Delay(10); - response(x + y); + return x + y; } - public override async void - amdAddWithRetryAsync(int x, int y, Action<int> response, Action<Exception> exception, Ice.Current current) + // public override Task<int> + // amdAddWithRetryAsync(int x, int y, Ice.Current current) + // { + // // + // // NOTE: we can't use "async" dispatch here because otherwise the exception wouldn't be catch + // // synchronously by the dispatch interceptor. It would be wrapped into the task as if the + // // exception was raised asynchronously. + // // + // if(current.ctx.ContainsKey("retry") && current.ctx["retry"].Equals("no")) + // { + // return Task.Delay(10).ContinueWith((t) => { return Task.FromResult<int>(x + y); }).Unwrap(); + // } + // else + // { + // throw new Test.RetryException(); + // } + // } + + public override async Task<int> + amdAddWithRetryAsync(int x, int y, Ice.Current current) { - await Task.Delay(10); if(current.ctx.ContainsKey("retry") && current.ctx["retry"].Equals("no")) { - response(x + y); + await Task.Delay(10); + return x + y; } else { - exception(new Test.RetryException()); + throw new Test.RetryException(); } - } - - public override async void - amdBadAddAsync(int x, int y, Action<int> response, Action<Exception> exception, Ice.Current current) + } + + public override async Task<int> + amdBadAddAsync(int x, int y, Ice.Current current) { await Task.Delay(10); - exception(new Test.InvalidInputException()); - } + throw new Test.InvalidInputException(); + } - public override async void - amdNotExistAddAsync(int x, int y, Action<int> response, Action<Exception> exception, Ice.Current current) + public override async Task<int> + amdNotExistAddAsync(int x, int y, Ice.Current current) { await Task.Delay(10); - exception(new Ice.ObjectNotExistException()); - } - - public override async void - amdBadSystemAddAsync(int x, int y, Action<int> response, Action<Exception> exception, Ice.Current current) + throw new Ice.ObjectNotExistException(); + } + + public override async Task<int> + amdBadSystemAddAsync(int x, int y, Ice.Current current) { await Task.Delay(10); - exception(new MySystemException()); - } + throw new MySystemException(); + } } diff --git a/csharp/test/Ice/interceptor/msbuild/client/client.csproj b/csharp/test/Ice/interceptor/msbuild/client/client.csproj index 1a6454add9a..fcf27614c90 100644 --- a/csharp/test/Ice/interceptor/msbuild/client/client.csproj +++ b/csharp/test/Ice/interceptor/msbuild/client/client.csproj @@ -36,9 +36,6 @@ <Folder Include="Properties\" /> </ItemGroup> <ItemGroup> - <Compile Include="..\..\AMDInterceptorI.cs"> - <Link>AMDInterceptorI.cs</Link> - </Compile> <Compile Include="..\..\Client.cs"> <Link>Client.cs</Link> </Compile> @@ -66,4 +63,4 @@ <IceBuilderAllowIcePrefix>yes</IceBuilderAllowIcePrefix> </PropertyGroup> <Import Project="$(IceBuilderCsharpTargets)" Condition="Exists('$(IceBuilderCsharpTargets)')" /> -</Project> +</Project>
\ No newline at end of file diff --git a/csharp/test/Ice/invoke/BlobjectI.cs b/csharp/test/Ice/invoke/BlobjectI.cs index 3e3f1e9064f..db121d5eb3c 100644 --- a/csharp/test/Ice/invoke/BlobjectI.cs +++ b/csharp/test/Ice/invoke/BlobjectI.cs @@ -85,7 +85,7 @@ public class BlobjectAsyncI : Ice.BlobjectAsync outS.startEncapsulation(); if(current.operation.Equals("opOneway")) { - return Task.FromResult(new Ice.Object_Ice_invokeResult(true, new byte[0])); + return Task.FromResult<Ice.Object_Ice_invokeResult>(new Ice.Object_Ice_invokeResult(true, new byte[0])); } else if(current.operation.Equals("opString")) { @@ -93,19 +93,19 @@ public class BlobjectAsyncI : Ice.BlobjectAsync outS.writeString(s); outS.writeString(s); outS.endEncapsulation(); - return Task.FromResult(new Ice.Object_Ice_invokeResult(true, outS.finished())); + return Task.FromResult<Ice.Object_Ice_invokeResult>(new Ice.Object_Ice_invokeResult(true, outS.finished())); } else if(current.operation.Equals("opException")) { Test.MyException ex = new Test.MyException(); outS.writeException(ex); outS.endEncapsulation(); - return Task.FromResult(new Ice.Object_Ice_invokeResult(false, outS.finished())); + return Task.FromResult<Ice.Object_Ice_invokeResult>(new Ice.Object_Ice_invokeResult(false, outS.finished())); } else if(current.operation.Equals("shutdown")) { communicator.shutdown(); - return Task.FromResult(new Ice.Object_Ice_invokeResult(true, null)); + return Task.FromResult<Ice.Object_Ice_invokeResult>(new Ice.Object_Ice_invokeResult(true, null)); } else if(current.operation.Equals("ice_isA")) { @@ -119,7 +119,7 @@ public class BlobjectAsyncI : Ice.BlobjectAsync outS.writeBool(false); } outS.endEncapsulation(); - return Task.FromResult(new Ice.Object_Ice_invokeResult(true, outS.finished())); + return Task.FromResult<Ice.Object_Ice_invokeResult>(new Ice.Object_Ice_invokeResult(true, outS.finished())); } else { diff --git a/csharp/test/Ice/location/ServerLocator.cs b/csharp/test/Ice/location/ServerLocator.cs index 94467794ca7..5c32b00c5f6 100644 --- a/csharp/test/Ice/location/ServerLocator.cs +++ b/csharp/test/Ice/location/ServerLocator.cs @@ -9,6 +9,7 @@ using System; using System.Diagnostics; +using System.Threading.Tasks; public class ServerLocator : Test.TestLocatorDisp_ { @@ -18,37 +19,35 @@ public class ServerLocator : Test.TestLocatorDisp_ _registryPrx = registryPrx; _requestCount = 0; } - - public override void - findAdapterByIdAsync(string adapter, Action<Ice.ObjectPrx> response, Action<Exception> exception, - Ice.Current current) + + public override Task<Ice.ObjectPrx> + findAdapterByIdAsync(string adapter, Ice.Current current) { ++_requestCount; if(adapter.Equals("TestAdapter10") || adapter.Equals("TestAdapter10-2")) { Debug.Assert(current.encoding.Equals(Ice.Util.Encoding_1_0)); - response(_registry.getAdapter("TestAdapter")); + return Task.FromResult<Ice.ObjectPrx>(_registry.getAdapter("TestAdapter")); } else { // We add a small delay to make sure locator request queuing gets tested when // running the test on a fast machine System.Threading.Thread.Sleep(1); - response(_registry.getAdapter(adapter)); + return Task.FromResult<Ice.ObjectPrx>(_registry.getAdapter(adapter)); } } - - public override void - findObjectByIdAsync(Ice.Identity id, Action<Ice.ObjectPrx> response, Action<Exception> exception, - Ice.Current current) + + public override Task<Ice.ObjectPrx> + findObjectByIdAsync(Ice.Identity id, Ice.Current current) { ++_requestCount; // We add a small delay to make sure locator request queuing gets tested when // running the test on a fast machine System.Threading.Thread.Sleep(1); - response(_registry.getObject(id)); + return Task.FromResult<Ice.ObjectPrx>(_registry.getObject(id)); } - + public override Ice.LocatorRegistryPrx getRegistry(Ice.Current current) { return _registryPrx; diff --git a/csharp/test/Ice/location/ServerLocatorRegistry.cs b/csharp/test/Ice/location/ServerLocatorRegistry.cs index f7f8b44899e..6eb7523431f 100644 --- a/csharp/test/Ice/location/ServerLocatorRegistry.cs +++ b/csharp/test/Ice/location/ServerLocatorRegistry.cs @@ -9,6 +9,7 @@ using System; using System.Collections; +using System.Threading.Tasks; public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ { @@ -18,9 +19,8 @@ public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ _objects = new Hashtable(); } - public override void - setAdapterDirectProxyAsync(string adapter, Ice.ObjectPrx obj, Action response, Action<Exception> exception, - Ice.Current current) + public override Task + setAdapterDirectProxyAsync(string adapter, Ice.ObjectPrx obj, Ice.Current current) { if(obj != null) { @@ -30,12 +30,11 @@ public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ { _adapters.Remove(adapter); } - response(); + return null; } - - public override void - setReplicatedAdapterDirectProxyAsync(string adapter, string replica, Ice.ObjectPrx obj, Action response, - Action<Exception> exception, Ice.Current current) + + public override Task + setReplicatedAdapterDirectProxyAsync(string adapter, string replica, Ice.ObjectPrx obj, Ice.Current current) { if(obj != null) { @@ -47,14 +46,13 @@ public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ _adapters.Remove(adapter); _adapters.Remove(replica); } - response(); + return null; } - - public override void - setServerProcessProxyAsync(string id, Ice.ProcessPrx proxy, Action response, Action<Exception> exception, - Ice.Current current) + + public override Task + setServerProcessProxyAsync(string id, Ice.ProcessPrx proxy, Ice.Current current) { - response(); + return null; } public override void addObject(Ice.ObjectPrx obj, Ice.Current current = null) @@ -71,7 +69,7 @@ public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ } return (Ice.ObjectPrx)obj; } - + public virtual Ice.ObjectPrx getObject(Ice.Identity id) { object obj = _objects[id]; @@ -81,7 +79,7 @@ public class ServerLocatorRegistry : Test.TestLocatorRegistryDisp_ } return (Ice.ObjectPrx)obj; } - + private Hashtable _adapters; private Hashtable _objects; } diff --git a/csharp/test/Ice/metrics/MetricsAMDI.cs b/csharp/test/Ice/metrics/MetricsAMDI.cs index 0c2a83a67fd..e208bddfd38 100644 --- a/csharp/test/Ice/metrics/MetricsAMDI.cs +++ b/csharp/test/Ice/metrics/MetricsAMDI.cs @@ -8,6 +8,7 @@ // ********************************************************************** using System; +using System.Threading.Tasks; using Test; public sealed class ControllerI : ControllerDisp_ @@ -33,49 +34,54 @@ public sealed class ControllerI : ControllerDisp_ public sealed class MetricsI : MetricsDisp_ { - override public void opAsync(Action response, Action<Exception> exception, Ice.Current current) + override public Task opAsync(Ice.Current current) { - response(); + return null; } - override public void failAsync(Action response, Action<Exception> exception, Ice.Current current) - { + override public Task failAsync(Ice.Current current) + { current.con.close(true); - response(); + return null; } - override public void opWithUserExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + override public Task opWithUserExceptionAsync(Ice.Current current) { - exception(new UserEx()); + throw new UserEx(); } - override public void - opWithRequestFailedExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + override public Task + opWithRequestFailedExceptionAsync(Ice.Current current) { - exception(new Ice.ObjectNotExistException()); + throw new Ice.ObjectNotExistException(); } - override public void opWithLocalExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + override public Task + opWithLocalExceptionAsync(Ice.Current current) { - exception(new Ice.SyscallException()); + throw new Ice.SyscallException(); } - override public void opWithUnknownExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + override public Task + opWithUnknownExceptionAsync(Ice.Current current) { - exception(new ArgumentOutOfRangeException()); + throw new ArgumentOutOfRangeException(); } - override public void opByteSAsync(byte[] bs, Action response, Action<Exception> exception, Ice.Current current) + override public Task + opByteSAsync(byte[] bs, Ice.Current current) { - response(); + return null; } - override public Ice.ObjectPrx getAdmin(Ice.Current current) + override public Ice.ObjectPrx + getAdmin(Ice.Current current) { return current.adapter.getCommunicator().getAdmin(); } - override public void shutdown(Ice.Current current) + override public void + shutdown(Ice.Current current) { current.adapter.getCommunicator().shutdown(); } diff --git a/csharp/test/Ice/objects/AllTests.cs b/csharp/test/Ice/objects/AllTests.cs index e4e830adfe7..2914e1310ee 100644 --- a/csharp/test/Ice/objects/AllTests.cs +++ b/csharp/test/Ice/objects/AllTests.cs @@ -286,6 +286,14 @@ public class AllTests : TestCommon.TestApp } WriteLine("ok"); + Write("testing marshaled results..."); + Flush(); + b1 = initial.getMB(); + test(b1 != null && b1.theB == b1); + b1 = initial.getAMDMBAsync().Result; + test(b1 != null && b1.theB == b1); + WriteLine("ok"); + Write("testing UnexpectedObjectException..."); Flush(); @ref = "uoet:default -p 12010"; diff --git a/csharp/test/Ice/objects/InitialI.cs b/csharp/test/Ice/objects/InitialI.cs index 9ba1867ae94..0e7dc53b28b 100644 --- a/csharp/test/Ice/objects/InitialI.cs +++ b/csharp/test/Ice/objects/InitialI.cs @@ -7,6 +7,7 @@ // // ********************************************************************** +using System.Threading.Tasks; using Test; public sealed class InitialI : InitialDisp_ @@ -43,7 +44,7 @@ public sealed class InitialI : InitialDisp_ c = _c; d = _d; } - + public override B getB1(Ice.Current current) { return _b1; @@ -141,6 +142,16 @@ public sealed class InitialI : InitialDisp_ throw new Test.Inner.Sub.Ex("Inner::Sub::Ex"); } + public override Initial_GetMBMarshaledResult getMB(Ice.Current current) + { + return new Initial_GetMBMarshaledResult(_b1, current); + } + + public override Task<Initial_GetAMDMBMarshaledResult> getAMDMBAsync(Ice.Current current) + { + return Task.FromResult(new Initial_GetAMDMBMarshaledResult(_b1, current)); + } + private Ice.ObjectAdapter _adapter; private B _b1; private B _b2; diff --git a/csharp/test/Ice/objects/Test.ice b/csharp/test/Ice/objects/Test.ice index b1f1d49e56c..c66bf00caed 100644 --- a/csharp/test/Ice/objects/Test.ice +++ b/csharp/test/Ice/objects/Test.ice @@ -174,6 +174,9 @@ class Initial E getE(); F getF(); + ["marshaled-result"] B getMB(); + ["amd", "marshaled-result"] B getAMDMB(); + void getAll(out B b1, out B b2, out C theC, out D theD); I getI(); diff --git a/csharp/test/Ice/operations/MyDerivedClassAMDI.cs b/csharp/test/Ice/operations/MyDerivedClassAMDI.cs index 8b46d5df067..83c228561c8 100644 --- a/csharp/test/Ice/operations/MyDerivedClassAMDI.cs +++ b/csharp/test/Ice/operations/MyDerivedClassAMDI.cs @@ -24,11 +24,10 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ } } - internal class Thread_opVoid + internal class Thread_opVoid : TaskCompletionSource<object> { - public Thread_opVoid(Action response) + public Thread_opVoid() { - _response = response; } public void Start() @@ -42,7 +41,7 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ public void Run() { - _response(); + SetResult(null); } public void Join() @@ -53,7 +52,6 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ } } - private Action _response; private Thread _thread; } @@ -84,7 +82,7 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ return base.ice_id(current); } - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { while(_opVoidThread != null) { @@ -93,16 +91,10 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ } current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override async void delayAsync(int ms, Action response, Action<Exception> exception, Ice.Current current) - { - await Task.Delay(ms); - response(); - } - - public override void opVoidAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task opVoidAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Normal); @@ -112,22 +104,17 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ _opVoidThread = null; } - _opVoidThread = new Thread_opVoid(response); + _opVoidThread = new Thread_opVoid(); _opVoidThread.Start(); + return _opVoidThread.Task; } - public override void opBoolAsync(bool p1, bool p2, - Action<MyClass_OpBoolResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpBoolResult> opBoolAsync(bool p1, bool p2, Ice.Current current) { - response(new MyClass_OpBoolResult(p2, p1)); + return Task.FromResult<MyClass_OpBoolResult>(new MyClass_OpBoolResult(p2, p1)); } - public override void opBoolSAsync(bool[] p1, bool[] p2, - Action<MyClass_OpBoolSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpBoolSResult> opBoolSAsync(bool[] p1, bool[] p2, Ice.Current current) { bool[] p3 = new bool[p1.Length + p2.Length]; Array.Copy(p1, p3, p1.Length); @@ -139,14 +126,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpBoolSResult(r, p3)); + return Task.FromResult<MyClass_OpBoolSResult>(new MyClass_OpBoolSResult(r, p3)); } - public override void - opBoolSSAsync(bool[][] p1, bool[][] p2, - Action<MyClass_OpBoolSSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpBoolSSResult> + opBoolSSAsync(bool[][] p1, bool[][] p2, Ice.Current current) { bool[][] p3 = new bool[p1.Length + p2.Length][]; Array.Copy(p1, p3, p1.Length); @@ -158,23 +142,17 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpBoolSSResult(r, p3)); + return Task.FromResult<MyClass_OpBoolSSResult>(new MyClass_OpBoolSSResult(r, p3)); } - public override void opByteAsync(byte p1, byte p2, - Action<MyClass_OpByteResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteResult> + opByteAsync(byte p1, byte p2, Ice.Current current) { - response(new MyClass_OpByteResult(p1, (byte)(p1 ^ p2))); + return Task.FromResult<MyClass_OpByteResult>(new MyClass_OpByteResult(p1, (byte)(p1 ^ p2))); } - public override void - opByteBoolDAsync(Dictionary<byte, bool> p1, - Dictionary<byte, bool> p2, - Action<MyClass_OpByteBoolDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteBoolDResult> + opByteBoolDAsync(Dictionary<byte, bool> p1, Dictionary<byte, bool> p2, Ice.Current current) { Dictionary<byte, bool> p3 = p1; Dictionary<byte, bool> r = new Dictionary<byte, bool>(); @@ -187,14 +165,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ r[e.Key] = e.Value; } - response(new MyClass_OpByteBoolDResult(r, p3)); + return Task.FromResult<MyClass_OpByteBoolDResult>(new MyClass_OpByteBoolDResult(r, p3)); } - public override void - opByteSAsync(byte[] p1, byte[] p2, - Action<MyClass_OpByteSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteSResult> + opByteSAsync(byte[] p1, byte[] p2, Ice.Current current) { byte[] p3 = new byte[p1.Length]; for(int i = 0; i < p1.Length; i++) @@ -206,14 +181,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ Array.Copy(p1, r, p1.Length); Array.Copy(p2, 0, r, p1.Length, p2.Length); - response(new MyClass_OpByteSResult(r, p3)); + return Task.FromResult<MyClass_OpByteSResult>(new MyClass_OpByteSResult(r, p3)); } - public override void - opByteSSAsync(byte[][] p1, byte[][] p2, - Action<MyClass_OpByteSSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteSSResult> + opByteSSAsync(byte[][] p1, byte[][] p2, Ice.Current current) { byte[][] p3 = new byte[p1.Length][]; for(int i = 0; i < p1.Length; i++) @@ -225,22 +197,17 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ Array.Copy(p1, r, p1.Length); Array.Copy(p2, 0, r, p1.Length, p2.Length); - response(new MyClass_OpByteSSResult(r, p3)); + return Task.FromResult<MyClass_OpByteSSResult>(new MyClass_OpByteSSResult(r, p3)); } - public override void opFloatDoubleAsync(float p1, double p2, - Action<MyClass_OpFloatDoubleResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpFloatDoubleResult> + opFloatDoubleAsync(float p1, double p2, Ice.Current current) { - response(new MyClass_OpFloatDoubleResult(p2, p1, p2)); + return Task.FromResult<MyClass_OpFloatDoubleResult>(new MyClass_OpFloatDoubleResult(p2, p1, p2)); } - public override void - opFloatDoubleSAsync(float[] p1, double[] p2, - Action<MyClass_OpFloatDoubleSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpFloatDoubleSResult> + opFloatDoubleSAsync(float[] p1, double[] p2, Ice.Current current) { float[] p3 = p1; @@ -257,14 +224,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ r[p2.Length + i] = p1[i]; } - response(new MyClass_OpFloatDoubleSResult(r, p3, p4)); + return Task.FromResult<MyClass_OpFloatDoubleSResult>(new MyClass_OpFloatDoubleSResult(r, p3, p4)); } - public override void - opFloatDoubleSSAsync(float[][] p1, double[][] p2, - Action<MyClass_OpFloatDoubleSSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpFloatDoubleSSResult> + opFloatDoubleSSAsync(float[][] p1, double[][] p2, Ice.Current current) { var p3 = p1; @@ -285,14 +249,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ } } - response(new MyClass_OpFloatDoubleSSResult(r, p3, p4)); + return Task.FromResult<MyClass_OpFloatDoubleSSResult>(new MyClass_OpFloatDoubleSSResult(r, p3, p4)); } - public override void - opLongFloatDAsync(Dictionary<long, float> p1, Dictionary<long, float> p2, - Action<MyClass_OpLongFloatDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLongFloatDResult> + opLongFloatDAsync(Dictionary<long, float> p1, Dictionary<long, float> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<long, float>(); @@ -305,31 +266,27 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ r[e.Key] = e.Value; } - response(new MyClass_OpLongFloatDResult(r, p3)); + return Task.FromResult<MyClass_OpLongFloatDResult>(new MyClass_OpLongFloatDResult(r, p3)); } - public override void - opMyClassAsync(MyClassPrx p1, Action<MyClass_OpMyClassResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpMyClassResult> + opMyClassAsync(MyClassPrx p1, Ice.Current current) { var p2 = p1; var p3 = MyClassPrxHelper.uncheckedCast(current.adapter.createProxy( Ice.Util.stringToIdentity("noSuchIdentity"))); - response(new MyClass_OpMyClassResult( + return Task.FromResult<MyClass_OpMyClassResult>(new MyClass_OpMyClassResult( MyClassPrxHelper.uncheckedCast(current.adapter.createProxy(current.id)), p2, p3)); } - public override void - opMyEnumAsync(MyEnum p1, Action<MyClass_OpMyEnumResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpMyEnumResult> + opMyEnumAsync(MyEnum p1, Ice.Current current) { - response(new MyClass_OpMyEnumResult(MyEnum.enum3, p1)); + return Task.FromResult<MyClass_OpMyEnumResult>(new MyClass_OpMyEnumResult(MyEnum.enum3, p1)); } - public override void - opShortIntDAsync(Dictionary<short, int> p1, Dictionary<short, int> p2, - Action<MyClass_OpShortIntDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortIntDResult> + opShortIntDAsync(Dictionary<short, int> p1, Dictionary<short, int> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<short, int>(); @@ -341,23 +298,17 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpShortIntDResult(r, p3)); + return Task.FromResult<MyClass_OpShortIntDResult>(new MyClass_OpShortIntDResult(r, p3)); } - public override void - opShortIntLongAsync(short p1, int p2, long p3, - Action<MyClass_OpShortIntLongResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortIntLongResult> + opShortIntLongAsync(short p1, int p2, long p3, Ice.Current current) { - response(new MyClass_OpShortIntLongResult(p3, p1, p2, p3)); + return Task.FromResult<MyClass_OpShortIntLongResult>(new MyClass_OpShortIntLongResult(p3, p1, p2, p3)); } - public override void - opShortIntLongSAsync(short[] p1, int[] p2, long[] p3, - Action<MyClass_OpShortIntLongSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortIntLongSResult> + opShortIntLongSAsync(short[] p1, int[] p2, long[] p3, Ice.Current current) { var p4 = p1; var p5 = new int[p2.Length]; @@ -368,14 +319,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ var p6 = new long[p3.Length + p3.Length]; Array.Copy(p3, p6, p3.Length); Array.Copy(p3, 0, p6, p3.Length, p3.Length); - response(new MyClass_OpShortIntLongSResult(p3, p4, p5, p6)); + return Task.FromResult<MyClass_OpShortIntLongSResult>(new MyClass_OpShortIntLongSResult(p3, p4, p5, p6)); } - public override void - opShortIntLongSSAsync(short[][] p1, int[][] p2, long[][] p3, - Action<MyClass_OpShortIntLongSSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortIntLongSSResult> + opShortIntLongSSAsync(short[][] p1, int[][] p2, long[][] p3, Ice.Current current) { var p4 = p1; @@ -388,23 +336,17 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ var p6 = new long[p3.Length + p3.Length][]; Array.Copy(p3, p6, p3.Length); Array.Copy(p3, 0, p6, p3.Length, p3.Length); - response(new MyClass_OpShortIntLongSSResult(p3, p4, p5, p6)); + return Task.FromResult<MyClass_OpShortIntLongSSResult>(new MyClass_OpShortIntLongSSResult(p3, p4, p5, p6)); } - public override void - opStringAsync(string p1, string p2, - Action<MyClass_OpStringResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringResult> + opStringAsync(string p1, string p2, Ice.Current current) { - response(new MyClass_OpStringResult(p1 + " " + p2, p2 + " " + p1)); + return Task.FromResult<MyClass_OpStringResult>(new MyClass_OpStringResult(p1 + " " + p2, p2 + " " + p1)); } - public override void - opStringMyEnumDAsync(Dictionary<string, MyEnum> p1, Dictionary<string, MyEnum> p2, - Action<MyClass_OpStringMyEnumDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringMyEnumDResult> + opStringMyEnumDAsync(Dictionary<string, MyEnum> p1, Dictionary<string, MyEnum> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<string, Test.MyEnum>(); @@ -416,14 +358,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringMyEnumDResult(r, p3)); + return Task.FromResult<MyClass_OpStringMyEnumDResult>(new MyClass_OpStringMyEnumDResult(r, p3)); } - public override void - opMyEnumStringDAsync(Dictionary<MyEnum, string> p1, Dictionary<MyEnum, string> p2, - Action<MyClass_OpMyEnumStringDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpMyEnumStringDResult> + opMyEnumStringDAsync(Dictionary<MyEnum, string> p1, Dictionary<MyEnum, string> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<MyEnum, string>(); @@ -435,15 +374,12 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpMyEnumStringDResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumStringDResult>(new MyClass_OpMyEnumStringDResult(r, p3)); } - public override void + public override Task<MyClass_OpMyStructMyEnumDResult> opMyStructMyEnumDAsync(Dictionary<MyStruct, MyEnum> p1, - Dictionary<MyStruct, MyEnum> p2, - Action<MyClass_OpMyStructMyEnumDResult> response, - Action<Exception> exception, - Ice.Current current) + Dictionary<MyStruct, MyEnum> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<MyStruct, MyEnum>(); @@ -455,15 +391,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpMyStructMyEnumDResult(r, p3)); + return Task.FromResult<MyClass_OpMyStructMyEnumDResult>(new MyClass_OpMyStructMyEnumDResult(r, p3)); } - public override void - opByteBoolDSAsync(Dictionary<byte, bool>[] p1, - Dictionary<byte, bool>[] p2, - Action<MyClass_OpByteBoolDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteBoolDSResult> + opByteBoolDSAsync(Dictionary<byte, bool>[] p1, Dictionary<byte, bool>[] p2, Ice.Current current) { var p3 = new Dictionary<byte, bool>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -474,14 +406,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpByteBoolDSResult(r, p3)); + return Task.FromResult<MyClass_OpByteBoolDSResult>(new MyClass_OpByteBoolDSResult(r, p3)); } - public override void - opShortIntDSAsync(Dictionary<short, int>[] p1, Dictionary<short, int>[] p2, - Action<MyClass_OpShortIntDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortIntDSResult> + opShortIntDSAsync(Dictionary<short, int>[] p1, Dictionary<short, int>[] p2, Ice.Current current) { var p3 = new Dictionary<short, int>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -492,15 +421,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpShortIntDSResult(r, p3)); + return Task.FromResult<MyClass_OpShortIntDSResult>(new MyClass_OpShortIntDSResult(r, p3)); } - public override void - opLongFloatDSAsync(Dictionary<long, float>[] p1, - Dictionary<long, float>[] p2, - Action<MyClass_OpLongFloatDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLongFloatDSResult> + opLongFloatDSAsync(Dictionary<long, float>[] p1, Dictionary<long, float>[] p2, Ice.Current current) { var p3 = new Dictionary<long, float>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -511,15 +436,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpLongFloatDSResult(r, p3)); + return Task.FromResult<MyClass_OpLongFloatDSResult>(new MyClass_OpLongFloatDSResult(r, p3)); } - public override void - opStringStringDSAsync(Dictionary<string, string>[] p1, - Dictionary<string, string>[] p2, - Action<MyClass_OpStringStringDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringStringDSResult> + opStringStringDSAsync(Dictionary<string, string>[] p1, Dictionary<string, string>[] p2, Ice.Current current) { var p3 = new Dictionary<string, string>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -530,15 +451,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringStringDSResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringDSResult>(new MyClass_OpStringStringDSResult(r, p3)); } - public override void - opStringMyEnumDSAsync(Dictionary<string, MyEnum>[] p1, - Dictionary<string, MyEnum>[] p2, - Action<MyClass_OpStringMyEnumDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringMyEnumDSResult> + opStringMyEnumDSAsync(Dictionary<string, MyEnum>[] p1, Dictionary<string, MyEnum>[] p2, Ice.Current current) { var p3 = new Dictionary<string, MyEnum>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -549,15 +466,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringMyEnumDSResult(r, p3)); + return Task.FromResult<MyClass_OpStringMyEnumDSResult>(new MyClass_OpStringMyEnumDSResult(r, p3)); } - public override void - opMyEnumStringDSAsync(Dictionary<MyEnum, string>[] p1, - Dictionary<MyEnum, string>[] p2, - Action<MyClass_OpMyEnumStringDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpMyEnumStringDSResult> + opMyEnumStringDSAsync(Dictionary<MyEnum, string>[] p1, Dictionary<MyEnum, string>[] p2, Ice.Current current) { var p3 = new Dictionary<MyEnum, string>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -568,15 +481,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpMyEnumStringDSResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumStringDSResult>(new MyClass_OpMyEnumStringDSResult(r, p3)); } - public override void - opMyStructMyEnumDSAsync(Dictionary<MyStruct, MyEnum>[] p1, - Dictionary<MyStruct, MyEnum>[] p2, - Action<MyClass_OpMyStructMyEnumDSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpMyStructMyEnumDSResult> + opMyStructMyEnumDSAsync(Dictionary<MyStruct, MyEnum>[] p1, Dictionary<MyStruct, MyEnum>[] p2, Ice.Current current) { var p3 = new Dictionary<MyStruct, MyEnum>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); @@ -587,15 +496,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpMyStructMyEnumDSResult(r, p3)); + return Task.FromResult<MyClass_OpMyStructMyEnumDSResult>(new MyClass_OpMyStructMyEnumDSResult(r, p3)); } - public override void - opByteByteSDAsync(Dictionary<byte, byte[]> p1, - Dictionary<byte, byte[]> p2, - Action<MyClass_OpByteByteSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpByteByteSDResult> + opByteByteSDAsync(Dictionary<byte, byte[]> p1, Dictionary<byte, byte[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<byte, byte[]>(); @@ -607,15 +512,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpByteByteSDResult(r, p3)); + return Task.FromResult<MyClass_OpByteByteSDResult>(new MyClass_OpByteByteSDResult(r, p3)); } - public override void - opBoolBoolSDAsync(Dictionary<bool, bool[]> p1, - Dictionary<bool, bool[]> p2, - Action<MyClass_OpBoolBoolSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpBoolBoolSDResult> + opBoolBoolSDAsync(Dictionary<bool, bool[]> p1, Dictionary<bool, bool[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<bool, bool[]>(); @@ -627,15 +528,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpBoolBoolSDResult(r, p3)); + return Task.FromResult<MyClass_OpBoolBoolSDResult>(new MyClass_OpBoolBoolSDResult(r, p3)); } - public override void - opShortShortSDAsync(Dictionary<short, short[]> p1, - Dictionary<short, short[]> p2, - Action<MyClass_OpShortShortSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpShortShortSDResult> + opShortShortSDAsync(Dictionary<short, short[]> p1, Dictionary<short, short[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<short, short[]>(); @@ -647,15 +544,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpShortShortSDResult(r, p3)); + return Task.FromResult<MyClass_OpShortShortSDResult>(new MyClass_OpShortShortSDResult(r, p3)); } - public override void - opIntIntSDAsync(Dictionary<int, int[]> p1, - Dictionary<int, int[]> p2, - Action<MyClass_OpIntIntSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpIntIntSDResult> + opIntIntSDAsync(Dictionary<int, int[]> p1, Dictionary<int, int[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<int, int[]>(); @@ -667,15 +560,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpIntIntSDResult(r, p3)); + return Task.FromResult<MyClass_OpIntIntSDResult>(new MyClass_OpIntIntSDResult(r, p3)); } - public override void - opLongLongSDAsync(Dictionary<long, long[]> p1, - Dictionary<long, long[]> p2, - Action<MyClass_OpLongLongSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLongLongSDResult> + opLongLongSDAsync(Dictionary<long, long[]> p1, Dictionary<long, long[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<long, long[]>(); @@ -687,15 +576,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpLongLongSDResult(r, p3)); + return Task.FromResult<MyClass_OpLongLongSDResult>(new MyClass_OpLongLongSDResult(r, p3)); } - public override void - opStringFloatSDAsync(Dictionary<string, float[]> p1, - Dictionary<string, float[]> p2, - Action<MyClass_OpStringFloatSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringFloatSDResult> + opStringFloatSDAsync(Dictionary<string, float[]> p1, Dictionary<string, float[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, float[]>(); @@ -707,15 +592,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringFloatSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringFloatSDResult>(new MyClass_OpStringFloatSDResult(r, p3)); } - public override void - opStringDoubleSDAsync(Dictionary<string, double[]> p1, - Dictionary<string, double[]> p2, - Action<MyClass_OpStringDoubleSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringDoubleSDResult> + opStringDoubleSDAsync(Dictionary<string, double[]> p1, Dictionary<string, double[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, double[]>(); @@ -727,15 +608,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringDoubleSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringDoubleSDResult>(new MyClass_OpStringDoubleSDResult(r, p3)); } - public override void - opStringStringSDAsync(Dictionary<string, string[]> p1, - Dictionary<string, string[]> p2, - Action<MyClass_OpStringStringSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringStringSDResult> + opStringStringSDAsync(Dictionary<string, string[]> p1, Dictionary<string, string[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, string[]>(); @@ -747,15 +624,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringStringSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringSDResult>(new MyClass_OpStringStringSDResult(r, p3)); } - public override void - opMyEnumMyEnumSDAsync(Dictionary<MyEnum, MyEnum[]> p1, - Dictionary<MyEnum, MyEnum[]> p2, - Action<MyClass_OpMyEnumMyEnumSDResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpMyEnumMyEnumSDResult> + opMyEnumMyEnumSDAsync(Dictionary<MyEnum, MyEnum[]> p1, Dictionary<MyEnum, MyEnum[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<Test.MyEnum, Test.MyEnum[]>(); @@ -767,54 +640,49 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpMyEnumMyEnumSDResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumMyEnumSDResult>(new MyClass_OpMyEnumMyEnumSDResult(r, p3)); } - public override void opIntSAsync(int[] s, - Action<int[]> response, - Action<Exception> exception, - Ice.Current current) + public override Task<int[]> + opIntSAsync(int[] s, Ice.Current current) { var r = new int[s.Length]; for(int i = 0; i < s.Length; ++i) { r[i] = -s[i]; } - response(r); + return Task.FromResult<int[]>(r); } - public override void opContextAsync(Action<Dictionary<string, string>> response, - Action<Exception> exception, - Ice.Current current) + public override Task<Dictionary<string, string>> + opContextAsync(Ice.Current current) { - response(current.ctx); + return Task.FromResult<Dictionary<string, string>>(current.ctx); } - public override void opByteSOnewayAsync(byte[] s, Action response, - Action<Exception> exception, - Ice.Current current) + public override Task + opByteSOnewayAsync(byte[] s, Ice.Current current) { lock(this) { ++_opByteSOnewayCallCount; } - response(); + return null; } - public override void opByteSOnewayCallCountAsync(Action<int> response, - Action<Exception> exeption, - Ice.Current current) + public override Task<int> + opByteSOnewayCallCountAsync(Ice.Current current) { lock(this) { var count = _opByteSOnewayCallCount; _opByteSOnewayCallCount = 0; - response(count); + return Task.FromResult<int>(count); } } - public override void opDoubleMarshalingAsync(double p1, double[] p2, Action response, - Action<Exception> exception, Ice.Current current) + public override Task + opDoubleMarshalingAsync(double p1, double[] p2, Ice.Current current) { var d = 1278312346.0 / 13.0; test(p1 == d); @@ -822,14 +690,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { test(p2[i] == d); } - response(); + return null; } - public override void - opStringSAsync(string[] p1, string[] p2, - Action<MyClass_OpStringSResult> response, - Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringSResult> + opStringSAsync(string[] p1, string[] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length]; Array.Copy(p1, p3, p1.Length); @@ -840,12 +705,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSResult>(new MyClass_OpStringSResult(r, p3)); } - public override void - opStringSSAsync(string[][] p1, string[][] p2, Action<MyClass_OpStringSSResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpStringSSResult> + opStringSSAsync(string[][] p1, string[][] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length][]; Array.Copy(p1, p3, p1.Length); @@ -855,12 +719,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p2[p2.Length - (i + 1)]; } - response(new MyClass_OpStringSSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSSResult>(new MyClass_OpStringSSResult(r, p3)); } - public override void - opStringSSSAsync(string[][][] p1, string[][][] p2, Action<MyClass_OpStringSSSResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpStringSSSResult> + opStringSSSAsync(string[][][] p1, string[][][] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length][][]; Array.Copy(p1, p3, p1.Length); @@ -871,13 +734,11 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[i] = p2[p2.Length - (i + 1)]; } - response(new MyClass_OpStringSSSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSSSResult>(new MyClass_OpStringSSSResult(r, p3)); } - public override void - opStringStringDAsync(Dictionary<string, string> p1, Dictionary<string, string> p2, - Action<MyClass_OpStringStringDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpStringStringDResult> + opStringStringDAsync(Dictionary<string, string> p1, Dictionary<string, string> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<string, string>(); @@ -889,120 +750,120 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringStringDResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringDResult>(new MyClass_OpStringStringDResult(r, p3)); } - public override void - opStructAsync(Structure p1, Structure p2, Action<MyClass_OpStructResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpStructResult> + opStructAsync(Structure p1, Structure p2, Ice.Current current) { var p3 = p1; p3.s.s = "a new string"; - response(new MyClass_OpStructResult(p2, p3)); + return Task.FromResult<MyClass_OpStructResult>(new MyClass_OpStructResult(p2, p3)); } - public override void opIdempotentAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + opIdempotentAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Idempotent); - response(); + return null; } - public override void opNonmutatingAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + opNonmutatingAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Nonmutating); - response(); + return null; } - public override void opDerivedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + opDerivedAsync(Ice.Current current) { - response(); + return null; } - - public override void opByte1Async(byte value, Action<byte> response, Action<Exception> exception, - Ice.Current current) + + public override Task<byte> + opByte1Async(byte value, Ice.Current current) { - response(value); + return Task.FromResult<byte>(value); } - - public override void opShort1Async(short value, Action<short> response, Action<Exception> exception, - Ice.Current current) + + public override Task<short> + opShort1Async(short value, Ice.Current current) { - response(value); + return Task.FromResult<short>(value); } - - public override void opInt1Async(int value, Action<int> response, Action<Exception> exception, - Ice.Current current) + + public override Task<int> + opInt1Async(int value, Ice.Current current) { - response(value); + return Task.FromResult<int>(value); } - - public override void opLong1Async(long value, Action<long> response, Action<Exception> exception, - Ice.Current current) + + public override Task<long> + opLong1Async(long value, Ice.Current current) { - response(value); + return Task.FromResult<long>(value); } - - public override void opFloat1Async(float value, Action<float> response, Action<Exception> exception, - Ice.Current current) + + public override Task<float> + opFloat1Async(float value, Ice.Current current) { - response(value); + return Task.FromResult<float>(value); } - - public override void opDouble1Async(double value, Action<double> response, Action<Exception> exception, - Ice.Current current) + + public override Task<double> + opDouble1Async(double value, Ice.Current current) { - response(value); + return Task.FromResult<double>(value); } - - public override void opString1Async(string value, Action<string> response, Action<Exception> exception, - Ice.Current current) + + public override Task<string> + opString1Async(string value, Ice.Current current) { - response(value); + return Task.FromResult<string>(value); } - - public override void opStringS1Async(string[] value, Action<string[]> response, Action<Exception> exception, - Ice.Current current) + + public override Task<string[]> + opStringS1Async(string[] value, Ice.Current current) { - response(value); + return Task.FromResult<string[]>(value); } - - public override void - opByteBoolD1Async(Dictionary<byte, bool> value, Action<Dictionary<byte, bool>> response, Action<Exception> exception, - Ice.Current current) + + public override Task<Dictionary<byte, bool>> + opByteBoolD1Async(Dictionary<byte, bool> value, Ice.Current current) { - response(value); + return Task.FromResult<Dictionary<byte, bool>>(value); } - - public override void - opStringS2Async(string[] value, Action<string[]> response, Action<Exception> exception, Ice.Current current) + + public override Task<string[]> + opStringS2Async(string[] value, Ice.Current current) { - response(value); + return Task.FromResult<string[]>(value); } - - public override void - opByteBoolD2Async(Dictionary<byte, bool> value, Action<Dictionary<byte, bool>> response, Action<Exception> exception, - Ice.Current current) + + public override Task<Dictionary<byte, bool>> + opByteBoolD2Async(Dictionary<byte, bool> value, Ice.Current current) { - response(value); + return Task.FromResult<Dictionary<byte, bool>>(value); } - - public override void - opMyClass1Async(MyClass1 value, Action<MyClass1> response, Action<Exception> exception, Ice.Current current) + + public override Task<MyClass1> + opMyClass1Async(MyClass1 value, Ice.Current current) { - response(value); + return Task.FromResult<MyClass1>(value); } - - public override void - opMyStruct1Async(MyStruct1 value, Action<MyStruct1> response, Action<Exception> exception, Ice.Current current) + + public override Task<MyStruct1> + opMyStruct1Async(MyStruct1 value, Ice.Current current) { - response(value); + return Task.FromResult<MyStruct1>(value); } - - - public override void - opStringLiteralsAsync(Action<string[]> response, Action<Exception> exception, Ice.Current current) + + + public override Task<string[]> + opStringLiteralsAsync(Ice.Current current) { - response(new string[] + return Task.FromResult<string[]>(new string[] { s0.value, s1.value, @@ -1015,7 +876,7 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ s8.value, s9.value, s10.value, - + sw0.value, sw1.value, sw2.value, @@ -1027,24 +888,24 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ sw8.value, sw9.value, sw10.value, - + ss0.value, ss1.value, ss2.value, ss3.value, ss4.value, ss5.value, - + su0.value, su1.value, su2.value }); } - - public override void - opWStringLiteralsAsync(Action<string[]> response, Action<Exception> exception, Ice.Current current) + + public override Task<string[]> + opWStringLiteralsAsync(Ice.Current current) { - response(new string[] + return Task.FromResult<string[]>(new string[] { s0.value, s1.value, @@ -1057,7 +918,7 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ s8.value, s9.value, s10.value, - + sw0.value, sw1.value, sw2.value, @@ -1069,20 +930,62 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ sw8.value, sw9.value, sw10.value, - + ss0.value, ss1.value, ss2.value, ss3.value, ss4.value, ss5.value, - + su0.value, su1.value, su2.value }); } + public override async Task<Test.MyClass_OpMStruct1MarshaledResult> + opMStruct1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMStruct1MarshaledResult(new Test.Structure(), current); + } + + public override async Task<Test.MyClass_OpMStruct2MarshaledResult> + opMStruct2Async(Test.Structure p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMStruct2MarshaledResult(p1, p1, current); + } + + public override async Task<Test.MyClass_OpMSeq1MarshaledResult> + opMSeq1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMSeq1MarshaledResult(new string[0], current); + } + + public override async Task<Test.MyClass_OpMSeq2MarshaledResult> + opMSeq2Async(string[] p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMSeq2MarshaledResult(p1, p1, current); + } + + public override async Task<Test.MyClass_OpMDict1MarshaledResult> + opMDict1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMDict1MarshaledResult(new Dictionary<string, string>(), current); + } + + public override async Task<Test.MyClass_OpMDict2MarshaledResult> + opMDict2Async(Dictionary<string, string> p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMDict2MarshaledResult(p1, p1, current); + } + private Thread_opVoid _opVoidThread; private int _opByteSOnewayCallCount = 0; } diff --git a/csharp/test/Ice/operations/MyDerivedClassAMDTieI.cs b/csharp/test/Ice/operations/MyDerivedClassAMDTieI.cs index ecfe5a44d36..9326dd9fa19 100644 --- a/csharp/test/Ice/operations/MyDerivedClassAMDTieI.cs +++ b/csharp/test/Ice/operations/MyDerivedClassAMDTieI.cs @@ -24,17 +24,16 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { private static void test(bool b) { - if(!b) + if (!b) { throw new Exception(); } } - internal class Thread_opVoid + internal class Thread_opVoid : TaskCompletionSource<object> { - public Thread_opVoid(Action response) + public Thread_opVoid() { - _response = response; } public void Start() @@ -48,7 +47,7 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ public void Run() { - _response(); + SetResult(null); } public void Join() @@ -59,11 +58,10 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ } } - private Action _response; private Thread _thread; } - public void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public Task shutdownAsync(Ice.Current current) { while(_opVoidThread != null) { @@ -72,16 +70,10 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ } current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public async void delayAsync(int ms, Action response, Action<Exception> exception, Ice.Current current) - { - await Task.Delay(ms); - response(); - } - - public void opVoidAsync(Action response, Action<Exception> exception, Ice.Current current) + public Task opVoidAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Normal); @@ -90,277 +82,266 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ _opVoidThread.Join(); _opVoidThread = null; } - _opVoidThread = new Thread_opVoid(response); + + _opVoidThread = new Thread_opVoid(); _opVoidThread.Start(); + return _opVoidThread.Task; } - public void - opBoolAsync(bool p1, bool p2, Action<MyClass_OpBoolResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpBoolResult> opBoolAsync(bool p1, bool p2, Ice.Current current) { - response(new MyClass_OpBoolResult(p2, p1)); + return Task.FromResult<MyClass_OpBoolResult>(new MyClass_OpBoolResult(p2, p1)); } - public void - opBoolSAsync(bool[] p1, bool[] p2, Action<MyClass_OpBoolSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpBoolSResult> opBoolSAsync(bool[] p1, bool[] p2, Ice.Current current) { - var p3 = new bool[p1.Length + p2.Length]; + bool[] p3 = new bool[p1.Length + p2.Length]; Array.Copy(p1, p3, p1.Length); Array.Copy(p2, 0, p3, p1.Length, p2.Length); - var r = new bool[p1.Length]; - for(var i = 0; i < p1.Length; i++) + bool[] r = new bool[p1.Length]; + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpBoolSResult(r, p3)); + return Task.FromResult<MyClass_OpBoolSResult>(new MyClass_OpBoolSResult(r, p3)); } - public void - opBoolSSAsync(bool[][] p1, bool[][] p2, Action<MyClass_OpBoolSSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpBoolSSResult> + opBoolSSAsync(bool[][] p1, bool[][] p2, Ice.Current current) { - var p3 = new bool[p1.Length + p2.Length][]; + bool[][] p3 = new bool[p1.Length + p2.Length][]; Array.Copy(p1, p3, p1.Length); Array.Copy(p2, 0, p3, p1.Length, p2.Length); - var r = new bool[p1.Length][]; - for(var i = 0; i < p1.Length; i++) + bool[][] r = new bool[p1.Length][]; + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpBoolSSResult(r, p3)); + return Task.FromResult<MyClass_OpBoolSSResult>(new MyClass_OpBoolSSResult(r, p3)); } - public void - opByteAsync(byte p1, byte p2, Action<MyClass_OpByteResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpByteResult> + opByteAsync(byte p1, byte p2, Ice.Current current) { - response(new MyClass_OpByteResult(p1, (byte)(p1 ^ p2))); + return Task.FromResult<MyClass_OpByteResult>(new MyClass_OpByteResult(p1, (byte)(p1 ^ p2))); } - public void - opByteBoolDAsync(Dictionary<byte, bool> p1, Dictionary<byte, bool> p2, Action<MyClass_OpByteBoolDResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpByteBoolDResult> + opByteBoolDAsync(Dictionary<byte, bool> p1, Dictionary<byte, bool> p2, Ice.Current current) { - var p3 = p1; - var r = new Dictionary<byte, bool>(); - foreach(var e in p1) + Dictionary<byte, bool> p3 = p1; + Dictionary<byte, bool> r = new Dictionary<byte, bool>(); + foreach(KeyValuePair<byte, bool> e in p1) { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<byte, bool> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpByteBoolDResult(r, p3)); + return Task.FromResult<MyClass_OpByteBoolDResult>(new MyClass_OpByteBoolDResult(r, p3)); } - public void - opByteSAsync(byte[] p1, byte[] p2, Action<MyClass_OpByteSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpByteSResult> + opByteSAsync(byte[] p1, byte[] p2, Ice.Current current) { - var p3 = new byte[p1.Length]; - for(var i = 0; i < p1.Length; i++) + byte[] p3 = new byte[p1.Length]; + for(int i = 0; i < p1.Length; i++) { p3[i] = p1[p1.Length - (i + 1)]; } - var r = new byte[p1.Length + p2.Length]; + byte[] r = new byte[p1.Length + p2.Length]; Array.Copy(p1, r, p1.Length); Array.Copy(p2, 0, r, p1.Length, p2.Length); - response(new MyClass_OpByteSResult(r, p3)); + return Task.FromResult<MyClass_OpByteSResult>(new MyClass_OpByteSResult(r, p3)); } - public void - opByteSSAsync(byte[][] p1, byte[][] p2, Action<MyClass_OpByteSSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpByteSSResult> + opByteSSAsync(byte[][] p1, byte[][] p2, Ice.Current current) { - var p3 = new byte[p1.Length][]; - for(var i = 0; i < p1.Length; i++) + byte[][] p3 = new byte[p1.Length][]; + for(int i = 0; i < p1.Length; i++) { p3[i] = p1[p1.Length - (i + 1)]; } - var r = new byte[p1.Length + p2.Length][]; + byte[][] r = new byte[p1.Length + p2.Length][]; Array.Copy(p1, r, p1.Length); Array.Copy(p2, 0, r, p1.Length, p2.Length); - response(new MyClass_OpByteSSResult(r, p3)); + return Task.FromResult<MyClass_OpByteSSResult>(new MyClass_OpByteSSResult(r, p3)); } - public void opFloatDoubleAsync(float p1, double p2, Action<MyClass_OpFloatDoubleResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpFloatDoubleResult> + opFloatDoubleAsync(float p1, double p2, Ice.Current current) { - response(new MyClass_OpFloatDoubleResult(p2, p1, p2)); + return Task.FromResult<MyClass_OpFloatDoubleResult>(new MyClass_OpFloatDoubleResult(p2, p1, p2)); } - public void - opFloatDoubleSAsync(float[] p1, double[] p2, Action<MyClass_OpFloatDoubleSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpFloatDoubleSResult> + opFloatDoubleSAsync(float[] p1, double[] p2, Ice.Current current) { - var p3 = p1; - var p4 = new double[p2.Length]; - for(var i = 0; i < p2.Length; i++) + float[] p3 = p1; + + double[] p4 = new double[p2.Length]; + for(int i = 0; i < p2.Length; i++) { p4[i] = p2[p2.Length - (i + 1)]; } - var r = new double[p2.Length + p1.Length]; + + double[] r = new double[p2.Length + p1.Length]; Array.Copy(p2, r, p2.Length); - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[p2.Length + i] = p1[i]; } - response(new MyClass_OpFloatDoubleSResult(r, p3, p4)); + + return Task.FromResult<MyClass_OpFloatDoubleSResult>(new MyClass_OpFloatDoubleSResult(r, p3, p4)); } - public void - opFloatDoubleSSAsync(float[][] p1, double[][] p2, Action<MyClass_OpFloatDoubleSSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpFloatDoubleSSResult> + opFloatDoubleSSAsync(float[][] p1, double[][] p2, Ice.Current current) { var p3 = p1; + var p4 = new double[p2.Length][]; - for(var i = 0; i < p2.Length; i++) + for(int i = 0; i < p2.Length; i++) { p4[i] = p2[p2.Length - (i + 1)]; } + var r = new double[p2.Length + p2.Length][]; Array.Copy(p2, r, p2.Length); - for(var i = 0; i < p2.Length; i++) + for(int i = 0; i < p2.Length; i++) { r[p2.Length + i] = new double[p2[i].Length]; - for(var j = 0; j < p2[i].Length; j++) + for(int j = 0; j < p2[i].Length; j++) { r[p2.Length + i][j] = p2[i][j]; } } - response(new MyClass_OpFloatDoubleSSResult(r, p3, p4)); + + return Task.FromResult<MyClass_OpFloatDoubleSSResult>(new MyClass_OpFloatDoubleSSResult(r, p3, p4)); } - public void - opLongFloatDAsync(Dictionary<long, float> p1, Dictionary<long, float> p2, - Action<MyClass_OpLongFloatDResult> response, Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpLongFloatDResult> + opLongFloatDAsync(Dictionary<long, float> p1, Dictionary<long, float> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<long, float>(); - foreach(var e in p1) + foreach(KeyValuePair<long, float> e in p1) { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<long, float> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpLongFloatDResult(r, p3)); + + return Task.FromResult<MyClass_OpLongFloatDResult>(new MyClass_OpLongFloatDResult(r, p3)); } - public void - opMyClassAsync(MyClassPrx p1, Action<MyClass_OpMyClassResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpMyClassResult> + opMyClassAsync(MyClassPrx p1, Ice.Current current) { var p2 = p1; var p3 = MyClassPrxHelper.uncheckedCast(current.adapter.createProxy( Ice.Util.stringToIdentity("noSuchIdentity"))); - response(new MyClass_OpMyClassResult( - MyClassPrxHelper.uncheckedCast(current.adapter.createProxy(current.id)), p2, p3)); + return Task.FromResult<MyClass_OpMyClassResult>(new MyClass_OpMyClassResult( + MyClassPrxHelper.uncheckedCast(current.adapter.createProxy(current.id)), p2, p3)); } - public void - opMyEnumAsync(MyEnum p1, Action<MyClass_OpMyEnumResult> response, Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpMyEnumResult> + opMyEnumAsync(MyEnum p1, Ice.Current current) { - response(new MyClass_OpMyEnumResult(MyEnum.enum3, p1)); + return Task.FromResult<MyClass_OpMyEnumResult>(new MyClass_OpMyEnumResult(MyEnum.enum3, p1)); } - public void - opShortIntDAsync(Dictionary<short, int> p1, Dictionary<short, int> p2, Action<MyClass_OpShortIntDResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpShortIntDResult> + opShortIntDAsync(Dictionary<short, int> p1, Dictionary<short, int> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<short, int>(); - foreach(var e in p1) + foreach(KeyValuePair<short, int> e in p1) { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<short, int> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpShortIntDResult(r, p3)); + return Task.FromResult<MyClass_OpShortIntDResult>(new MyClass_OpShortIntDResult(r, p3)); } - public void - opShortIntLongAsync(short p1, int p2, long p3, Action<MyClass_OpShortIntLongResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpShortIntLongResult> + opShortIntLongAsync(short p1, int p2, long p3, Ice.Current current) { - response(new MyClass_OpShortIntLongResult(p3, p1, p2, p3)); + return Task.FromResult<MyClass_OpShortIntLongResult>(new MyClass_OpShortIntLongResult(p3, p1, p2, p3)); } - public void - opShortIntLongSAsync(short[] p1, int[] p2, long[] p3, Action<MyClass_OpShortIntLongSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpShortIntLongSResult> + opShortIntLongSAsync(short[] p1, int[] p2, long[] p3, Ice.Current current) { var p4 = p1; var p5 = new int[p2.Length]; - for(var i = 0; i < p2.Length; i++) + for(int i = 0; i < p2.Length; i++) { p5[i] = p2[p2.Length - (i + 1)]; } var p6 = new long[p3.Length + p3.Length]; Array.Copy(p3, p6, p3.Length); Array.Copy(p3, 0, p6, p3.Length, p3.Length); - response(new MyClass_OpShortIntLongSResult(p3, p4, p5, p6)); + return Task.FromResult<MyClass_OpShortIntLongSResult>(new MyClass_OpShortIntLongSResult(p3, p4, p5, p6)); } - public void - opShortIntLongSSAsync(short[][] p1, int[][] p2, long[][] p3, Action<MyClass_OpShortIntLongSSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpShortIntLongSSResult> + opShortIntLongSSAsync(short[][] p1, int[][] p2, long[][] p3, Ice.Current current) { var p4 = p1; + var p5 = new int[p2.Length][]; - for(var i = 0; i < p2.Length; i++) + for(int i = 0; i < p2.Length; i++) { p5[i] = p2[p2.Length - (i + 1)]; } + var p6 = new long[p3.Length + p3.Length][]; Array.Copy(p3, p6, p3.Length); Array.Copy(p3, 0, p6, p3.Length, p3.Length); - response(new MyClass_OpShortIntLongSSResult(p3, p4, p5, p6)); + return Task.FromResult<MyClass_OpShortIntLongSSResult>(new MyClass_OpShortIntLongSSResult(p3, p4, p5, p6)); } - public void - opStringAsync(string p1, string p2, Action<MyClass_OpStringResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringResult> + opStringAsync(string p1, string p2, Ice.Current current) { - response(new MyClass_OpStringResult(p1 + " " + p2, p2 + " " + p1)); + return Task.FromResult<MyClass_OpStringResult>(new MyClass_OpStringResult(p1 + " " + p2, p2 + " " + p1)); } - public void - opStringMyEnumDAsync(Dictionary<string, MyEnum> p1, Dictionary<string, MyEnum> p2, - Action<MyClass_OpStringMyEnumDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringMyEnumDResult> + opStringMyEnumDAsync(Dictionary<string, MyEnum> p1, Dictionary<string, MyEnum> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<string, Test.MyEnum>(); - foreach(var e in p1) + foreach(KeyValuePair<string, Test.MyEnum> e in p1) { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<string, Test.MyEnum> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpStringMyEnumDResult(r, p3)); + return Task.FromResult<MyClass_OpStringMyEnumDResult>(new MyClass_OpStringMyEnumDResult(r, p3)); } - public void - opMyEnumStringDAsync(Dictionary<MyEnum, string> p1, Dictionary<MyEnum, string> p2, - Action<MyClass_OpMyEnumStringDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpMyEnumStringDResult> + opMyEnumStringDAsync(Dictionary<MyEnum, string> p1, Dictionary<MyEnum, string> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<MyEnum, string>(); @@ -368,19 +349,16 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<MyEnum, string> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpMyEnumStringDResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumStringDResult>(new MyClass_OpMyEnumStringDResult(r, p3)); } - public void + public Task<MyClass_OpMyStructMyEnumDResult> opMyStructMyEnumDAsync(Dictionary<MyStruct, MyEnum> p1, - Dictionary<MyStruct, MyEnum> p2, - Action<MyClass_OpMyStructMyEnumDResult> response, - Action<Exception> exception, - Ice.Current current) + Dictionary<MyStruct, MyEnum> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<MyStruct, MyEnum>(); @@ -392,127 +370,116 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpMyStructMyEnumDResult(r, p3)); + return Task.FromResult<MyClass_OpMyStructMyEnumDResult>(new MyClass_OpMyStructMyEnumDResult(r, p3)); } - public void - opByteBoolDSAsync(Dictionary<byte, bool>[] p1, - Dictionary<byte, bool>[] p2, - Action<MyClass_OpByteBoolDSResult> response, - Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpByteBoolDSResult> + opByteBoolDSAsync(Dictionary<byte, bool>[] p1, Dictionary<byte, bool>[] p2, Ice.Current current) { var p3 = new Dictionary<byte, bool>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<byte, bool>[p1.Length]; - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpByteBoolDSResult(r, p3)); + return Task.FromResult<MyClass_OpByteBoolDSResult>(new MyClass_OpByteBoolDSResult(r, p3)); } - public void - opShortIntDSAsync(Dictionary<short, int>[] p1, Dictionary<short, int>[] p2, - Action<MyClass_OpShortIntDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpShortIntDSResult> + opShortIntDSAsync(Dictionary<short, int>[] p1, Dictionary<short, int>[] p2, Ice.Current current) { var p3 = new Dictionary<short, int>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<short, int>[p1.Length]; - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpShortIntDSResult(r, p3)); + return Task.FromResult<MyClass_OpShortIntDSResult>(new MyClass_OpShortIntDSResult(r, p3)); } - public void - opLongFloatDSAsync(Dictionary<long, float>[] p1, Dictionary<long, float>[] p2, - Action<MyClass_OpLongFloatDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpLongFloatDSResult> + opLongFloatDSAsync(Dictionary<long, float>[] p1, Dictionary<long, float>[] p2, Ice.Current current) { var p3 = new Dictionary<long, float>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<long, float>[p1.Length]; - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpLongFloatDSResult(r, p3)); + return Task.FromResult<MyClass_OpLongFloatDSResult>(new MyClass_OpLongFloatDSResult(r, p3)); } - public void - opStringStringDSAsync(Dictionary<string, string>[] p1, Dictionary<string, string>[] p2, - Action<MyClass_OpStringStringDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringStringDSResult> + opStringStringDSAsync(Dictionary<string, string>[] p1, Dictionary<string, string>[] p2, Ice.Current current) { var p3 = new Dictionary<string, string>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<string, string>[p1.Length]; - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringStringDSResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringDSResult>(new MyClass_OpStringStringDSResult(r, p3)); } - public void - opStringMyEnumDSAsync(Dictionary<string, MyEnum>[] p1, Dictionary<string, MyEnum>[] p2, - Action<MyClass_OpStringMyEnumDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringMyEnumDSResult> + opStringMyEnumDSAsync(Dictionary<string, MyEnum>[] p1, Dictionary<string, MyEnum>[] p2, Ice.Current current) { var p3 = new Dictionary<string, MyEnum>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<string, MyEnum>[p1.Length]; for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringMyEnumDSResult(r, p3)); + return Task.FromResult<MyClass_OpStringMyEnumDSResult>(new MyClass_OpStringMyEnumDSResult(r, p3)); } - public void - opMyEnumStringDSAsync(Dictionary<MyEnum, string>[] p1, Dictionary<MyEnum, string>[] p2, - Action<MyClass_OpMyEnumStringDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpMyEnumStringDSResult> + opMyEnumStringDSAsync(Dictionary<MyEnum, string>[] p1, Dictionary<MyEnum, string>[] p2, Ice.Current current) { var p3 = new Dictionary<MyEnum, string>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<MyEnum, string>[p1.Length]; - for(var i = 0; i < p1.Length; i++) + for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpMyEnumStringDSResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumStringDSResult>(new MyClass_OpMyEnumStringDSResult(r, p3)); } - public void - opMyStructMyEnumDSAsync(Dictionary<MyStruct, MyEnum>[] p1, Dictionary<MyStruct, MyEnum>[] p2, - Action<MyClass_OpMyStructMyEnumDSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpMyStructMyEnumDSResult> + opMyStructMyEnumDSAsync(Dictionary<MyStruct, MyEnum>[] p1, Dictionary<MyStruct, MyEnum>[] p2, Ice.Current current) { - var p3 = new Dictionary<Test.MyStruct, MyEnum>[p1.Length + p2.Length]; + var p3 = new Dictionary<MyStruct, MyEnum>[p1.Length + p2.Length]; Array.Copy(p2, p3, p2.Length); Array.Copy(p1, 0, p3, p2.Length, p1.Length); + var r = new Dictionary<MyStruct, MyEnum>[p1.Length]; for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpMyStructMyEnumDSResult(r, p3)); + return Task.FromResult<MyClass_OpMyStructMyEnumDSResult>(new MyClass_OpMyStructMyEnumDSResult(r, p3)); } - public void - opByteByteSDAsync(Dictionary<byte, byte[]> p1, Dictionary<byte, byte[]> p2, - Action<MyClass_OpByteByteSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpByteByteSDResult> + opByteByteSDAsync(Dictionary<byte, byte[]> p1, Dictionary<byte, byte[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<byte, byte[]>(); @@ -524,31 +491,27 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpByteByteSDResult(r, p3)); + return Task.FromResult<MyClass_OpByteByteSDResult>(new MyClass_OpByteByteSDResult(r, p3)); } - public void - opBoolBoolSDAsync(Dictionary<bool, bool[]> p1, Dictionary<bool, bool[]> p2, - Action<MyClass_OpBoolBoolSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpBoolBoolSDResult> + opBoolBoolSDAsync(Dictionary<bool, bool[]> p1, Dictionary<bool, bool[]> p2, Ice.Current current) { - var p3 = p2; + var p3 = p2; var r = new Dictionary<bool, bool[]>(); - foreach(var e in p1) + foreach(KeyValuePair<bool, bool[]> e in p1) { r[e.Key] = e.Value; } - foreach(var e in p2) + foreach(KeyValuePair<bool, bool[]> e in p2) { r[e.Key] = e.Value; } - response(new MyClass_OpBoolBoolSDResult(r, p3)); + return Task.FromResult<MyClass_OpBoolBoolSDResult>(new MyClass_OpBoolBoolSDResult(r, p3)); } - public void - opShortShortSDAsync(Dictionary<short, short[]> p1, Dictionary<short, short[]> p2, - Action<MyClass_OpShortShortSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpShortShortSDResult> + opShortShortSDAsync(Dictionary<short, short[]> p1, Dictionary<short, short[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<short, short[]>(); @@ -560,13 +523,11 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpShortShortSDResult(r, p3)); + return Task.FromResult<MyClass_OpShortShortSDResult>(new MyClass_OpShortShortSDResult(r, p3)); } - public void - opIntIntSDAsync(Dictionary<int, int[]> p1, Dictionary<int, int[]> p2, - Action<MyClass_OpIntIntSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpIntIntSDResult> + opIntIntSDAsync(Dictionary<int, int[]> p1, Dictionary<int, int[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<int, int[]>(); @@ -578,13 +539,11 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpIntIntSDResult(r, p3)); + return Task.FromResult<MyClass_OpIntIntSDResult>(new MyClass_OpIntIntSDResult(r, p3)); } - public void - opLongLongSDAsync(Dictionary<long, long[]> p1, Dictionary<long, long[]> p2, - Action<MyClass_OpLongLongSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpLongLongSDResult> + opLongLongSDAsync(Dictionary<long, long[]> p1, Dictionary<long, long[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<long, long[]>(); @@ -596,13 +555,11 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpLongLongSDResult(r, p3)); + return Task.FromResult<MyClass_OpLongLongSDResult>(new MyClass_OpLongLongSDResult(r, p3)); } - public void - opStringFloatSDAsync(Dictionary<string, float[]> p1, Dictionary<string, float[]> p2, - Action<MyClass_OpStringFloatSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringFloatSDResult> + opStringFloatSDAsync(Dictionary<string, float[]> p1, Dictionary<string, float[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, float[]>(); @@ -614,13 +571,11 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringFloatSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringFloatSDResult>(new MyClass_OpStringFloatSDResult(r, p3)); } - public void - opStringDoubleSDAsync(Dictionary<string, double[]> p1, Dictionary<string, double[]> p2, - Action<MyClass_OpStringDoubleSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringDoubleSDResult> + opStringDoubleSDAsync(Dictionary<string, double[]> p1, Dictionary<string, double[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, double[]>(); @@ -632,13 +587,11 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringDoubleSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringDoubleSDResult>(new MyClass_OpStringDoubleSDResult(r, p3)); } - public void - opStringStringSDAsync(Dictionary<string, string[]> p1, Dictionary<string, string[]> p2, - Action<MyClass_OpStringStringSDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringStringSDResult> + opStringStringSDAsync(Dictionary<string, string[]> p1, Dictionary<string, string[]> p2, Ice.Current current) { var p3 = p2; var r = new Dictionary<string, string[]>(); @@ -650,16 +603,14 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringStringSDResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringSDResult>(new MyClass_OpStringStringSDResult(r, p3)); } - public void - opMyEnumMyEnumSDAsync(Dictionary<MyEnum, MyEnum[]> p1, Dictionary<MyEnum, MyEnum[]> p2, - Action<MyClass_OpMyEnumMyEnumSDResult> response, Action<Exception> exception, - Ice.Current ice) + public Task<MyClass_OpMyEnumMyEnumSDResult> + opMyEnumMyEnumSDAsync(Dictionary<MyEnum, MyEnum[]> p1, Dictionary<MyEnum, MyEnum[]> p2, Ice.Current current) { var p3 = p2; - var r = new Dictionary<MyEnum, MyEnum[]>(); + var r = new Dictionary<Test.MyEnum, Test.MyEnum[]>(); foreach(var e in p1) { r[e.Key] = e.Value; @@ -668,76 +619,76 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpMyEnumMyEnumSDResult(r, p3)); + return Task.FromResult<MyClass_OpMyEnumMyEnumSDResult>(new MyClass_OpMyEnumMyEnumSDResult(r, p3)); } - public void opIntSAsync(int[] s, Action<int[]> response, Action<Exception> exception, Ice.Current current) + public Task<int[]> + opIntSAsync(int[] s, Ice.Current current) { var r = new int[s.Length]; - for(var i = 0; i < s.Length; ++i) + for(int i = 0; i < s.Length; ++i) { r[i] = -s[i]; } - response(r); + return Task.FromResult<int[]>(r); } - public void - opContextAsync(Action<Dictionary<string, string>> response, Action<Exception> exception, Ice.Current current) + public Task<Dictionary<string, string>> + opContextAsync(Ice.Current current) { - response(current.ctx); + return Task.FromResult<Dictionary<string, string>>(current.ctx); } - public void - opByteSOnewayAsync(byte[] s, Action response, Action<Exception> exception, Ice.Current current) + public Task + opByteSOnewayAsync(byte[] s, Ice.Current current) { lock(this) { ++_opByteSOnewayCallCount; } - response(); + return null; } - public void - opByteSOnewayCallCountAsync(Action<int> response, Action<Exception> exception, Ice.Current current) + public Task<int> + opByteSOnewayCallCountAsync(Ice.Current current) { lock(this) { var count = _opByteSOnewayCallCount; _opByteSOnewayCallCount = 0; - response(count); + return Task.FromResult<int>(count); } } - public void - opDoubleMarshalingAsync(double p1, double[] p2, Action response, Action<Exception> exceptin, Ice.Current current) + public Task + opDoubleMarshalingAsync(double p1, double[] p2, Ice.Current current) { var d = 1278312346.0 / 13.0; test(p1 == d); - for(var i = 0; i < p2.Length; ++i) + for(int i = 0; i < p2.Length; ++i) { test(p2[i] == d); } - response(); + return null; } - public void - opStringSAsync(string[] p1, string[] p2, Action<MyClass_OpStringSResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringSResult> + opStringSAsync(string[] p1, string[] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length]; Array.Copy(p1, p3, p1.Length); Array.Copy(p2, 0, p3, p1.Length, p2.Length); + var r = new string[p1.Length]; for(int i = 0; i < p1.Length; i++) { r[i] = p1[p1.Length - (i + 1)]; } - response(new MyClass_OpStringSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSResult>(new MyClass_OpStringSResult(r, p3)); } - public void - opStringSSAsync(string[][] p1, string[][] p2, Action<MyClass_OpStringSSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpStringSSResult> + opStringSSAsync(string[][] p1, string[][] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length][]; Array.Copy(p1, p3, p1.Length); @@ -747,28 +698,26 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[i] = p2[p2.Length - (i + 1)]; } - response(new MyClass_OpStringSSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSSResult>(new MyClass_OpStringSSResult(r, p3)); } - public void - opStringSSSAsync(string[][][] p1, string[][][] p2, Action<MyClass_OpStringSSSResult> response, - Action<Exception> exception, Ice.Current current) + public Task<MyClass_OpStringSSSResult> + opStringSSSAsync(string[][][] p1, string[][][] p2, Ice.Current current) { var p3 = new string[p1.Length + p2.Length][][]; Array.Copy(p1, p3, p1.Length); Array.Copy(p2, 0, p3, p1.Length, p2.Length); + var r = new string[p2.Length][][]; - for(var i = 0; i < p2.Length; i++) + for(int i = 0; i < p2.Length; i++) { r[i] = p2[p2.Length - (i + 1)]; } - response(new MyClass_OpStringSSSResult(r, p3)); + return Task.FromResult<MyClass_OpStringSSSResult>(new MyClass_OpStringSSSResult(r, p3)); } - public void - opStringStringDAsync(Dictionary<string, string> p1, Dictionary<string, string> p2, - Action<MyClass_OpStringStringDResult> response, Action<Exception> exception, - Ice.Current current) + public Task<MyClass_OpStringStringDResult> + opStringStringDAsync(Dictionary<string, string> p1, Dictionary<string, string> p2, Ice.Current current) { var p3 = p1; var r = new Dictionary<string, string>(); @@ -780,119 +729,120 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ { r[e.Key] = e.Value; } - response(new MyClass_OpStringStringDResult(r, p3)); + return Task.FromResult<MyClass_OpStringStringDResult>(new MyClass_OpStringStringDResult(r, p3)); } - public void - opStructAsync(Structure p1, Structure p2, Action<MyClass_OpStructResult> response, Action<Exception> exeption, - Ice.Current current) + public Task<MyClass_OpStructResult> + opStructAsync(Structure p1, Structure p2, Ice.Current current) { var p3 = p1; p3.s.s = "a new string"; - response(new MyClass_OpStructResult(p2, p3)); + return Task.FromResult<MyClass_OpStructResult>(new MyClass_OpStructResult(p2, p3)); } - public void opIdempotentAsync(Action response, Action<Exception> exception, Ice.Current current) + public Task + opIdempotentAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Idempotent); - response(); + return null; } - public void opNonmutatingAsync(Action response, Action<Exception> exception, Ice.Current current) + public Task + opNonmutatingAsync(Ice.Current current) { test(current.mode == Ice.OperationMode.Nonmutating); - response(); + return null; } - public void opDerivedAsync(Action response, Action<Exception> exception, Ice.Current current) + public Task + opDerivedAsync(Ice.Current current) { - response(); + return null; } - public void - opByte1Async(byte value, Action<byte> response, Action<Exception> exception, Ice.Current current) + public Task<byte> + opByte1Async(byte value, Ice.Current current) { - response(value); + return Task.FromResult<byte>(value); } - public void - opShort1Async(short value, Action<short> response, Action<Exception> exception, Ice.Current current) + public Task<short> + opShort1Async(short value, Ice.Current current) { - response(value); + return Task.FromResult<short>(value); } - public void opInt1Async(int value, Action<int> response, Action<Exception> exception, Ice.Current current) + public Task<int> + opInt1Async(int value, Ice.Current current) { - response(value); + return Task.FromResult<int>(value); } - public void - opLong1Async(long value, Action<long> response, Action<Exception> exception, Ice.Current current) + public Task<long> + opLong1Async(long value, Ice.Current current) { - response(value); + return Task.FromResult<long>(value); } - public void - opFloat1Async(float value, Action<float> response, Action<Exception> exception, Ice.Current current) + public Task<float> + opFloat1Async(float value, Ice.Current current) { - response(value); + return Task.FromResult<float>(value); } - public void - opDouble1Async(double value, Action<double> response, Action<Exception> exception, Ice.Current current) + public Task<double> + opDouble1Async(double value, Ice.Current current) { - response(value); + return Task.FromResult<double>(value); } - public void - opString1Async(string value, Action<string> response, Action<Exception> exception, Ice.Current current) + public Task<string> + opString1Async(string value, Ice.Current current) { - response(value); + return Task.FromResult<string>(value); } - public void - opStringS1Async(string[] value, Action<string[]> response, Action<Exception> exception, Ice.Current current) + public Task<string[]> + opStringS1Async(string[] value, Ice.Current current) { - response(value); + return Task.FromResult<string[]>(value); } - public void - opByteBoolD1Async(Dictionary<byte, bool> value, Action<Dictionary<byte, bool>> response, - Action<Exception> exception, Ice.Current current) + public Task<Dictionary<byte, bool>> + opByteBoolD1Async(Dictionary<byte, bool> value, Ice.Current current) { - response(value); + return Task.FromResult<Dictionary<byte, bool>>(value); } - public void - opStringS2Async(string[] value, Action<string[]> response, Action<Exception> exception, Ice.Current current) + public Task<string[]> + opStringS2Async(string[] value, Ice.Current current) { - response(value); + return Task.FromResult<string[]>(value); } - public void - opByteBoolD2Async(Dictionary<byte, bool> value, Action<Dictionary<byte, bool>> response, - Action<Exception> exception, Ice.Current current) + public Task<Dictionary<byte, bool>> + opByteBoolD2Async(Dictionary<byte, bool> value, Ice.Current current) { - response(value); + return Task.FromResult<Dictionary<byte, bool>>(value); } - public void - opMyClass1Async(MyClass1 value, Action<MyClass1> response, Action<Exception> exception, Ice.Current current) + public Task<MyClass1> + opMyClass1Async(MyClass1 value, Ice.Current current) { - response(value); + return Task.FromResult<MyClass1>(value); } - public void - opMyStruct1Async(MyStruct1 value, Action<MyStruct1> response, Action<Exception> exception, Ice.Current current) + public Task<MyStruct1> + opMyStruct1Async(MyStruct1 value, Ice.Current current) { - response(value); + return Task.FromResult<MyStruct1>(value); } - public void - opStringLiteralsAsync(Action<string[]> response, Action<Exception> exception, Ice.Current current) + public Task<string[]> + opStringLiteralsAsync(Ice.Current current) { - response(new string[] + return Task.FromResult<string[]>(new string[] { s0.value, s1.value, @@ -931,10 +881,10 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ }); } - public void - opWStringLiteralsAsync(Action<string[]> response, Action<Exception> exception, Ice.Current current) + public Task<string[]> + opWStringLiteralsAsync(Ice.Current current) { - response(new string[] + return Task.FromResult<string[]>(new string[] { s0.value, s1.value, @@ -973,6 +923,48 @@ public sealed class MyDerivedClassTieI : MyDerivedClassOperations_ }); } + public async Task<Test.MyClass_OpMStruct1MarshaledResult> + opMStruct1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMStruct1MarshaledResult(new Test.Structure(), current); + } + + public async Task<Test.MyClass_OpMStruct2MarshaledResult> + opMStruct2Async(Test.Structure p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMStruct2MarshaledResult(p1, p1, current); + } + + public async Task<Test.MyClass_OpMSeq1MarshaledResult> + opMSeq1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMSeq1MarshaledResult(new string[0], current); + } + + public async Task<Test.MyClass_OpMSeq2MarshaledResult> + opMSeq2Async(string[] p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMSeq2MarshaledResult(p1, p1, current); + } + + public async Task<Test.MyClass_OpMDict1MarshaledResult> + opMDict1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMDict1MarshaledResult(new Dictionary<string, string>(), current); + } + + public async Task<Test.MyClass_OpMDict2MarshaledResult> + opMDict2Async(Dictionary<string, string> p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.MyClass_OpMDict2MarshaledResult(p1, p1, current); + } + private Thread_opVoid _opVoidThread; private int _opByteSOnewayCallCount = 0; } diff --git a/csharp/test/Ice/operations/MyDerivedClassI.cs b/csharp/test/Ice/operations/MyDerivedClassI.cs index 85870a00c53..74685384fb1 100644 --- a/csharp/test/Ice/operations/MyDerivedClassI.cs +++ b/csharp/test/Ice/operations/MyDerivedClassI.cs @@ -53,11 +53,6 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ current.adapter.getCommunicator().shutdown(); } - public override void delay(int ms, Ice.Current current) - { - System.Threading.Thread.Sleep(ms); - } - public override void opVoid(Ice.Current current) { test(current.mode == Ice.OperationMode.Normal); @@ -764,72 +759,72 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ public override void opDerived(Ice.Current current) { } - + public override byte opByte1(byte opByte1, Ice.Current current) { return opByte1; } - + public override short opShort1(short opShort1, Ice.Current current) { return opShort1; } - + public override int opInt1(int opInt1, Ice.Current current) { return opInt1; } - + public override long opLong1(long opLong1, Ice.Current current) { return opLong1; } - + public override float opFloat1(float opFloat1, Ice.Current current) { return opFloat1; } - + public override double opDouble1(double opDouble1, Ice.Current current) { return opDouble1; } - + public override string opString1(string opString1, Ice.Current current) { return opString1; } - + public override string[] opStringS1(string[] opStringS1, Ice.Current current) { return opStringS1; } - + public override Dictionary<byte, bool> opByteBoolD1(Dictionary<byte, bool> opByteBoolD1, Ice.Current current) { return opByteBoolD1; } - + public override string[] opStringS2(string[] opStringS2, Ice.Current current) { return opStringS2; } - + public override Dictionary<byte, bool> opByteBoolD2(Dictionary<byte, bool> opByteBoolD2, Ice.Current current) { return opByteBoolD2; } - + public override Test.MyClass1 opMyClass1(Test.MyClass1 c, Ice.Current current) { return c; } - + public override Test.MyStruct1 opMyStruct1(Test.MyStruct1 s, Ice.Current current) { return s; } - + public override string[] opStringLiterals(Ice.Current current) { return new string[] @@ -845,7 +840,7 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ Test.s8.value, Test.s9.value, Test.s10.value, - + Test.sw0.value, Test.sw1.value, Test.sw2.value, @@ -857,24 +852,54 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ Test.sw8.value, Test.sw9.value, Test.sw10.value, - + Test.ss0.value, Test.ss1.value, Test.ss2.value, Test.ss3.value, Test.ss4.value, Test.ss5.value, - + Test.su0.value, Test.su1.value, Test.su2.value }; } - + public override string[] opWStringLiterals(Ice.Current current) { return opStringLiterals(current); } + public override Test.MyClass_OpMStruct1MarshaledResult opMStruct1(Ice.Current current) + { + return new Test.MyClass_OpMStruct1MarshaledResult(new Test.Structure(), current); + } + + public override Test.MyClass_OpMStruct2MarshaledResult opMStruct2(Test.Structure p1, Ice.Current current) + { + return new Test.MyClass_OpMStruct2MarshaledResult(p1, p1, current); + } + + public override Test.MyClass_OpMSeq1MarshaledResult opMSeq1(Ice.Current current) + { + return new Test.MyClass_OpMSeq1MarshaledResult(new string[0], current); + } + + public override Test.MyClass_OpMSeq2MarshaledResult opMSeq2(string[] p1, Ice.Current current) + { + return new Test.MyClass_OpMSeq2MarshaledResult(p1, p1, current); + } + + public override Test.MyClass_OpMDict1MarshaledResult opMDict1(Ice.Current current) + { + return new Test.MyClass_OpMDict1MarshaledResult(new Dictionary<string, string>(), current); + } + + public override Test.MyClass_OpMDict2MarshaledResult opMDict2(Dictionary<string, string> p1, Ice.Current current) + { + return new Test.MyClass_OpMDict2MarshaledResult(p1, p1, current); + } + private int _opByteSOnewayCallCount = 0; } diff --git a/csharp/test/Ice/operations/MyDerivedClassTieI.cs b/csharp/test/Ice/operations/MyDerivedClassTieI.cs index 9d349e125f8..75e0669cdbf 100644 --- a/csharp/test/Ice/operations/MyDerivedClassTieI.cs +++ b/csharp/test/Ice/operations/MyDerivedClassTieI.cs @@ -32,11 +32,6 @@ public sealed class MyDerivedClassTieI : Test.MyDerivedClassOperations_ current.adapter.getCommunicator().shutdown(); } - public void delay(int ms, Ice.Current current) - { - System.Threading.Thread.Sleep(ms); - } - public void opVoid(Ice.Current current) { test(current.mode == Ice.OperationMode.Normal); @@ -739,72 +734,72 @@ public sealed class MyDerivedClassTieI : Test.MyDerivedClassOperations_ public void opDerived(Ice.Current current) { } - + public byte opByte1(byte opByte1, Ice.Current current) { return opByte1; } - + public short opShort1(short opShort1, Ice.Current current) { return opShort1; } - + public int opInt1(int opInt1, Ice.Current current) { return opInt1; } - + public long opLong1(long opLong1, Ice.Current current) { return opLong1; } - + public float opFloat1(float opFloat1, Ice.Current current) { return opFloat1; } - + public double opDouble1(double opDouble1, Ice.Current current) { return opDouble1; } - + public string opString1(string opString1, Ice.Current current) { return opString1; } - + public string[] opStringS1(string[] opStringS1, Ice.Current current) { return opStringS1; } - + public Dictionary<byte, bool> opByteBoolD1(Dictionary<byte, bool> opByteBoolD1, Ice.Current current) { return opByteBoolD1; } - + public string[] opStringS2(string[] opStringS2, Ice.Current current) { return opStringS2; } - + public Dictionary<byte, bool> opByteBoolD2(Dictionary<byte, bool> opByteBoolD2, Ice.Current current) { return opByteBoolD2; } - + public Test.MyClass1 opMyClass1(Test.MyClass1 c, Ice.Current current) { return c; } - + public Test.MyStruct1 opMyStruct1(Test.MyStruct1 s, Ice.Current current) { return s; } - + public string[] opStringLiterals(Ice.Current current) { return new string[] @@ -820,7 +815,7 @@ public sealed class MyDerivedClassTieI : Test.MyDerivedClassOperations_ Test.s8.value, Test.s9.value, Test.s10.value, - + Test.sw0.value, Test.sw1.value, Test.sw2.value, @@ -832,14 +827,14 @@ public sealed class MyDerivedClassTieI : Test.MyDerivedClassOperations_ Test.sw8.value, Test.sw9.value, Test.sw10.value, - + Test.ss0.value, Test.ss1.value, Test.ss2.value, Test.ss3.value, Test.ss4.value, Test.ss5.value, - + Test.su0.value, Test.su1.value, Test.su2.value @@ -851,5 +846,35 @@ public sealed class MyDerivedClassTieI : Test.MyDerivedClassOperations_ return opStringLiterals(current); } + public Test.MyClass_OpMStruct1MarshaledResult opMStruct1(Ice.Current current) + { + return new Test.MyClass_OpMStruct1MarshaledResult(new Test.Structure(), current); + } + + public Test.MyClass_OpMStruct2MarshaledResult opMStruct2(Test.Structure p1, Ice.Current current) + { + return new Test.MyClass_OpMStruct2MarshaledResult(p1, p1, current); + } + + public Test.MyClass_OpMSeq1MarshaledResult opMSeq1(Ice.Current current) + { + return new Test.MyClass_OpMSeq1MarshaledResult(new string[0], current); + } + + public Test.MyClass_OpMSeq2MarshaledResult opMSeq2(string[] p1, Ice.Current current) + { + return new Test.MyClass_OpMSeq2MarshaledResult(p1, p1, current); + } + + public Test.MyClass_OpMDict1MarshaledResult opMDict1(Ice.Current current) + { + return new Test.MyClass_OpMDict1MarshaledResult(new Dictionary<string, string>(), current); + } + + public Test.MyClass_OpMDict2MarshaledResult opMDict2(Dictionary<string, string> p1, Ice.Current current) + { + return new Test.MyClass_OpMDict2MarshaledResult(p1, p1, current); + } + private int _opByteSOnewayCallCount = 0; } diff --git a/csharp/test/Ice/operations/Test.ice b/csharp/test/Ice/operations/Test.ice index 15867efb92f..35868e631c1 100644 --- a/csharp/test/Ice/operations/Test.ice +++ b/csharp/test/Ice/operations/Test.ice @@ -97,8 +97,6 @@ class MyClass { void shutdown(); - void delay(int ms); - void opVoid(); byte opByte(byte p1, byte p2, @@ -254,6 +252,15 @@ class MyClass StringS opStringLiterals(); StringS opWStringLiterals(); + + ["marshaled-result"] Structure opMStruct1(); + ["marshaled-result"] Structure opMStruct2(Structure p1, out Structure p2); + + ["marshaled-result"] StringS opMSeq1(); + ["marshaled-result"] StringS opMSeq2(StringS p1, out StringS p2); + + ["marshaled-result"] StringStringD opMDict1(); + ["marshaled-result"] StringStringD opMDict2(StringStringD p1, out StringStringD p2); }; struct MyStruct1 @@ -273,8 +280,8 @@ class MyClass1 class MyDerivedClass extends MyClass { void opDerived(); - MyClass1 opMyClass1(MyClass1 c); - MyStruct1 opMyStruct1(MyStruct1 s); + MyClass1 opMyClass1(MyClass1 opMyClass1); + MyStruct1 opMyStruct1(MyStruct1 opMyStruct1); }; // diff --git a/csharp/test/Ice/operations/TestAMD.ice b/csharp/test/Ice/operations/TestAMD.ice index ee686962e46..37ab81376d2 100644 --- a/csharp/test/Ice/operations/TestAMD.ice +++ b/csharp/test/Ice/operations/TestAMD.ice @@ -95,8 +95,6 @@ dictionary<MyEnum, MyEnumS> MyEnumMyEnumSD; { void shutdown(); - void delay(int ms); - void opVoid(); byte opByte(byte p1, byte p2, @@ -252,6 +250,15 @@ dictionary<MyEnum, MyEnumS> MyEnumMyEnumSD; StringS opStringLiterals(); StringS opWStringLiterals(); + + ["marshaled-result"] Structure opMStruct1(); + ["marshaled-result"] Structure opMStruct2(Structure p1, out Structure p2); + + ["marshaled-result"] StringS opMSeq1(); + ["marshaled-result"] StringS opMSeq2(StringS p1, out StringS p2); + + ["marshaled-result"] StringStringD opMDict1(); + ["marshaled-result"] StringStringD opMDict2(StringStringD p1, out StringStringD p2); }; struct MyStruct1 @@ -271,13 +278,8 @@ class MyClass1 ["amd"] class MyDerivedClass extends MyClass { void opDerived(); - MyClass1 opMyClass1(MyClass1 c); - MyStruct1 opMyStruct1(MyStruct1 s); -}; - -["amd"] interface TestCheckedCast -{ - Ice::Context getContext(); + MyClass1 opMyClass1(MyClass1 opMyClass1); + MyStruct1 opMyStruct1(MyStruct1 opMyStruct1); }; // diff --git a/csharp/test/Ice/operations/Twoways.cs b/csharp/test/Ice/operations/Twoways.cs index 62052f924d5..754bee63c67 100644 --- a/csharp/test/Ice/operations/Twoways.cs +++ b/csharp/test/Ice/operations/Twoways.cs @@ -54,9 +54,8 @@ class Twoways internal static void twoways(Ice.Communicator communicator, Test.MyClassPrx p) { - string[] literals = p.opStringLiterals(); - + test(Test.s0.value.Equals("\\") && Test.s0.value.Equals(Test.sw0.value) && Test.s0.value.Equals(literals[0]) && @@ -71,8 +70,8 @@ class Twoways Test.s2.value.Equals(Test.sw2.value) && Test.s2.value.Equals(literals[2]) && Test.s2.value.Equals(literals[13])); - - test(Test.s3.value.Equals("A21") && + + test(Test.s3.value.Equals("A21") && Test.s3.value.Equals(Test.sw3.value) && Test.s3.value.Equals(literals[3]) && Test.s3.value.Equals(literals[14])); @@ -101,7 +100,7 @@ class Twoways Test.s8.value.Equals(Test.sw8.value) && Test.s8.value.Equals(literals[8]) && Test.s8.value.Equals(literals[19])); - + test(Test.s9.value.Equals("\U0001F34C") && Test.s9.value.Equals(Test.sw9.value) && Test.s9.value.Equals(literals[9]) && @@ -111,14 +110,14 @@ class Twoways Test.s10.value.Equals(Test.sw10.value) && Test.s10.value.Equals(literals[10]) && Test.s10.value.Equals(literals[21])); - + test(Test.ss0.value.Equals("\'\"\u003f\\\a\b\f\n\r\t\v") && Test.ss0.value.Equals(Test.ss1.value) && Test.ss0.value.Equals(Test.ss2.value) && Test.ss0.value.Equals(literals[22]) && Test.ss0.value.Equals(literals[23]) && Test.ss0.value.Equals(literals[24])); - + test(Test.ss3.value.Equals("\\\\U\\u\\") && Test.ss3.value.Equals(literals[25])); @@ -127,7 +126,7 @@ class Twoways test(Test.ss5.value.Equals("\\u0041\\") && Test.ss5.value.Equals(literals[27])); - + test(Test.su0.value.Equals(Test.su1.value) && Test.su0.value.Equals(Test.su2.value) && Test.su0.value.Equals(literals[28]) && @@ -136,7 +135,7 @@ class Twoways p.ice_ping(); - + test(Test.MyClassPrxHelper.ice_staticId().Equals(Test.MyClass.ice_staticId())); test(Ice.ObjectPrxHelper.ice_staticId().Equals(Ice.ObjectImpl.ice_staticId())); @@ -1513,7 +1512,7 @@ class Twoways { p.opNonmutating(); } - + { test(p.opByte1(0xFF) == 0xFF); test(p.opShort1(0x7FFF) == 0x7FFF); @@ -1526,8 +1525,8 @@ class Twoways test(p.opByteBoolD1(null).Count == 0); test(p.opStringS2(null).Length == 0); test(p.opByteBoolD2(null).Count == 0); - - + + Test.MyDerivedClassPrx d = Test.MyDerivedClassPrxHelper.uncheckedCast(p); Test.MyStruct1 s = new Test.MyStruct1(); s.tesT = "Test.MyStruct1.s"; @@ -1546,5 +1545,33 @@ class Twoways test(c.myClass == null); test(c.myClass1.Equals("Test.MyClass1.myClass1")); } + + { + Test.Structure p1 = p.opMStruct1(); + p1.e = Test.MyEnum.enum3; + Test.Structure p2, p3; + p3 = p.opMStruct2(p1, out p2); + test(p2.Equals(p1) && p3.Equals(p1)); + } + + { + p.opMSeq1(); + + string[] p1 = new string[1]; + p1[0] = "test"; + string[] p2, p3; + p3 = p.opMSeq2(p1, out p2); + test(Ice.CollectionComparer.Equals(p2, p1) && Ice.CollectionComparer.Equals(p3, p1)); + } + + { + p.opMDict1(); + + Dictionary<string, string> p1 = new Dictionary<string, string>(); + p1["test"] = "test"; + Dictionary<string, string> p2, p3; + p3 = p.opMDict2(p1, out p2); + test(Ice.CollectionComparer.Equals(p2, p1) && Ice.CollectionComparer.Equals(p3, p1)); + } } } diff --git a/csharp/test/Ice/operations/TwowaysAMI.cs b/csharp/test/Ice/operations/TwowaysAMI.cs index 73689588663..0e6ed89ce5b 100644 --- a/csharp/test/Ice/operations/TwowaysAMI.cs +++ b/csharp/test/Ice/operations/TwowaysAMI.cs @@ -10,6 +10,7 @@ using System; using System.Diagnostics; using System.Threading; +using System.Threading.Tasks; using System.Collections.Generic; public class TwowaysAMI @@ -53,38 +54,38 @@ public class TwowaysAMI public bool _called; } - + private class GenericCallback<T> : CallbackBase { public GenericCallback(T value) { this._value = value; } - + public void response(T value) { _value = value; _succeeded = true; called(); } - + public void exception(Ice.Exception ex) { _succeeded = false; called(); } - + public bool succeeded() { check(); return _succeeded; } - + public T value() { return _value; } - + private T _value; private bool _succeeded = false; } @@ -3662,5 +3663,34 @@ public class TwowaysAMI }); test(cb.succeeded() && cb.value().Count == 0); } + + Func<Task> task = async () => + { + { + var p1 = await p.opMStruct1Async(); + + p1.e = Test.MyEnum.enum3; + var r = await p.opMStruct2Async(p1); + test(r.p2.Equals(p1) && r.returnValue.Equals(p1)); + } + + { + await p.opMSeq1Async(); + + var p1 = new string[1]; + p1[0] = "test"; + var r = await p.opMSeq2Async(p1); + test(Ice.CollectionComparer.Equals(r.p2, p1) && Ice.CollectionComparer.Equals(r.returnValue, p1)); + } + + { + await p.opMDict1Async(); + + var p1 = new Dictionary<string, string>(); + p1["test"] = "test"; + var r = await p.opMDict2Async(p1); + test(Ice.CollectionComparer.Equals(r.p2, p1) && Ice.CollectionComparer.Equals(r.returnValue, p1)); + } + }; } } diff --git a/csharp/test/Ice/optional/AllTests.cs b/csharp/test/Ice/optional/AllTests.cs index 3179d8ca94a..ad332075000 100644 --- a/csharp/test/Ice/optional/AllTests.cs +++ b/csharp/test/Ice/optional/AllTests.cs @@ -2254,6 +2254,57 @@ public class AllTests : TestCommon.TestApp } } WriteLine("ok"); + + Write("testing optionals with marshaled results... "); + Flush(); + { + test(initial.opMStruct1().HasValue); + test(initial.opMDict1().HasValue); + test(initial.opMSeq1().HasValue); + test(initial.opMG1().HasValue); + + { + Ice.Optional<Test.SmallStruct> p1, p2, p3; + p3 = initial.opMStruct2(Ice.Util.None, out p2); + test(!p2.HasValue && !p3.HasValue); + + p1 = new Test.SmallStruct(); + p3 = initial.opMStruct2(p1, out p2); + test(p2.Value.Equals(p1.Value) && p3.Value.Equals(p1.Value)); + } + { + Ice.Optional<string[]> p1, p2, p3; + p3 = initial.opMSeq2(Ice.Util.None, out p2); + test(!p2.HasValue && !p3.HasValue); + + p1 = new string[1] { "hello" }; + p3 = initial.opMSeq2(p1, out p2); + test(Ice.CollectionComparer.Equals(p2.Value, p1.Value) && + Ice.CollectionComparer.Equals(p3.Value, p1.Value)); + } + { + Ice.Optional<Dictionary<string, int>> p1, p2, p3; + p3 = initial.opMDict2(Ice.Util.None, out p2); + test(!p2.HasValue && !p3.HasValue); + + p1 = new Dictionary<string, int>(); + p1.Value["test"] = 54; + p3 = initial.opMDict2(p1, out p2); + test(Ice.CollectionComparer.Equals(p2.Value, p1.Value) && + Ice.CollectionComparer.Equals(p3.Value, p1.Value)); + } + { + Ice.Optional<Test.G> p1, p2, p3; + p3 = initial.opMG2(Ice.Util.None, out p2); + test(!p2.HasValue && !p3.HasValue); + + p1 = new Test.G(); + p3 = initial.opMG2(p1, out p2); + test(p2.HasValue && p3.HasValue && p3.Value == p2.Value); + } + } + WriteLine("ok"); + return initial; } diff --git a/csharp/test/Ice/optional/Test.ice b/csharp/test/Ice/optional/Test.ice index 9f950d5f071..4d861430528 100644 --- a/csharp/test/Ice/optional/Test.ice +++ b/csharp/test/Ice/optional/Test.ice @@ -290,6 +290,21 @@ class Initial void opVoid(); + ["marshaled-result"] optional(1) SmallStruct opMStruct1(); + ["marshaled-result"] optional(1) SmallStruct opMStruct2(optional(2) SmallStruct p1, + out optional(3)SmallStruct p2); + + ["marshaled-result"] optional(1) StringSeq opMSeq1(); + ["marshaled-result"] optional(1) StringSeq opMSeq2(optional(2) StringSeq p1, + out optional(3) StringSeq p2); + + ["marshaled-result"] optional(1) StringIntDict opMDict1(); + ["marshaled-result"] optional(1) StringIntDict opMDict2(optional(2) StringIntDict p1, + out optional(3) StringIntDict p2); + + ["marshaled-result"] optional(1) G opMG1(); + ["marshaled-result"] optional(1) G opMG2(optional(2) G p1, out optional(3) G p2); + bool supportsRequiredParams(); bool supportsJavaSerializable(); diff --git a/csharp/test/Ice/optional/TestAMD.ice b/csharp/test/Ice/optional/TestAMD.ice index 9ccdbca5562..019a2d760a5 100644 --- a/csharp/test/Ice/optional/TestAMD.ice +++ b/csharp/test/Ice/optional/TestAMD.ice @@ -290,6 +290,21 @@ class Initial void opVoid(); + ["marshaled-result"] optional(1) SmallStruct opMStruct1(); + ["marshaled-result"] optional(1) SmallStruct opMStruct2(optional(2) SmallStruct p1, + out optional(3)SmallStruct p2); + + ["marshaled-result"] optional(1) StringSeq opMSeq1(); + ["marshaled-result"] optional(1) StringSeq opMSeq2(optional(2) StringSeq p1, + out optional(3) StringSeq p2); + + ["marshaled-result"] optional(1) StringIntDict opMDict1(); + ["marshaled-result"] optional(1) StringIntDict opMDict2(optional(2) StringIntDict p1, + out optional(3) StringIntDict p2); + + ["marshaled-result"] optional(1) G opMG1(); + ["marshaled-result"] optional(1) G opMG2(optional(2) G p1, out optional(3) G p2); + bool supportsRequiredParams(); bool supportsJavaSerializable(); diff --git a/csharp/test/Ice/optional/TestAMDI.cs b/csharp/test/Ice/optional/TestAMDI.cs index 08b8fc7ac43..f5293fc9dae 100644 --- a/csharp/test/Ice/optional/TestAMDI.cs +++ b/csharp/test/Ice/optional/TestAMDI.cs @@ -7,38 +7,38 @@ // // ********************************************************************** -using System; using System.Collections.Generic; +using System.Threading.Tasks; using Test; public class InitialI : Test.InitialDisp_ { - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void pingPongAsync(Ice.Value obj, Action<Ice.Value> response, - Action<Exception> exception, Ice.Current current) + public override Task<Ice.Value> + pingPongAsync(Ice.Value obj, Ice.Current current) { - response(obj); + return Task.FromResult<Ice.Value>(obj); } - public override void opOptionalExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, - Action action, Action<Exception> exception, Ice.Current current) + public override Task + opOptionalExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, Ice.Current c) { - exception(new OptionalException(false, a, b, o)); + throw new OptionalException(false, a, b, o); } - public override void opDerivedExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, - Action response, Action<Exception> exception, Ice.Current current) + public override Task + opDerivedExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, Ice.Current c) { - exception(new DerivedException(false, a, b, o, b, o)); + throw new DerivedException(false, a, b, o, b, o); } - public override void opRequiredExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, - Action response, Action<Exception> exception, Ice.Current current) + public override Task + opRequiredExceptionAsync(Ice.Optional<int> a, Ice.Optional<string> b, Ice.Optional<OneOptional> o, Ice.Current c) { var e = new RequiredException(); e.a = a; @@ -52,274 +52,302 @@ public class InitialI : Test.InitialDisp_ { e.o2 = o.Value; } - exception(e); + throw e; } - public override void - opByteAsync(Ice.Optional<byte> p1, Action<Initial_OpByteResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpByteResult> + opByteAsync(Ice.Optional<byte> p1, Ice.Current current) { - response(new Initial_OpByteResult(p1, p1)); + return Task.FromResult<Initial_OpByteResult>(new Initial_OpByteResult(p1, p1)); } - public override void - opBoolAsync(Ice.Optional<bool> p1, Action<Initial_OpBoolResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpBoolResult> + opBoolAsync(Ice.Optional<bool> p1, Ice.Current current) { - response(new Initial_OpBoolResult(p1, p1)); + return Task.FromResult<Initial_OpBoolResult>(new Initial_OpBoolResult(p1, p1)); } - public override void - opShortAsync(Ice.Optional<short> p1, Action<Initial_OpShortResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpShortResult> + opShortAsync(Ice.Optional<short> p1, Ice.Current current) { - response(new Initial_OpShortResult(p1, p1)); + return Task.FromResult<Initial_OpShortResult>(new Initial_OpShortResult(p1, p1)); } - public override void - opIntAsync(Ice.Optional<int> p1, Action<Initial_OpIntResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpIntResult> + opIntAsync(Ice.Optional<int> p1, Ice.Current current) { - response(new Initial_OpIntResult(p1, p1)); + return Task.FromResult<Initial_OpIntResult>(new Initial_OpIntResult(p1, p1)); } - public override void - opLongAsync(Ice.Optional<long> p1, Action<Initial_OpLongResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpLongResult> + opLongAsync(Ice.Optional<long> p1, Ice.Current current) { - response(new Initial_OpLongResult(p1, p1)); + return Task.FromResult<Initial_OpLongResult>(new Initial_OpLongResult(p1, p1)); } - public override void - opFloatAsync(Ice.Optional<float> p1, Action<Initial_OpFloatResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpFloatResult> + opFloatAsync(Ice.Optional<float> p1, Ice.Current current) { - response(new Initial_OpFloatResult(p1, p1)); + return Task.FromResult<Initial_OpFloatResult>(new Initial_OpFloatResult(p1, p1)); } - public override void - opDoubleAsync(Ice.Optional<double> p1, Action<Initial_OpDoubleResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpDoubleResult> + opDoubleAsync(Ice.Optional<double> p1, Ice.Current current) { - response(new Initial_OpDoubleResult(p1, p1)); + return Task.FromResult<Initial_OpDoubleResult>(new Initial_OpDoubleResult(p1, p1)); } - public override void - opStringAsync(Ice.Optional<string> p1, Action<Initial_OpStringResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpStringResult> + opStringAsync(Ice.Optional<string> p1, Ice.Current current) { - response(new Initial_OpStringResult(p1, p1)); + return Task.FromResult<Initial_OpStringResult>(new Initial_OpStringResult(p1, p1)); } - public override void - opMyEnumAsync(Ice.Optional<MyEnum> p1, Action<Initial_OpMyEnumResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpMyEnumResult> + opMyEnumAsync(Ice.Optional<MyEnum> p1, Ice.Current current) { - response(new Initial_OpMyEnumResult(p1, p1)); + return Task.FromResult<Initial_OpMyEnumResult>(new Initial_OpMyEnumResult(p1, p1)); } - public override void - opSmallStructAsync(Ice.Optional<SmallStruct> p1, Action<Initial_OpSmallStructResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpSmallStructResult> + opSmallStructAsync(Ice.Optional<SmallStruct> p1, Ice.Current current) { - response(new Initial_OpSmallStructResult(p1, p1)); + return Task.FromResult<Initial_OpSmallStructResult>(new Initial_OpSmallStructResult(p1, p1)); } - public override void - opFixedStructAsync(Ice.Optional<FixedStruct> p1, Action<Initial_OpFixedStructResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpFixedStructResult> + opFixedStructAsync(Ice.Optional<FixedStruct> p1, Ice.Current current) { - response(new Initial_OpFixedStructResult(p1, p1)); + return Task.FromResult<Initial_OpFixedStructResult>(new Initial_OpFixedStructResult(p1, p1)); } - public override void - opVarStructAsync(Ice.Optional<VarStruct> p1, Action<Initial_OpVarStructResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpVarStructResult> + opVarStructAsync(Ice.Optional<VarStruct> p1, Ice.Current current) { - response(new Initial_OpVarStructResult(p1, p1)); + return Task.FromResult<Initial_OpVarStructResult>(new Initial_OpVarStructResult(p1, p1)); } - public override void - opOneOptionalAsync(Ice.Optional<OneOptional> p1, Action<Initial_OpOneOptionalResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpOneOptionalResult> + opOneOptionalAsync(Ice.Optional<OneOptional> p1, Ice.Current current) { - response(new Initial_OpOneOptionalResult(p1, p1)); + return Task.FromResult<Initial_OpOneOptionalResult>(new Initial_OpOneOptionalResult(p1, p1)); } - public override void - opOneOptionalProxyAsync(Ice.Optional<OneOptionalPrx> p1, Action<Initial_OpOneOptionalProxyResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpOneOptionalProxyResult> + opOneOptionalProxyAsync(Ice.Optional<OneOptionalPrx> p1, Ice.Current current) { - response(new Initial_OpOneOptionalProxyResult(p1, p1)); + return Task.FromResult<Initial_OpOneOptionalProxyResult>(new Initial_OpOneOptionalProxyResult(p1, p1)); } - public override void - opByteSeqAsync(Ice.Optional<byte[]> p1, Action<Initial_OpByteSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpByteSeqResult> + opByteSeqAsync(Ice.Optional<byte[]> p1, Ice.Current current) { - response(new Initial_OpByteSeqResult(p1, p1)); + return Task.FromResult<Initial_OpByteSeqResult>(new Initial_OpByteSeqResult(p1, p1)); } - public override void - opBoolSeqAsync(Ice.Optional<bool[]> p1, Action<Initial_OpBoolSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpBoolSeqResult> + opBoolSeqAsync(Ice.Optional<bool[]> p1, Ice.Current current) { - response(new Initial_OpBoolSeqResult(p1, p1)); + return Task.FromResult<Initial_OpBoolSeqResult>(new Initial_OpBoolSeqResult(p1, p1)); } - public override void - opShortSeqAsync(Ice.Optional<short[]> p1, Action<Initial_OpShortSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpShortSeqResult> + opShortSeqAsync(Ice.Optional<short[]> p1, Ice.Current current) { - response(new Initial_OpShortSeqResult(p1, p1)); + return Task.FromResult<Initial_OpShortSeqResult>(new Initial_OpShortSeqResult(p1, p1)); } - public override void - opIntSeqAsync(Ice.Optional<int[]> p1, Action<Initial_OpIntSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpIntSeqResult> + opIntSeqAsync(Ice.Optional<int[]> p1, Ice.Current current) { - response(new Initial_OpIntSeqResult(p1, p1)); + return Task.FromResult<Initial_OpIntSeqResult>(new Initial_OpIntSeqResult(p1, p1)); } - public override void - opLongSeqAsync(Ice.Optional<long[]> p1, Action<Initial_OpLongSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpLongSeqResult> + opLongSeqAsync(Ice.Optional<long[]> p1, Ice.Current current) { - response(new Initial_OpLongSeqResult(p1, p1)); + return Task.FromResult<Initial_OpLongSeqResult>(new Initial_OpLongSeqResult(p1, p1)); } - public override void - opFloatSeqAsync(Ice.Optional<float[]> p1, Action<Initial_OpFloatSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpFloatSeqResult> + opFloatSeqAsync(Ice.Optional<float[]> p1, Ice.Current current) { - response(new Initial_OpFloatSeqResult(p1, p1)); + return Task.FromResult<Initial_OpFloatSeqResult>(new Initial_OpFloatSeqResult(p1, p1)); } - public override void - opDoubleSeqAsync(Ice.Optional<double[]> p1, Action<Initial_OpDoubleSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpDoubleSeqResult> + opDoubleSeqAsync(Ice.Optional<double[]> p1, Ice.Current current) { - response(new Initial_OpDoubleSeqResult(p1, p1)); + return Task.FromResult<Initial_OpDoubleSeqResult>(new Initial_OpDoubleSeqResult(p1, p1)); } - public override void - opStringSeqAsync(Ice.Optional<string[]> p1, Action<Initial_OpStringSeqResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<Initial_OpStringSeqResult> + opStringSeqAsync(Ice.Optional<string[]> p1, Ice.Current current) { - response(new Initial_OpStringSeqResult(p1, p1)); + return Task.FromResult<Initial_OpStringSeqResult>(new Initial_OpStringSeqResult(p1, p1)); } - public override void - opSmallStructSeqAsync(Ice.Optional<SmallStruct[]> p1, Action<Initial_OpSmallStructSeqResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpSmallStructSeqResult> + opSmallStructSeqAsync(Ice.Optional<SmallStruct[]> p1, Ice.Current current) { - response(new Initial_OpSmallStructSeqResult(p1, p1)); + return Task.FromResult<Initial_OpSmallStructSeqResult>(new Initial_OpSmallStructSeqResult(p1, p1)); } - public override void - opSmallStructListAsync(Ice.Optional<List<SmallStruct>> p1, Action<Initial_OpSmallStructListResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpSmallStructListResult> + opSmallStructListAsync(Ice.Optional<List<SmallStruct>> p1, Ice.Current current) { - response(new Initial_OpSmallStructListResult(p1, p1)); + return Task.FromResult<Initial_OpSmallStructListResult>(new Initial_OpSmallStructListResult(p1, p1)); } - public override void - opFixedStructSeqAsync(Ice.Optional<FixedStruct[]> p1, Action<Initial_OpFixedStructSeqResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpFixedStructSeqResult> + opFixedStructSeqAsync(Ice.Optional<FixedStruct[]> p1, Ice.Current current) { - response(new Initial_OpFixedStructSeqResult(p1, p1)); + return Task.FromResult<Initial_OpFixedStructSeqResult>(new Initial_OpFixedStructSeqResult(p1, p1)); } - public override void - opFixedStructListAsync(Ice.Optional<LinkedList<FixedStruct>> p1, Action<Initial_OpFixedStructListResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpFixedStructListResult> + opFixedStructListAsync(Ice.Optional<LinkedList<FixedStruct>> p1, Ice.Current current) { - response(new Initial_OpFixedStructListResult(p1, p1)); + return Task.FromResult<Initial_OpFixedStructListResult>(new Initial_OpFixedStructListResult(p1, p1)); } - public override void - opVarStructSeqAsync(Ice.Optional<VarStruct[]> p1, Action<Initial_OpVarStructSeqResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpVarStructSeqResult> + opVarStructSeqAsync(Ice.Optional<VarStruct[]> p1, Ice.Current current) { - response(new Initial_OpVarStructSeqResult(p1, p1)); + return Task.FromResult<Initial_OpVarStructSeqResult>(new Initial_OpVarStructSeqResult(p1, p1)); } - public override void - opSerializableAsync(Ice.Optional<SerializableClass> p1, Action<Initial_OpSerializableResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpSerializableResult> + opSerializableAsync(Ice.Optional<SerializableClass> p1, Ice.Current current) { - response(new Initial_OpSerializableResult(p1, p1)); + return Task.FromResult<Initial_OpSerializableResult>(new Initial_OpSerializableResult(p1, p1)); } - public override void - opIntIntDictAsync(Ice.Optional<Dictionary<int, int>> p1, Action<Initial_OpIntIntDictResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpIntIntDictResult> + opIntIntDictAsync(Ice.Optional<Dictionary<int, int>> p1, Ice.Current current) { - response(new Initial_OpIntIntDictResult(p1, p1)); + return Task.FromResult<Initial_OpIntIntDictResult>(new Initial_OpIntIntDictResult(p1, p1)); } - public override void - opStringIntDictAsync(Ice.Optional<Dictionary<string, int>> p1, Action<Initial_OpStringIntDictResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpStringIntDictResult> + opStringIntDictAsync(Ice.Optional<Dictionary<string, int>> p1, Ice.Current current) { - response(new Initial_OpStringIntDictResult(p1, p1)); + return Task.FromResult<Initial_OpStringIntDictResult>(new Initial_OpStringIntDictResult(p1, p1)); } - public override void - opIntOneOptionalDictAsync(Ice.Optional<Dictionary<int, OneOptional>> p1, Action<Initial_OpIntOneOptionalDictResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<Initial_OpIntOneOptionalDictResult> + opIntOneOptionalDictAsync(Ice.Optional<Dictionary<int, OneOptional>> p1, Ice.Current current) { - response(new Initial_OpIntOneOptionalDictResult(p1, p1)); + return Task.FromResult<Initial_OpIntOneOptionalDictResult>(new Initial_OpIntOneOptionalDictResult(p1, p1)); } - public override void opClassAndUnknownOptionalAsync(A p, Action response, Action<Exception> exception, Ice.Current current) + public override Task + opClassAndUnknownOptionalAsync(A p, Ice.Current current) { - response(); + return null; } - public override void sendOptionalClassAsync(bool req, Ice.Optional<OneOptional> o, Action response, - Action<Exception> exception, Ice.Current current) + public override Task + sendOptionalClassAsync(bool req, Ice.Optional<OneOptional> o, Ice.Current current) { - response(); + return null; } - public override void - returnOptionalClassAsync(bool req, Action<Ice.Optional<OneOptional>> response, Action<Exception> exception, Ice.Current current) + public override Task<Ice.Optional<OneOptional>> + returnOptionalClassAsync(bool req, Ice.Current current) { - response(new OneOptional(53)); + return Task.FromResult<Ice.Optional<OneOptional>>(new Ice.Optional<OneOptional>(new OneOptional(53))); } - public override void opGAsync(G g, Action<G> response, Action<Exception> exception, Ice.Current current) + public override Task<G> + opGAsync(G g, Ice.Current current) { - response(g); + return Task.FromResult<G>(g); } - public override void opVoidAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + opVoidAsync(Ice.Current current) { - response(); + return null; } - public override void - supportsRequiredParamsAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public async override Task<Test.Initial_OpMStruct1MarshaledResult> + opMStruct1Async(Ice.Current current) { - response(false); + await Task.Delay(0); + return new Test.Initial_OpMStruct1MarshaledResult(new Test.SmallStruct(), current); } - public override void - supportsJavaSerializableAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public async override Task<Test.Initial_OpMStruct2MarshaledResult> + opMStruct2Async(Ice.Optional<Test.SmallStruct> p1, Ice.Current current) { - response(false); + await Task.Delay(0); + return new Test.Initial_OpMStruct2MarshaledResult(p1, p1, current); } - public override void - supportsCsharpSerializableAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public async override Task<Test.Initial_OpMSeq1MarshaledResult> + opMSeq1Async(Ice.Current current) { - response(true); + await Task.Delay(0); + return new Test.Initial_OpMSeq1MarshaledResult(new string[0], current); } - public override void - supportsCppStringViewAsync(Action<bool> response, Action<Exception> exception, Ice.Current current) + public async override Task<Test.Initial_OpMSeq2MarshaledResult> + opMSeq2Async(Ice.Optional<string[]> p1, Ice.Current current) { - response(false); + await Task.Delay(0); + return new Test.Initial_OpMSeq2MarshaledResult(p1, p1, current); + } + + public async override Task<Test.Initial_OpMDict1MarshaledResult> + opMDict1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.Initial_OpMDict1MarshaledResult(new Dictionary<string, int>(), current); + } + + public async override Task<Test.Initial_OpMDict2MarshaledResult> + opMDict2Async(Ice.Optional<Dictionary<string, int>> p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.Initial_OpMDict2MarshaledResult(p1, p1, current); + } + + public async override Task<Test.Initial_OpMG1MarshaledResult> + opMG1Async(Ice.Current current) + { + await Task.Delay(0); + return new Test.Initial_OpMG1MarshaledResult(new Test.G(), current); + } + + public async override Task<Test.Initial_OpMG2MarshaledResult> + opMG2Async(Ice.Optional<Test.G> p1, Ice.Current current) + { + await Task.Delay(0); + return new Test.Initial_OpMG2MarshaledResult(p1, p1, current); + } + + public override Task<bool> + supportsRequiredParamsAsync(Ice.Current current) + { + return Task.FromResult<bool>(false); + } + + public override Task<bool> + supportsJavaSerializableAsync(Ice.Current current) + { + return Task.FromResult<bool>(false); + } + + public override Task<bool> + supportsCsharpSerializableAsync(Ice.Current current) + { + return Task.FromResult<bool>(true); + } + + public override Task<bool> + supportsCppStringViewAsync(Ice.Current current) + { + return Task.FromResult<bool>(false); } } diff --git a/csharp/test/Ice/optional/TestI.cs b/csharp/test/Ice/optional/TestI.cs index 81ce497d808..6f62581d397 100644 --- a/csharp/test/Ice/optional/TestI.cs +++ b/csharp/test/Ice/optional/TestI.cs @@ -301,6 +301,54 @@ public class InitialI : Test.InitialDisp_ { } + public override Test.Initial_OpMStruct1MarshaledResult + opMStruct1(Ice.Current current) + { + return new Test.Initial_OpMStruct1MarshaledResult(new Test.SmallStruct(), current); + } + + public override Test.Initial_OpMStruct2MarshaledResult + opMStruct2(Ice.Optional<Test.SmallStruct> p1, Ice.Current current) + { + return new Test.Initial_OpMStruct2MarshaledResult(p1, p1, current); + } + + public override Test.Initial_OpMSeq1MarshaledResult + opMSeq1(Ice.Current current) + { + return new Test.Initial_OpMSeq1MarshaledResult(new string[0], current); + } + + public override Test.Initial_OpMSeq2MarshaledResult + opMSeq2(Ice.Optional<string[]> p1, Ice.Current current) + { + return new Test.Initial_OpMSeq2MarshaledResult(p1, p1, current); + } + + public override Test.Initial_OpMDict1MarshaledResult + opMDict1(Ice.Current current) + { + return new Test.Initial_OpMDict1MarshaledResult(new Dictionary<string, int>(), current); + } + + public override Test.Initial_OpMDict2MarshaledResult + opMDict2(Ice.Optional<Dictionary<string, int>> p1, Ice.Current current) + { + return new Test.Initial_OpMDict2MarshaledResult(p1, p1, current); + } + + public override Test.Initial_OpMG1MarshaledResult + opMG1(Ice.Current current) + { + return new Test.Initial_OpMG1MarshaledResult(new Test.G(), current); + } + + public override Test.Initial_OpMG2MarshaledResult + opMG2(Ice.Optional<Test.G> p1, Ice.Current current) + { + return new Test.Initial_OpMG2MarshaledResult(p1, p1, current); + } + public override bool supportsRequiredParams(Ice.Current current) { return false; diff --git a/csharp/test/Ice/proxy/MyDerivedClassAMDI.cs b/csharp/test/Ice/proxy/MyDerivedClassAMDI.cs index e0b0dd756f1..c3ebf7a9221 100644 --- a/csharp/test/Ice/proxy/MyDerivedClassAMDI.cs +++ b/csharp/test/Ice/proxy/MyDerivedClassAMDI.cs @@ -16,23 +16,21 @@ public sealed class MyDerivedClassI : Test.MyDerivedClassDisp_ public MyDerivedClassI() { } - - public override void - echoAsync(Ice.ObjectPrx obj, Action<Ice.ObjectPrx> response, Action<Exception> exception, Ice.Current c) + + public override Task<Ice.ObjectPrx> echoAsync(Ice.ObjectPrx obj, Ice.Current c) { - response(obj); + return Task.FromResult<Ice.ObjectPrx>(obj); } - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - - public override void - getContextAsync(Action<Dictionary<string, string>> response, Action<Exception> exception, Ice.Current current) + + public override Task<Dictionary<string, string>> getContextAsync(Ice.Current current) { - response(_ctx); + return Task.FromResult<Dictionary<string, string>>(_ctx); } public override bool ice_isA(string s, Ice.Current current) diff --git a/csharp/test/Ice/seqMapping/MyClassAMDI.cs b/csharp/test/Ice/seqMapping/MyClassAMDI.cs index a01dc1c3de3..23c325f35cd 100644 --- a/csharp/test/Ice/seqMapping/MyClassAMDI.cs +++ b/csharp/test/Ice/seqMapping/MyClassAMDI.cs @@ -8,547 +8,481 @@ // ********************************************************************** using System; +using System.Threading.Tasks; using System.Collections.Generic; using Test; public sealed class MyClassI : MyClassDisp_ { - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void - opAByteSAsync(byte[] i, Action<MyClass_OpAByteSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpAByteSResult> + opAByteSAsync(byte[] i, Ice.Current current) { - response(new MyClass_OpAByteSResult(i, i)); + return Task.FromResult<MyClass_OpAByteSResult>(new MyClass_OpAByteSResult(i, i)); } - public override void - opLByteSAsync(List<byte> i, Action<MyClass_OpLByteSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLByteSResult> + opLByteSAsync(List<byte> i, Ice.Current current) { - response(new MyClass_OpLByteSResult(i, i)); + return Task.FromResult<MyClass_OpLByteSResult>(new MyClass_OpLByteSResult(i, i)); } - public override void - opKByteSAsync(LinkedList<byte> i, Action<MyClass_OpKByteSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKByteSResult> + opKByteSAsync(LinkedList<byte> i, Ice.Current current) { - response(new MyClass_OpKByteSResult(i, i)); + return Task.FromResult<MyClass_OpKByteSResult>(new MyClass_OpKByteSResult(i, i)); } - public override void - opQByteSAsync(Queue<byte> i, Action<MyClass_OpQByteSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQByteSResult> + opQByteSAsync(Queue<byte> i, Ice.Current current) { - response(new MyClass_OpQByteSResult(i, i)); + return Task.FromResult<MyClass_OpQByteSResult>(new MyClass_OpQByteSResult(i, i)); } - public override void - opSByteSAsync(Stack<byte> i, Action<MyClass_OpSByteSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSByteSResult> + opSByteSAsync(Stack<byte> i, Ice.Current current) { - response(new MyClass_OpSByteSResult(i, i)); + return Task.FromResult<MyClass_OpSByteSResult>(new MyClass_OpSByteSResult(i, i)); } - public override void - opABoolSAsync(bool[] i, Action<MyClass_OpABoolSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpABoolSResult> + opABoolSAsync(bool[] i, Ice.Current current) { - response(new MyClass_OpABoolSResult(i, i)); + return Task.FromResult<MyClass_OpABoolSResult>(new MyClass_OpABoolSResult(i, i)); } - public override void - opLBoolSAsync(List<bool> i, Action<MyClass_OpLBoolSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLBoolSResult> + opLBoolSAsync(List<bool> i, Ice.Current current) { - response(new MyClass_OpLBoolSResult(i, i)); + return Task.FromResult<MyClass_OpLBoolSResult>(new MyClass_OpLBoolSResult(i, i)); } - public override void - opKBoolSAsync(LinkedList<bool> i, Action<MyClass_OpKBoolSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKBoolSResult> + opKBoolSAsync(LinkedList<bool> i, Ice.Current current) { - response(new MyClass_OpKBoolSResult(i, i)); + return Task.FromResult<MyClass_OpKBoolSResult>(new MyClass_OpKBoolSResult(i, i)); } - public override void - opQBoolSAsync(Queue<bool> i, Action<MyClass_OpQBoolSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQBoolSResult> + opQBoolSAsync(Queue<bool> i, Ice.Current current) { - response(new MyClass_OpQBoolSResult(i, i)); + return Task.FromResult<MyClass_OpQBoolSResult>(new MyClass_OpQBoolSResult(i, i)); } - public override void - opSBoolSAsync(Stack<bool> i, Action<MyClass_OpSBoolSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSBoolSResult> + opSBoolSAsync(Stack<bool> i, Ice.Current current) { - response(new MyClass_OpSBoolSResult(i, i)); + return Task.FromResult<MyClass_OpSBoolSResult>(new MyClass_OpSBoolSResult(i, i)); } - public override void - opAShortSAsync(short[] i, Action<MyClass_OpAShortSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAShortSResult> + opAShortSAsync(short[] i, Ice.Current current) { - response(new MyClass_OpAShortSResult(i, i)); + return Task.FromResult<MyClass_OpAShortSResult>(new MyClass_OpAShortSResult(i, i)); } - public override void - opLShortSAsync(List<short> i, Action<MyClass_OpLShortSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLShortSResult> + opLShortSAsync(List<short> i, Ice.Current current) { - response(new MyClass_OpLShortSResult(i, i)); + return Task.FromResult<MyClass_OpLShortSResult>(new MyClass_OpLShortSResult(i, i)); } - public override void - opKShortSAsync(LinkedList<short> i, Action<MyClass_OpKShortSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKShortSResult> + opKShortSAsync(LinkedList<short> i, Ice.Current current) { - response(new MyClass_OpKShortSResult(i, i)); + return Task.FromResult<MyClass_OpKShortSResult>(new MyClass_OpKShortSResult(i, i)); } - public override void - opQShortSAsync(Queue<short> i, Action<MyClass_OpQShortSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQShortSResult> + opQShortSAsync(Queue<short> i, Ice.Current current) { - response(new MyClass_OpQShortSResult(i, i)); + return Task.FromResult<MyClass_OpQShortSResult>(new MyClass_OpQShortSResult(i, i)); } - public override void - opSShortSAsync(Stack<short> i, Action<MyClass_OpSShortSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSShortSResult> + opSShortSAsync(Stack<short> i, Ice.Current current) { - response(new MyClass_OpSShortSResult(i, i)); + return Task.FromResult<MyClass_OpSShortSResult>(new MyClass_OpSShortSResult(i, i)); } - public override void - opAIntSAsync(int[] i, Action<MyClass_OpAIntSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpAIntSResult> + opAIntSAsync(int[] i, Ice.Current current) { - response(new MyClass_OpAIntSResult(i, i)); + return Task.FromResult<MyClass_OpAIntSResult>(new MyClass_OpAIntSResult(i, i)); } - public override void - opLIntSAsync(List<int> i, Action<MyClass_OpLIntSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpLIntSResult> + opLIntSAsync(List<int> i, Ice.Current current) { - response(new MyClass_OpLIntSResult(i, i)); + return Task.FromResult<MyClass_OpLIntSResult>(new MyClass_OpLIntSResult(i, i)); } - public override void - opKIntSAsync(LinkedList<int> i, Action<MyClass_OpKIntSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKIntSResult> + opKIntSAsync(LinkedList<int> i, Ice.Current current) { - response(new MyClass_OpKIntSResult(i, i)); + return Task.FromResult<MyClass_OpKIntSResult>(new MyClass_OpKIntSResult(i, i)); } - public override void - opQIntSAsync(Queue<int> i, Action<MyClass_OpQIntSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQIntSResult> + opQIntSAsync(Queue<int> i, Ice.Current current) { - response(new MyClass_OpQIntSResult(i, i)); + return Task.FromResult<MyClass_OpQIntSResult>(new MyClass_OpQIntSResult(i, i)); } - public override void - opSIntSAsync(Stack<int> i, Action<MyClass_OpSIntSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSIntSResult> + opSIntSAsync(Stack<int> i, Ice.Current current) { - response(new MyClass_OpSIntSResult(i, i)); + return Task.FromResult<MyClass_OpSIntSResult>(new MyClass_OpSIntSResult(i, i)); } - public override void - opALongSAsync(long[] i, Action<MyClass_OpALongSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpALongSResult> + opALongSAsync(long[] i, Ice.Current current) { - response(new MyClass_OpALongSResult(i, i)); + return Task.FromResult<MyClass_OpALongSResult>(new MyClass_OpALongSResult(i, i)); } - public override void - opLLongSAsync(List<long> i, Action<MyClass_OpLLongSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLLongSResult> + opLLongSAsync(List<long> i, Ice.Current current) { - response(new MyClass_OpLLongSResult(i, i)); + return Task.FromResult<MyClass_OpLLongSResult>(new MyClass_OpLLongSResult(i, i)); } - public override void - opKLongSAsync(LinkedList<long> i, Action<MyClass_OpKLongSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKLongSResult> + opKLongSAsync(LinkedList<long> i, Ice.Current current) { - response(new MyClass_OpKLongSResult(i, i)); + return Task.FromResult<MyClass_OpKLongSResult>(new MyClass_OpKLongSResult(i, i)); } - public override void - opQLongSAsync(Queue<long> i, Action<MyClass_OpQLongSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQLongSResult> + opQLongSAsync(Queue<long> i, Ice.Current current) { - response(new MyClass_OpQLongSResult(i, i)); + return Task.FromResult<MyClass_OpQLongSResult>(new MyClass_OpQLongSResult(i, i)); } - public override void - opSLongSAsync(Stack<long> i, Action<MyClass_OpSLongSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSLongSResult> + opSLongSAsync(Stack<long> i, Ice.Current current) { - response(new MyClass_OpSLongSResult(i, i)); + return Task.FromResult<MyClass_OpSLongSResult>(new MyClass_OpSLongSResult(i, i)); } - public override void - opAFloatSAsync(float[] i, Action<MyClass_OpAFloatSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAFloatSResult> + opAFloatSAsync(float[] i, Ice.Current current) { - response(new MyClass_OpAFloatSResult(i, i)); + return Task.FromResult<MyClass_OpAFloatSResult>(new MyClass_OpAFloatSResult(i, i)); } - public override void - opLFloatSAsync(List<float> i, Action<MyClass_OpLFloatSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLFloatSResult> + opLFloatSAsync(List<float> i, Ice.Current current) { - response(new MyClass_OpLFloatSResult(i, i)); + return Task.FromResult<MyClass_OpLFloatSResult>(new MyClass_OpLFloatSResult(i, i)); } - public override void - opKFloatSAsync(LinkedList<float> i, Action<MyClass_OpKFloatSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKFloatSResult> + opKFloatSAsync(LinkedList<float> i, Ice.Current current) { - response(new MyClass_OpKFloatSResult(i, i)); + return Task.FromResult<MyClass_OpKFloatSResult>(new MyClass_OpKFloatSResult(i, i)); } - public override void - opQFloatSAsync(Queue<float> i, Action<MyClass_OpQFloatSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQFloatSResult> + opQFloatSAsync(Queue<float> i, Ice.Current current) { - response(new MyClass_OpQFloatSResult(i, i)); + return Task.FromResult<MyClass_OpQFloatSResult>(new MyClass_OpQFloatSResult(i, i)); } - public override void - opSFloatSAsync(Stack<float> i, Action<MyClass_OpSFloatSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSFloatSResult> + opSFloatSAsync(Stack<float> i, Ice.Current current) { - response(new MyClass_OpSFloatSResult(i, i)); + return Task.FromResult<MyClass_OpSFloatSResult>(new MyClass_OpSFloatSResult(i, i)); } - public override void - opADoubleSAsync(double[] i, Action<MyClass_OpADoubleSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpADoubleSResult> + opADoubleSAsync(double[] i, Ice.Current current) { - response(new MyClass_OpADoubleSResult(i, i)); + return Task.FromResult<MyClass_OpADoubleSResult>(new MyClass_OpADoubleSResult(i, i)); } - public override void - opLDoubleSAsync(List<double> i, Action<MyClass_OpLDoubleSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLDoubleSResult> + opLDoubleSAsync(List<double> i, Ice.Current current) { - response(new MyClass_OpLDoubleSResult(i, i)); + return Task.FromResult<MyClass_OpLDoubleSResult>(new MyClass_OpLDoubleSResult(i, i)); } - public override void - opKDoubleSAsync(LinkedList<double> i, Action<MyClass_OpKDoubleSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKDoubleSResult> + opKDoubleSAsync(LinkedList<double> i, Ice.Current current) { - response(new MyClass_OpKDoubleSResult(i, i)); + return Task.FromResult<MyClass_OpKDoubleSResult>(new MyClass_OpKDoubleSResult(i, i)); } - public override void - opQDoubleSAsync(Queue<double> i, Action<MyClass_OpQDoubleSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQDoubleSResult> + opQDoubleSAsync(Queue<double> i, Ice.Current current) { - response(new MyClass_OpQDoubleSResult(i, i)); + return Task.FromResult<MyClass_OpQDoubleSResult>(new MyClass_OpQDoubleSResult(i, i)); } - public override void - opSDoubleSAsync(Stack<double> i, Action<MyClass_OpSDoubleSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSDoubleSResult> + opSDoubleSAsync(Stack<double> i, Ice.Current current) { - response(new MyClass_OpSDoubleSResult(i, i)); + return Task.FromResult<MyClass_OpSDoubleSResult>(new MyClass_OpSDoubleSResult(i, i)); } - public override void - opAStringSAsync(string[] i, Action<MyClass_OpAStringSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAStringSResult> + opAStringSAsync(string[] i, Ice.Current current) { - response(new MyClass_OpAStringSResult(i, i)); + return Task.FromResult<MyClass_OpAStringSResult>(new MyClass_OpAStringSResult(i, i)); } - public override void - opLStringSAsync(List<string> i, Action<MyClass_OpLStringSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLStringSResult> + opLStringSAsync(List<string> i, Ice.Current current) { - response(new MyClass_OpLStringSResult(i, i)); + return Task.FromResult<MyClass_OpLStringSResult>(new MyClass_OpLStringSResult(i, i)); } - public override void - opKStringSAsync(LinkedList<string> i, Action<MyClass_OpKStringSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKStringSResult> + opKStringSAsync(LinkedList<string> i, Ice.Current current) { - response(new MyClass_OpKStringSResult(i, i)); + return Task.FromResult<MyClass_OpKStringSResult>(new MyClass_OpKStringSResult(i, i)); } - public override void - opQStringSAsync(Queue<string> i, Action<MyClass_OpQStringSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQStringSResult> + opQStringSAsync(Queue<string> i, Ice.Current current) { - response(new MyClass_OpQStringSResult(i, i)); + return Task.FromResult<MyClass_OpQStringSResult>(new MyClass_OpQStringSResult(i, i)); } - public override void - opSStringSAsync(Stack<string> i, Action<MyClass_OpSStringSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSStringSResult> + opSStringSAsync(Stack<string> i, Ice.Current current) { - response(new MyClass_OpSStringSResult(i, i)); + return Task.FromResult<MyClass_OpSStringSResult>(new MyClass_OpSStringSResult(i, i)); } - public override void opAObjectSAsync(Ice.Value[] i, Action<MyClass_OpAObjectSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAObjectSResult> opAObjectSAsync(Ice.Value[] i, Ice.Current current) { - response(new MyClass_OpAObjectSResult(i, i)); + return Task.FromResult<MyClass_OpAObjectSResult>(new MyClass_OpAObjectSResult(i, i)); } - public override void - opLObjectSAsync(List<Ice.Value> i, Action<MyClass_OpLObjectSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLObjectSResult> + opLObjectSAsync(List<Ice.Value> i, Ice.Current current) { - response(new MyClass_OpLObjectSResult(i, i)); + return Task.FromResult<MyClass_OpLObjectSResult>(new MyClass_OpLObjectSResult(i, i)); } - public override void - opAObjectPrxSAsync(Ice.ObjectPrx[] i, Action<MyClass_OpAObjectPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAObjectPrxSResult> + opAObjectPrxSAsync(Ice.ObjectPrx[] i, Ice.Current current) { - response(new MyClass_OpAObjectPrxSResult(i, i)); + return Task.FromResult<MyClass_OpAObjectPrxSResult>(new MyClass_OpAObjectPrxSResult(i, i)); } - public override void - opLObjectPrxSAsync(List<Ice.ObjectPrx> i, Action<MyClass_OpLObjectPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLObjectPrxSResult> + opLObjectPrxSAsync(List<Ice.ObjectPrx> i, Ice.Current current) { - response(new MyClass_OpLObjectPrxSResult(i, i)); + return Task.FromResult<MyClass_OpLObjectPrxSResult>(new MyClass_OpLObjectPrxSResult(i, i)); } - public override void - opKObjectPrxSAsync(LinkedList<Ice.ObjectPrx> i, Action<MyClass_OpKObjectPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKObjectPrxSResult> + opKObjectPrxSAsync(LinkedList<Ice.ObjectPrx> i, Ice.Current current) { - response(new MyClass_OpKObjectPrxSResult(i, i)); + return Task.FromResult<MyClass_OpKObjectPrxSResult>(new MyClass_OpKObjectPrxSResult(i, i)); } - public override void - opQObjectPrxSAsync(Queue<Ice.ObjectPrx> i, Action<MyClass_OpQObjectPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQObjectPrxSResult> + opQObjectPrxSAsync(Queue<Ice.ObjectPrx> i, Ice.Current current) { - response(new MyClass_OpQObjectPrxSResult(i, i)); + return Task.FromResult<MyClass_OpQObjectPrxSResult>(new MyClass_OpQObjectPrxSResult(i, i)); } - public override void - opSObjectPrxSAsync(Stack<Ice.ObjectPrx> i, Action<MyClass_OpSObjectPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSObjectPrxSResult> + opSObjectPrxSAsync(Stack<Ice.ObjectPrx> i, Ice.Current current) { - response(new MyClass_OpSObjectPrxSResult(i, i)); + return Task.FromResult<MyClass_OpSObjectPrxSResult>(new MyClass_OpSObjectPrxSResult(i, i)); } - public override void - opAStructSAsync(S[] i, Action<MyClass_OpAStructSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpAStructSResult> + opAStructSAsync(S[] i, Ice.Current current) { - response(new MyClass_OpAStructSResult(i, i)); + return Task.FromResult<MyClass_OpAStructSResult>(new MyClass_OpAStructSResult(i, i)); } - public override void - opLStructSAsync(List<S> i, Action<MyClass_OpLStructSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLStructSResult> + opLStructSAsync(List<S> i, Ice.Current current) { - response(new MyClass_OpLStructSResult(i, i)); + return Task.FromResult<MyClass_OpLStructSResult>(new MyClass_OpLStructSResult(i, i)); } - public override void - opKStructSAsync(LinkedList<S> i, Action<MyClass_OpKStructSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKStructSResult> + opKStructSAsync(LinkedList<S> i, Ice.Current current) { - response(new MyClass_OpKStructSResult(i, i)); + return Task.FromResult<MyClass_OpKStructSResult>(new MyClass_OpKStructSResult(i, i)); } - public override void - opQStructSAsync(Queue<S> i, Action<MyClass_OpQStructSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQStructSResult> + opQStructSAsync(Queue<S> i, Ice.Current current) { - response(new MyClass_OpQStructSResult(i, i)); + return Task.FromResult<MyClass_OpQStructSResult>(new MyClass_OpQStructSResult(i, i)); } - public override void - opSStructSAsync(Stack<S> i, Action<MyClass_OpSStructSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSStructSResult> + opSStructSAsync(Stack<S> i, Ice.Current current) { - response(new MyClass_OpSStructSResult(i, i)); + return Task.FromResult<MyClass_OpSStructSResult>(new MyClass_OpSStructSResult(i, i)); } - public override void - opAStructSDAsync(SD[] i, Action<MyClass_OpAStructSDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAStructSDResult> + opAStructSDAsync(SD[] i, Ice.Current current) { - response(new MyClass_OpAStructSDResult(i, i)); + return Task.FromResult<MyClass_OpAStructSDResult>(new MyClass_OpAStructSDResult(i, i)); } - public override void - opLStructSDAsync(List<SD> i, Action<MyClass_OpLStructSDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLStructSDResult> + opLStructSDAsync(List<SD> i, Ice.Current current) { - response(new MyClass_OpLStructSDResult(i, i)); + return Task.FromResult<MyClass_OpLStructSDResult>(new MyClass_OpLStructSDResult(i, i)); } - public override void - opKStructSDAsync(LinkedList<SD> i, Action<MyClass_OpKStructSDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKStructSDResult> + opKStructSDAsync(LinkedList<SD> i, Ice.Current current) { - response(new MyClass_OpKStructSDResult(i, i)); + return Task.FromResult<MyClass_OpKStructSDResult>(new MyClass_OpKStructSDResult(i, i)); } - public override void - opQStructSDAsync(Queue<SD> i, Action<MyClass_OpQStructSDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQStructSDResult> + opQStructSDAsync(Queue<SD> i, Ice.Current current) { - response(new MyClass_OpQStructSDResult(i, i)); + return Task.FromResult<MyClass_OpQStructSDResult>(new MyClass_OpQStructSDResult(i, i)); } - public override void - opSStructSDAsync(Stack<SD> i, Action<MyClass_OpSStructSDResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSStructSDResult> + opSStructSDAsync(Stack<SD> i, Ice.Current current) { - response(new MyClass_OpSStructSDResult(i, i)); + return Task.FromResult<MyClass_OpSStructSDResult>(new MyClass_OpSStructSDResult(i, i)); } - public override void - opACVSAsync(CV[] i, Action<MyClass_OpACVSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpACVSResult> + opACVSAsync(CV[] i, Ice.Current current) { - response(new MyClass_OpACVSResult(i, i)); + return Task.FromResult<MyClass_OpACVSResult>(new MyClass_OpACVSResult(i, i)); } - public override void - opLCVSAsync(List<CV> i, Action<MyClass_OpLCVSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpLCVSResult> + opLCVSAsync(List<CV> i, Ice.Current current) { - response(new MyClass_OpLCVSResult(i, i)); + return Task.FromResult<MyClass_OpLCVSResult>(new MyClass_OpLCVSResult(i, i)); } - public override void - opACVPrxSAsync(CVPrx[] i, Action<MyClass_OpACVPrxSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpACVPrxSResult> + opACVPrxSAsync(CVPrx[] i, Ice.Current current) { - response(new MyClass_OpACVPrxSResult(i, i)); + return Task.FromResult<MyClass_OpACVPrxSResult>(new MyClass_OpACVPrxSResult(i, i)); } - public override void - opLCVPrxSAsync(List<CVPrx> i, Action<MyClass_OpLCVPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLCVPrxSResult> + opLCVPrxSAsync(List<CVPrx> i, Ice.Current current) { - response(new MyClass_OpLCVPrxSResult(i, i)); + return Task.FromResult<MyClass_OpLCVPrxSResult>(new MyClass_OpLCVPrxSResult(i, i)); } - public override void - opKCVPrxSAsync(LinkedList<CVPrx> i, Action<MyClass_OpKCVPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKCVPrxSResult> + opKCVPrxSAsync(LinkedList<CVPrx> i, Ice.Current current) { - response(new MyClass_OpKCVPrxSResult(i, i)); + return Task.FromResult<MyClass_OpKCVPrxSResult>(new MyClass_OpKCVPrxSResult(i, i)); } - public override void - opQCVPrxSAsync(Queue<CVPrx> i, Action<MyClass_OpQCVPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpQCVPrxSResult> + opQCVPrxSAsync(Queue<CVPrx> i, Ice.Current current) { - response(new MyClass_OpQCVPrxSResult(i, i)); + return Task.FromResult<MyClass_OpQCVPrxSResult>(new MyClass_OpQCVPrxSResult(i, i)); } - public override void - opSCVPrxSAsync(Stack<CVPrx> i, Action<MyClass_OpSCVPrxSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSCVPrxSResult> + opSCVPrxSAsync(Stack<CVPrx> i, Ice.Current current) { - response(new MyClass_OpSCVPrxSResult(i, i)); + return Task.FromResult<MyClass_OpSCVPrxSResult>(new MyClass_OpSCVPrxSResult(i, i)); } - public override void - opACRSAsync(CR[] i, Action<MyClass_OpACRSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpACRSResult> + opACRSAsync(CR[] i, Ice.Current current) { - response(new MyClass_OpACRSResult(i, i)); + return Task.FromResult<MyClass_OpACRSResult>(new MyClass_OpACRSResult(i, i)); } - public override void - opLCRSAsync(List<CR> i, Action<MyClass_OpLCRSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpLCRSResult> + opLCRSAsync(List<CR> i, Ice.Current current) { - response(new MyClass_OpLCRSResult(i, i)); + return Task.FromResult<MyClass_OpLCRSResult>(new MyClass_OpLCRSResult(i, i)); } - public override void opAEnSAsync(En[] i, Action<MyClass_OpAEnSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpAEnSResult> opAEnSAsync(En[] i, Ice.Current current) { - response(new MyClass_OpAEnSResult(i, i)); + return Task.FromResult<MyClass_OpAEnSResult>(new MyClass_OpAEnSResult(i, i)); } - public override void - opLEnSAsync(List<En> i, Action<MyClass_OpLEnSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpLEnSResult> + opLEnSAsync(List<En> i, Ice.Current current) { - response(new MyClass_OpLEnSResult(i, i)); + return Task.FromResult<MyClass_OpLEnSResult>(new MyClass_OpLEnSResult(i, i)); } - public override void - opKEnSAsync(LinkedList<En> i, Action<MyClass_OpKEnSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpKEnSResult> + opKEnSAsync(LinkedList<En> i, Ice.Current current) { - response(new MyClass_OpKEnSResult(i, i)); + return Task.FromResult<MyClass_OpKEnSResult>(new MyClass_OpKEnSResult(i, i)); } - public override void - opQEnSAsync(Queue<En> i, Action<MyClass_OpQEnSResult> response, Action<Exception> exception, Ice.Current current) + public override Task<MyClass_OpQEnSResult> + opQEnSAsync(Queue<En> i, Ice.Current current) { - response(new MyClass_OpQEnSResult(i, i)); + return Task.FromResult<MyClass_OpQEnSResult>(new MyClass_OpQEnSResult(i, i)); } - public override void - opSEnSAsync(Stack<En> i, Action<MyClass_OpSEnSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSEnSResult> + opSEnSAsync(Stack<En> i, Ice.Current current) { - response(new MyClass_OpSEnSResult(i, i)); + return Task.FromResult<MyClass_OpSEnSResult>(new MyClass_OpSEnSResult(i, i)); } - public override void - opCustomIntSAsync(Custom<int> i, Action<MyClass_OpCustomIntSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpCustomIntSResult> + opCustomIntSAsync(Custom<int> i, Ice.Current current) { - response(new MyClass_OpCustomIntSResult(i, i)); + return Task.FromResult<MyClass_OpCustomIntSResult>(new MyClass_OpCustomIntSResult(i, i)); } - public override void - opCustomCVSAsync(Custom<CV> i, Action<MyClass_OpCustomCVSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpCustomCVSResult> + opCustomCVSAsync(Custom<CV> i, Ice.Current current) { - response(new MyClass_OpCustomCVSResult(i, i)); + return Task.FromResult<MyClass_OpCustomCVSResult>(new MyClass_OpCustomCVSResult(i, i)); } - public override void - opCustomIntSSAsync(Custom<Custom<int>> i, Action<MyClass_OpCustomIntSSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpCustomIntSSResult> + opCustomIntSSAsync(Custom<Custom<int>> i, Ice.Current current) { - response(new MyClass_OpCustomIntSSResult(i, i)); + return Task.FromResult<MyClass_OpCustomIntSSResult>(new MyClass_OpCustomIntSSResult(i, i)); } - public override void - opCustomCVSSAsync(Custom<Custom<CV>> i, Action<MyClass_OpCustomCVSSResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpCustomCVSSResult> + opCustomCVSSAsync(Custom<Custom<CV>> i, Ice.Current current) { - response(new MyClass_OpCustomCVSSResult(i, i)); + return Task.FromResult<MyClass_OpCustomCVSSResult>(new MyClass_OpCustomCVSSResult(i, i)); } - public override void - opSerialSmallCSharpAsync(Serialize.Small i, Action<MyClass_OpSerialSmallCSharpResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSerialSmallCSharpResult> + opSerialSmallCSharpAsync(Serialize.Small i, Ice.Current current) { - response(new MyClass_OpSerialSmallCSharpResult(i, i)); + return Task.FromResult<MyClass_OpSerialSmallCSharpResult>(new MyClass_OpSerialSmallCSharpResult(i, i)); } - public override void - opSerialLargeCSharpAsync(Serialize.Large i, Action<MyClass_OpSerialLargeCSharpResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSerialLargeCSharpResult> + opSerialLargeCSharpAsync(Serialize.Large i, Ice.Current current) { - response(new MyClass_OpSerialLargeCSharpResult(i, i)); + return Task.FromResult<MyClass_OpSerialLargeCSharpResult>(new MyClass_OpSerialLargeCSharpResult(i, i)); } - public override void - opSerialStructCSharpAsync(Serialize.Struct i, Action<MyClass_OpSerialStructCSharpResult> response, Action<Exception> exception, - Ice.Current current) + public override Task<MyClass_OpSerialStructCSharpResult> + opSerialStructCSharpAsync(Serialize.Struct i, Ice.Current current) { - response(new MyClass_OpSerialStructCSharpResult(i, i)); + return Task.FromResult<MyClass_OpSerialStructCSharpResult>(new MyClass_OpSerialStructCSharpResult(i, i)); } } diff --git a/csharp/test/Ice/servantLocator/TestAMDI.cs b/csharp/test/Ice/servantLocator/TestAMDI.cs index 55f1c4ab60b..be0779e6541 100644 --- a/csharp/test/Ice/servantLocator/TestAMDI.cs +++ b/csharp/test/Ice/servantLocator/TestAMDI.cs @@ -8,57 +8,58 @@ // ********************************************************************** using System; +using System.Threading.Tasks; using Test; public sealed class TestI : TestIntfDisp_ { - public override void requestFailedExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task requestFailedExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void unknownUserExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task unknownUserExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void unknownLocalExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task unknownLocalExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void unknownExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task unknownExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void localExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task localExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void userExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task userExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void csExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task csExceptionAsync(Ice.Current current) { - response(); + return null; } - public override void - unknownExceptionWithServantExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownExceptionWithServantExceptionAsync(Ice.Current current) { - exception(new Ice.ObjectNotExistException()); + throw new Ice.ObjectNotExistException(); } - public override void - impossibleExceptionAsync(bool @throw, Action<string> response, Action<Exception> exception, Ice.Current current) + public override Task<string> + impossibleExceptionAsync(bool @throw, Ice.Current current) { if(@throw) { - exception(new TestImpossibleException()); + throw new TestImpossibleException(); } else { @@ -66,16 +67,16 @@ public sealed class TestI : TestIntfDisp_ // Return a value so we can be sure that the stream position // is reset correctly iuf finished throws. // - response("Hello"); + return Task.FromResult<string>("Hello"); } } - public override void - intfUserExceptionAsync(bool @throw, Action<string> response, Action<Exception> exception, Ice.Current current) + public override Task<string> + intfUserExceptionAsync(bool @throw, Ice.Current current) { if(@throw) { - exception(new TestIntfUserException()); + throw new TestIntfUserException(); } else { @@ -83,25 +84,25 @@ public sealed class TestI : TestIntfDisp_ // Return a value so we can be sure that the stream position // is reset correctly iuf finished throws. // - response("Hello"); + return Task.FromResult<string>("Hello"); } } - public override void asyncResponseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task asyncResponseAsync(Ice.Current current) { - response(); + return null; throw new Ice.ObjectNotExistException(); } - public override void asyncExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task asyncExceptionAsync(Ice.Current current) { - exception(new TestIntfUserException()); + throw new TestIntfUserException(); throw new Ice.ObjectNotExistException(); } - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.deactivate(); - response(); + return null; } } diff --git a/csharp/test/Ice/slicing/exceptions/TestAMDI.cs b/csharp/test/Ice/slicing/exceptions/TestAMDI.cs index 080eec37210..9c81b4e8cf6 100644 --- a/csharp/test/Ice/slicing/exceptions/TestAMDI.cs +++ b/csharp/test/Ice/slicing/exceptions/TestAMDI.cs @@ -8,6 +8,7 @@ // ********************************************************************** using System; +using System.Threading.Tasks; using Test; public sealed class TestI : TestIntfDisp_ @@ -20,146 +21,121 @@ public sealed class TestI : TestIntfDisp_ } } - public override void shutdownAsync(Action response, Action<Exception> exception,Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void baseAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task baseAsBaseAsync(Ice.Current current) { - exception(new Base("Base.b")); + throw new Base("Base.b"); } - public override void unknownDerivedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task unknownDerivedAsBaseAsync(Ice.Current current) { - exception(new UnknownDerived("UnknownDerived.b", "UnknownDerived.ud")); + throw new UnknownDerived("UnknownDerived.b", "UnknownDerived.ud"); } - public override void knownDerivedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task knownDerivedAsBaseAsync(Ice.Current current) { - exception(new KnownDerived("KnownDerived.b", "KnownDerived.kd")); + throw new KnownDerived("KnownDerived.b", "KnownDerived.kd"); } - public override void - knownDerivedAsKnownDerivedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownDerivedAsKnownDerivedAsync(Ice.Current current) { - exception(new KnownDerived("KnownDerived.b", "KnownDerived.kd")); + throw new KnownDerived("KnownDerived.b", "KnownDerived.kd"); } - public override void - unknownIntermediateAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownIntermediateAsBaseAsync(Ice.Current current) { - exception(new UnknownIntermediate("UnknownIntermediate.b", "UnknownIntermediate.ui")); + throw new UnknownIntermediate("UnknownIntermediate.b", "UnknownIntermediate.ui"); } - public override void - knownIntermediateAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownIntermediateAsBaseAsync(Ice.Current current) { - exception(new KnownIntermediate("KnownIntermediate.b", "KnownIntermediate.ki")); + throw new KnownIntermediate("KnownIntermediate.b", "KnownIntermediate.ki"); } - public override void - knownMostDerivedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownMostDerivedAsBaseAsync(Ice.Current current) { - exception(new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd")); + throw new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd"); } - public override void - knownIntermediateAsKnownIntermediateAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownIntermediateAsKnownIntermediateAsync(Ice.Current current) { - exception(new KnownIntermediate("KnownIntermediate.b", "KnownIntermediate.ki")); + throw new KnownIntermediate("KnownIntermediate.b", "KnownIntermediate.ki"); } - public override void - knownMostDerivedAsKnownIntermediateAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownMostDerivedAsKnownIntermediateAsync(Ice.Current current) { - exception(new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd")); + throw new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd"); } - public override void - knownMostDerivedAsKnownMostDerivedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownMostDerivedAsKnownMostDerivedAsync(Ice.Current current) { - exception(new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd")); + throw new KnownMostDerived("KnownMostDerived.b", "KnownMostDerived.ki", "KnownMostDerived.kmd"); } - public override void - unknownMostDerived1AsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownMostDerived1AsBaseAsync(Ice.Current current) { - exception(new UnknownMostDerived1("UnknownMostDerived1.b", "UnknownMostDerived1.ki", - "UnknownMostDerived1.umd1")); + throw new UnknownMostDerived1("UnknownMostDerived1.b", "UnknownMostDerived1.ki", "UnknownMostDerived1.umd1"); } - public override void - unknownMostDerived1AsKnownIntermediateAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownMostDerived1AsKnownIntermediateAsync(Ice.Current current) { - exception(new UnknownMostDerived1("UnknownMostDerived1.b", "UnknownMostDerived1.ki", - "UnknownMostDerived1.umd1")); + throw new UnknownMostDerived1("UnknownMostDerived1.b", "UnknownMostDerived1.ki", "UnknownMostDerived1.umd1"); } - public override void - unknownMostDerived2AsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownMostDerived2AsBaseAsync(Ice.Current current) { - exception(new UnknownMostDerived2("UnknownMostDerived2.b", "UnknownMostDerived2.ui", - "UnknownMostDerived2.umd2")); + throw new UnknownMostDerived2("UnknownMostDerived2.b", "UnknownMostDerived2.ui", "UnknownMostDerived2.umd2"); } - public override void - unknownMostDerived2AsBaseCompactAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownMostDerived2AsBaseCompactAsync(Ice.Current current) { - exception(new UnknownMostDerived2("UnknownMostDerived2.b", "UnknownMostDerived2.ui", - "UnknownMostDerived2.umd2")); + throw new UnknownMostDerived2("UnknownMostDerived2.b", "UnknownMostDerived2.ui", "UnknownMostDerived2.umd2"); } - public override void knownPreservedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task knownPreservedAsBaseAsync(Ice.Current current) { - exception(new KnownPreservedDerived("base", "preserved", "derived")); + throw new KnownPreservedDerived("base", "preserved", "derived"); } - public override void - knownPreservedAsKnownPreservedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + knownPreservedAsKnownPreservedAsync(Ice.Current current) { - exception(new KnownPreservedDerived("base", "preserved", "derived")); + throw new KnownPreservedDerived("base", "preserved", "derived"); } - public override void - relayKnownPreservedAsBaseAsync(RelayPrx r, Action response, Action<Exception> exception, Ice.Current current) + public override Task + relayKnownPreservedAsBaseAsync(RelayPrx r, Ice.Current current) { - try - { - r.knownPreservedAsBase(); - test(false); - } - catch(Ice.UserException ex) - { - exception(ex); - } - catch(Ice.LocalException ex) - { - exception(ex); - } + r.knownPreservedAsBase(); + test(false); + return null; } - public override void - relayKnownPreservedAsKnownPreservedAsync(RelayPrx r, Action response, Action<Exception> exception, - Ice.Current current) + public override Task + relayKnownPreservedAsKnownPreservedAsync(RelayPrx r, Ice.Current current) { - try - { - r.knownPreservedAsKnownPreserved(); - test(false); - } - catch(Ice.UserException ex) - { - exception(ex); - } - catch(Ice.LocalException ex) - { - exception(ex); - } + r.knownPreservedAsKnownPreserved(); + test(false); + return null; } - public override void unknownPreservedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task unknownPreservedAsBaseAsync(Ice.Current current) { SPreserved2 ex = new SPreserved2(); ex.b = "base"; @@ -167,11 +143,11 @@ public sealed class TestI : TestIntfDisp_ ex.kpd = "derived"; ex.p1 = new SPreservedClass("bc", "spc"); ex.p2 = ex.p1; - exception(ex); + throw ex; } - public override void - unknownPreservedAsKnownPreservedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + unknownPreservedAsKnownPreservedAsync(Ice.Current current) { SPreserved2 ex = new SPreserved2(); ex.b = "base"; @@ -179,44 +155,22 @@ public sealed class TestI : TestIntfDisp_ ex.kpd = "derived"; ex.p1 = new SPreservedClass("bc", "spc"); ex.p2 = ex.p1; - exception(ex); + throw ex; } - public override void - relayUnknownPreservedAsBaseAsync(RelayPrx r, Action response, Action<Exception> exception, Ice.Current current) + public override Task + relayUnknownPreservedAsBaseAsync(RelayPrx r, Ice.Current current) { - try - { - r.unknownPreservedAsBase(); - test(false); - } - catch(Ice.UserException ex) - { - exception(ex); - } - catch(Ice.LocalException ex) - { - exception(ex); - } + r.unknownPreservedAsBase(); + test(false); + return null; } - public override void - relayUnknownPreservedAsKnownPreservedAsync(RelayPrx r, Action response, Action<Exception> exception, - Ice.Current current) + public override Task + relayUnknownPreservedAsKnownPreservedAsync(RelayPrx r, Ice.Current current) { - try - { - r.unknownPreservedAsKnownPreserved(); - test(false); - } - catch(Ice.UserException ex) - { - exception(ex); - } - catch(Ice.LocalException ex) - { - exception(ex); - } - + r.unknownPreservedAsKnownPreserved(); + test(false); + return null; } } diff --git a/csharp/test/Ice/slicing/objects/TestAMDI.cs b/csharp/test/Ice/slicing/objects/TestAMDI.cs index 8773f4e7c0e..3b1dcf9abcd 100644 --- a/csharp/test/Ice/slicing/objects/TestAMDI.cs +++ b/csharp/test/Ice/slicing/objects/TestAMDI.cs @@ -9,6 +9,7 @@ using System; using System.Collections.Generic; +using System.Threading.Tasks; using Test; public sealed class TestI : TestIntfDisp_ @@ -21,54 +22,53 @@ public sealed class TestI : TestIntfDisp_ } } - public override void shutdownAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task shutdownAsync(Ice.Current current) { current.adapter.getCommunicator().shutdown(); - response(); + return null; } - public override void - SBaseAsObjectAsync(Action<Ice.Value> response, Action<Exception> exception, Ice.Current current) + public override Task<Ice.Value> + SBaseAsObjectAsync(Ice.Current current) { - response(new SBase("SBase.sb")); + return Task.FromResult<Ice.Value>(new SBase("SBase.sb")); } - public override void SBaseAsSBaseAsync(Action<SBase> response, Action<Exception> exception, Ice.Current current) + public override Task<SBase> SBaseAsSBaseAsync(Ice.Current current) { - response(new SBase("SBase.sb")); + return Task.FromResult<SBase>(new SBase("SBase.sb")); } - public override void - SBSKnownDerivedAsSBaseAsync(Action<SBase> response, Action<Exception> exception, Ice.Current current) + public override Task<SBase> + SBSKnownDerivedAsSBaseAsync(Ice.Current current) { - response(new SBSKnownDerived("SBSKnownDerived.sb", "SBSKnownDerived.sbskd")); + return Task.FromResult<SBase>(new SBSKnownDerived("SBSKnownDerived.sb", "SBSKnownDerived.sbskd")); } - public override void - SBSKnownDerivedAsSBSKnownDerivedAsync(Action<SBSKnownDerived> response, Action<Exception> exception, - Ice.Current current) + public override Task<SBSKnownDerived> + SBSKnownDerivedAsSBSKnownDerivedAsync(Ice.Current current) { - response(new SBSKnownDerived("SBSKnownDerived.sb", "SBSKnownDerived.sbskd")); + return Task.FromResult<SBSKnownDerived>(new SBSKnownDerived("SBSKnownDerived.sb", "SBSKnownDerived.sbskd")); } - public override void - SBSUnknownDerivedAsSBaseAsync(Action<SBase> response, Action<Exception> exception, Ice.Current current) + public override Task<SBase> + SBSUnknownDerivedAsSBaseAsync(Ice.Current current) { - response(new SBSUnknownDerived("SBSUnknownDerived.sb", "SBSUnknownDerived.sbsud")); + return Task.FromResult<SBase>(new SBSUnknownDerived("SBSUnknownDerived.sb", "SBSUnknownDerived.sbsud")); } - public override void - SBSUnknownDerivedAsSBaseCompactAsync(Action<SBase> response, Action<Exception> exception, Ice.Current current) + public override Task<SBase> + SBSUnknownDerivedAsSBaseCompactAsync(Ice.Current current) { - response(new SBSUnknownDerived("SBSUnknownDerived.sb", "SBSUnknownDerived.sbsud")); + return Task.FromResult<SBase>(new SBSUnknownDerived("SBSUnknownDerived.sb", "SBSUnknownDerived.sbsud")); } - public override void SUnknownAsObjectAsync(Action<Ice.Value> response, Action<Exception> exception, Ice.Current current) + public override Task<Ice.Value> SUnknownAsObjectAsync(Ice.Current current) { - response(new SUnknown("SUnknown.su")); + return Task.FromResult<Ice.Value>(new SUnknown("SUnknown.su")); } - public override void checkSUnknownAsync(Ice.Value obj, Action response, Action<Exception> exception, Ice.Current current) + public override Task checkSUnknownAsync(Ice.Value obj, Ice.Current current) { if(current.encoding.Equals(Ice.Util.Encoding_1_0)) { @@ -79,18 +79,18 @@ public sealed class TestI : TestIntfDisp_ SUnknown su = obj as SUnknown; test(su.su.Equals("SUnknown.su")); } - response(); + return null; } - public override void oneElementCycleAsync(Action<B> response, Action<Exception> exception, Ice.Current current) + public override Task<B> oneElementCycleAsync(Ice.Current current) { B b = new B(); b.sb = "B1.sb"; b.pb = b; - response(b); + return Task.FromResult<B>(b); } - public override void twoElementCycleAsync(Action<B> response, Action<Exception> exception, Ice.Current current) + public override Task<B> twoElementCycleAsync(Ice.Current current) { B b1 = new B(); b1.sb = "B1.sb"; @@ -98,10 +98,10 @@ public sealed class TestI : TestIntfDisp_ b2.sb = "B2.sb"; b2.pb = b1; b1.pb = b2; - response(b1); + return Task.FromResult<B>(b1); } - public override void D1AsBAsync(Action<B> response, Action<Exception> exception, Ice.Current current) + public override Task<B> D1AsBAsync(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -113,10 +113,10 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(d1); + return Task.FromResult<B>(d1); } - public override void D1AsD1Async(Action<D1> response, Action<Exception> exception, Ice.Current current) + public override Task<D1> D1AsD1Async(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -128,10 +128,10 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(d1); + return Task.FromResult<D1>(d1); } - public override void D2AsBAsync(Action<B> response, Action<Exception> exception, Ice.Current current) + public override Task<B> D2AsBAsync(Ice.Current current) { D2 d2 = new D2(); d2.sb = "D2.sb"; @@ -143,11 +143,11 @@ public sealed class TestI : TestIntfDisp_ d1.pd1 = d2; d2.pb = d1; d2.pd2 = d1; - response(d2); + return Task.FromResult<B>(d2); } - public override void - paramTest1Async(Action<TestIntf_ParamTest1Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ParamTest1Result> + paramTest1Async(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -159,11 +159,11 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(new TestIntf_ParamTest1Result(d1, d2)); + return Task.FromResult<TestIntf_ParamTest1Result>(new TestIntf_ParamTest1Result(d1, d2)); } - public override void - paramTest2Async(Action<TestIntf_ParamTest2Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ParamTest2Result> + paramTest2Async(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -175,11 +175,11 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(new TestIntf_ParamTest2Result(d2, d1)); + return Task.FromResult<TestIntf_ParamTest2Result>(new TestIntf_ParamTest2Result(d2, d1)); } - public override void - paramTest3Async(Action<TestIntf_ParamTest3Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ParamTest3Result> + paramTest3Async(Ice.Current current) { D2 d2 = new D2(); d2.sb = "D2.sb (p1 1)"; @@ -205,11 +205,11 @@ public sealed class TestI : TestIntfDisp_ d3.pd1 = null; d4.pd2 = d3; - response(new TestIntf_ParamTest3Result(d3, d2, d4)); + return Task.FromResult<TestIntf_ParamTest3Result>(new TestIntf_ParamTest3Result(d3, d2, d4)); } - public override void - paramTest4Async(Action<TestIntf_ParamTest4Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ParamTest4Result> + paramTest4Async(Ice.Current current) { D4 d4 = new D4(); d4.sb = "D4.sb (1)"; @@ -218,11 +218,11 @@ public sealed class TestI : TestIntfDisp_ d4.p1.sb = "B.sb (1)"; d4.p2 = new B(); d4.p2.sb = "B.sb (2)"; - response(new TestIntf_ParamTest4Result(d4.p2, d4)); + return Task.FromResult<TestIntf_ParamTest4Result>(new TestIntf_ParamTest4Result(d4.p2, d4)); } - public override void - returnTest1Async(Action<TestIntf_ReturnTest1Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ReturnTest1Result> + returnTest1Async(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -234,11 +234,11 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(new TestIntf_ReturnTest1Result(d2, d2, d1)); + return Task.FromResult<TestIntf_ReturnTest1Result>(new TestIntf_ReturnTest1Result(d2, d2, d1)); } - public override void - returnTest2Async(Action<TestIntf_ReturnTest2Result> response, Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_ReturnTest2Result> + returnTest2Async(Ice.Current current) { D1 d1 = new D1(); d1.sb = "D1.sb"; @@ -250,24 +250,23 @@ public sealed class TestI : TestIntfDisp_ d2.pd2 = d1; d1.pb = d2; d1.pd1 = d2; - response(new TestIntf_ReturnTest2Result(d1, d1, d2)); + return Task.FromResult<TestIntf_ReturnTest2Result>(new TestIntf_ReturnTest2Result(d1, d1, d2)); } - public override void - returnTest3Async(B p1, B p2, Action<B> response, Action<Exception> exception, Ice.Current current) + public override Task<B> + returnTest3Async(B p1, B p2, Ice.Current current) { - response(p1); + return Task.FromResult<B>(p1); } - public override void - sequenceTestAsync(SS1 p1, SS2 p2, Action<SS3> response, Action<Exception> exception, Ice.Current current) + public override Task<SS3> + sequenceTestAsync(SS1 p1, SS2 p2, Ice.Current current) { - response(new SS3(p1, p2)); + return Task.FromResult<SS3>(new SS3(p1, p2)); } - public override void - dictionaryTestAsync(Dictionary<int, B> bin, Action<TestIntf_DictionaryTestResult> response, - Action<Exception> exception, Ice.Current current) + public override Task<TestIntf_DictionaryTestResult> + dictionaryTestAsync(Dictionary<int, B> bin, Ice.Current current) { var bout = new Dictionary<int, B>(); int i; @@ -292,17 +291,17 @@ public sealed class TestI : TestIntfDisp_ d1.pd1 = d1; r[i * 20] = d1; } - response(new TestIntf_DictionaryTestResult(r, bout)); + return Task.FromResult<TestIntf_DictionaryTestResult>(new TestIntf_DictionaryTestResult(r, bout)); } - public override void - exchangePBaseAsync(PBase pb, Action<PBase> response, Action<Exception> exception, Ice.Current current) + public override Task<PBase> + exchangePBaseAsync(PBase pb, Ice.Current current) { - response(pb); + return Task.FromResult<PBase>(pb); } - public override void - PBSUnknownAsPreservedAsync(Action<Preserved> response, Action<Exception> exception, Ice.Current current) + public override Task<Preserved> + PBSUnknownAsPreservedAsync(Ice.Current current) { PSUnknown r = new PSUnknown(); r.pi = 5; @@ -317,11 +316,11 @@ public sealed class TestI : TestIntfDisp_ // r.cl = new MyClass(15); } - response(r); + return Task.FromResult<Preserved>(r); } - public override void - checkPBSUnknownAsync(Preserved p, Action response, Action<Exception> exception, Ice.Current current) + public override Task + checkPBSUnknownAsync(Preserved p, Ice.Current current) { if(current.encoding.Equals(Ice.Util.Encoding_1_0)) { @@ -338,11 +337,11 @@ public sealed class TestI : TestIntfDisp_ test(pu.graph == null); test(pu.cl != null && pu.cl.i == 15); } - response(); + return null; } - public override void - PBSUnknownAsPreservedWithGraphAsync(Action<Preserved> response, Action<Exception> exception, Ice.Current current) + public override Task<Preserved> + PBSUnknownAsPreservedWithGraphAsync(Ice.Current current) { var r = new PSUnknown(); r.pi = 5; @@ -352,11 +351,11 @@ public sealed class TestI : TestIntfDisp_ r.graph.next = new PNode(); r.graph.next.next = new PNode(); r.graph.next.next.next = r.graph; - response(r); + return Task.FromResult<Preserved>(r); } - public override void - checkPBSUnknownWithGraphAsync(Preserved p, Action response, Action<Exception> exception, Ice.Current current) + public override Task + checkPBSUnknownWithGraphAsync(Preserved p, Ice.Current current) { if(current.encoding.Equals(Ice.Util.Encoding_1_0)) { @@ -374,21 +373,21 @@ public sealed class TestI : TestIntfDisp_ test(pu.graph.next != pu.graph.next.next); test(pu.graph.next.next.next == pu.graph); } - response(); + return null; } - public override void - PBSUnknown2AsPreservedWithGraphAsync(Action<Preserved> response, Action<Exception> exception, Ice.Current current) + public override Task<Preserved> + PBSUnknown2AsPreservedWithGraphAsync(Ice.Current current) { var r = new PSUnknown2(); r.pi = 5; r.ps = "preserved"; r.pb = r; - response(r); + return Task.FromResult<Preserved>(r); } - public override void - checkPBSUnknown2WithGraphAsync(Preserved p, Action response, Action<Exception> exception, Ice.Current current) + public override Task + checkPBSUnknown2WithGraphAsync(Preserved p, Ice.Current current) { if(current.encoding.Equals(Ice.Util.Encoding_1_0)) { @@ -403,26 +402,26 @@ public sealed class TestI : TestIntfDisp_ test(pu.ps.Equals("preserved")); test(pu.pb == pu); } - response(); + return null; } - public override void - exchangePNodeAsync(PNode pn, Action<PNode> response, Action<Exception> exception, Ice.Current current) + public override Task<PNode> + exchangePNodeAsync(PNode pn, Ice.Current current) { - response(pn); + return Task.FromResult<PNode>(pn); } - public override void throwBaseAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task throwBaseAsBaseAsync(Ice.Current current) { var be = new BaseException(); be.sbe = "sbe"; be.pb = new B(); be.pb.sb = "sb"; be.pb.pb = be.pb; - exception(be); + throw be; } - public override void throwDerivedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task throwDerivedAsBaseAsync(Ice.Current current) { DerivedException de = new DerivedException(); de.sbe = "sbe"; @@ -435,11 +434,11 @@ public sealed class TestI : TestIntfDisp_ de.pd1.pb = de.pd1; de.pd1.sd1 = "sd2"; de.pd1.pd1 = de.pd1; - exception(de); + throw de; } - public override - void throwDerivedAsDerivedAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwDerivedAsDerivedAsync(Ice.Current current) { var de = new DerivedException(); de.sbe = "sbe"; @@ -452,10 +451,10 @@ public sealed class TestI : TestIntfDisp_ de.pd1.pb = de.pd1; de.pd1.sd1 = "sd2"; de.pd1.pd1 = de.pd1; - exception(de); + throw de; } - public override void throwUnknownDerivedAsBaseAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task throwUnknownDerivedAsBaseAsync(Ice.Current current) { var d2 = new D2(); d2.sb = "sb d2"; @@ -469,10 +468,10 @@ public sealed class TestI : TestIntfDisp_ ude.sude = "sude"; ude.pd2 = d2; - exception(ude); + throw ude; } - public override void throwPreservedExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task throwPreservedExceptionAsync(Ice.Current current) { var ue = new PSUnknownException(); ue.p = new PSUnknown2(); @@ -480,16 +479,16 @@ public sealed class TestI : TestIntfDisp_ ue.p.ps = "preserved"; ue.p.pb = ue.p; - exception(ue); + throw ue; } - public override void - useForwardAsync(Action<Forward> response, Action<Exception> exception, Ice.Current current) + public override Task<Forward> + useForwardAsync(Ice.Current current) { var f = new Forward(); f = new Forward(); f.h = new Hidden(); f.h.f = f; - response(f); + return Task.FromResult<Forward>(f); } } diff --git a/csharp/test/Ice/slicing/objects/TestI.cs b/csharp/test/Ice/slicing/objects/TestI.cs index bfd9b784c3e..8e441434e2c 100644 --- a/csharp/test/Ice/slicing/objects/TestI.cs +++ b/csharp/test/Ice/slicing/objects/TestI.cs @@ -9,6 +9,7 @@ using System; using System.Collections.Generic; +using System.Threading.Tasks; using Test; public sealed class TestI : TestIntfDisp_ @@ -317,8 +318,8 @@ public sealed class TestI : TestIntfDisp_ } } - public override void - PBSUnknownAsPreservedWithGraphAsync(Action<Preserved> response, Action<Exception> exception, Ice.Current current) + public override Task<Preserved> + PBSUnknownAsPreservedWithGraphAsync(Ice.Current current) { var r = new PSUnknown(); r.pi = 5; @@ -328,7 +329,7 @@ public sealed class TestI : TestIntfDisp_ r.graph.next = new PNode(); r.graph.next.next = new PNode(); r.graph.next.next.next = r.graph; - response(r); + return Task.FromResult<Preserved>(r); } public override void checkPBSUnknownWithGraph(Preserved p, Ice.Current current) @@ -351,14 +352,14 @@ public sealed class TestI : TestIntfDisp_ } } - public override void - PBSUnknown2AsPreservedWithGraphAsync(Action<Preserved> response, Action<Exception> exception, Ice.Current current) + public override Task<Preserved> + PBSUnknown2AsPreservedWithGraphAsync( Ice.Current current) { var r = new PSUnknown2(); r.pi = 5; r.ps = "preserved"; r.pb = r; - response(r); + return Task.FromResult<Preserved>(r); } public override void checkPBSUnknown2WithGraph(Preserved p, Ice.Current current) @@ -441,15 +442,15 @@ public sealed class TestI : TestIntfDisp_ throw ude; } - public override void - throwPreservedExceptionAsync(Action response, Action<Exception> exception, Ice.Current current) + public override Task + throwPreservedExceptionAsync( Ice.Current current) { var ue = new PSUnknownException(); ue.p = new PSUnknown2(); ue.p.pi = 5; ue.p.ps = "preserved"; ue.p.pb = ue.p; - exception(ue); + throw ue; } public override void useForward(out Forward f, Ice.Current current) diff --git a/csharp/test/Ice/stream/AllTests.cs b/csharp/test/Ice/stream/AllTests.cs index cfab639cf0e..e7aba7107df 100644 --- a/csharp/test/Ice/stream/AllTests.cs +++ b/csharp/test/Ice/stream/AllTests.cs @@ -67,9 +67,9 @@ public class AllTests : TestCommon.TestApp this.obj = obj; } - public override void write(Ice.OutputStream @out) + public override void write(Ice.OutputStream outS) { - obj.write__(@out); + obj.write__(outS); called = true; } @@ -79,10 +79,10 @@ public class AllTests : TestCommon.TestApp private class TestValueReader : Ice.ValueReader { - public override void read(Ice.InputStream @in) + public override void read(Ice.InputStream inS) { obj = new MyClass(); - obj.read__(@in); + obj.read__(inS); called = true; } @@ -136,41 +136,41 @@ public class AllTests : TestCommon.TestApp communicator.getValueFactoryManager().add(factoryWrapper.create, MyClass.ice_staticId()); - Ice.InputStream @in; - Ice.OutputStream @out; + Ice.InputStream inS; + Ice.OutputStream outS; Write("testing primitive types... "); Flush(); { byte[] data = new byte[0]; - @in = new Ice.InputStream(communicator, data); + inS = new Ice.InputStream(communicator, data); } { - @out = new Ice.OutputStream(communicator); - @out.startEncapsulation(); - @out.writeBool(true); - @out.endEncapsulation(); - var data = @out.finished(); + outS = new Ice.OutputStream(communicator); + outS.startEncapsulation(); + outS.writeBool(true); + outS.endEncapsulation(); + var data = outS.finished(); - @in = new Ice.InputStream(communicator, data); - @in.startEncapsulation(); - test(@in.readBool()); - @in.endEncapsulation(); + inS = new Ice.InputStream(communicator, data); + inS.startEncapsulation(); + test(inS.readBool()); + inS.endEncapsulation(); - @in = new Ice.InputStream(communicator, data); - @in.startEncapsulation(); - test(@in.readBool()); - @in.endEncapsulation(); + inS = new Ice.InputStream(communicator, data); + inS.startEncapsulation(); + test(inS.readBool()); + inS.endEncapsulation(); } { var data = new byte[0]; - @in = new Ice.InputStream(communicator, data); + inS = new Ice.InputStream(communicator, data); try { - @in.readBool(); + inS.readBool(); test(false); } catch (Ice.UnmarshalOutOfBoundsException) @@ -179,67 +179,67 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator); - @out.writeBool(true); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readBool()); + outS = new Ice.OutputStream(communicator); + outS.writeBool(true); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readBool()); } { - @out = new Ice.OutputStream(communicator); - @out.writeByte(1); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readByte() == 1); + outS = new Ice.OutputStream(communicator); + outS.writeByte(1); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readByte() == 1); } { - @out = new Ice.OutputStream(communicator); - @out.writeShort(2); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readShort() == 2); + outS = new Ice.OutputStream(communicator); + outS.writeShort(2); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readShort() == 2); } { - @out = new Ice.OutputStream(communicator); - @out.writeInt(3); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readInt() == 3); + outS = new Ice.OutputStream(communicator); + outS.writeInt(3); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readInt() == 3); } { - @out = new Ice.OutputStream(communicator); - @out.writeLong(4); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readLong() == 4); + outS = new Ice.OutputStream(communicator); + outS.writeLong(4); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readLong() == 4); } { - @out = new Ice.OutputStream(communicator); - @out.writeFloat((float)5.0); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readFloat() == (float)5.0); + outS = new Ice.OutputStream(communicator); + outS.writeFloat((float)5.0); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readFloat() == (float)5.0); } { - @out = new Ice.OutputStream(communicator); - @out.writeDouble(6.0); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readDouble() == 6.0); + outS = new Ice.OutputStream(communicator); + outS.writeDouble(6.0); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readDouble() == 6.0); } { - @out = new Ice.OutputStream(communicator); - @out.writeString("hello world"); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - test(@in.readString().Equals("hello world")); + outS = new Ice.OutputStream(communicator); + outS.writeString("hello world"); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + test(inS.readString().Equals("hello world")); } WriteLine("ok"); @@ -248,16 +248,16 @@ public class AllTests : TestCommon.TestApp Flush(); { - @out = new Ice.OutputStream(communicator); - MyEnumHelper.write(@out, MyEnum.enum3); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var e = MyEnumHelper.read(@in); + outS = new Ice.OutputStream(communicator); + MyEnumHelper.write(outS, MyEnum.enum3); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var e = MyEnumHelper.read(inS); test(e == MyEnum.enum3); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var s = new SmallStruct(); s.bo = true; s.by = 1; @@ -269,28 +269,26 @@ public class AllTests : TestCommon.TestApp s.str = "7"; s.e = MyEnum.enum2; s.p = MyClassPrxHelper.uncheckedCast(communicator.stringToProxy("test:default")); - s.write__(@out); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var s2 = new SmallStruct(); - s2.read__(@in); + SmallStruct.write(outS, s); + var data = outS.finished(); + var s2 = SmallStruct.read(new Ice.InputStream(communicator, data)); test(s2.Equals(s)); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var o = new OptionalClass(); o.bo = true; o.by = 5; o.sh = 4; o.i = 3; - @out.writeValue(o); - @out.writePendingValues(); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); + outS.writeValue(o); + outS.writePendingValues(); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); TestReadValueCallback cb = new TestReadValueCallback(); - @in.readValue(cb.invoke); - @in.readPendingValues(); + inS.readValue(cb.invoke); + inS.readPendingValues(); var o2 = (OptionalClass)cb.obj; test(o2.bo == o.bo); test(o2.by == o.by); @@ -307,19 +305,19 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator, Ice.Util.Encoding_1_0); + outS = new Ice.OutputStream(communicator, Ice.Util.Encoding_1_0); var o = new OptionalClass(); o.bo = true; o.by = 5; o.sh = 4; o.i = 3; - @out.writeValue(o); - @out.writePendingValues(); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, Ice.Util.Encoding_1_0, data); + outS.writeValue(o); + outS.writePendingValues(); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, Ice.Util.Encoding_1_0, data); var cb = new TestReadValueCallback(); - @in.readValue(cb.invoke); - @in.readPendingValues(); + inS.readValue(cb.invoke); + inS.readPendingValues(); var o2 = (OptionalClass)cb.obj; test(o2.bo == o.bo); test(o2.by == o.by); @@ -329,120 +327,120 @@ public class AllTests : TestCommon.TestApp { bool[] arr = { true, false, true, false }; - @out = new Ice.OutputStream(communicator); - Ice.BoolSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.BoolSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.BoolSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.BoolSeqHelper.read(inS); test(Compare(arr2, arr)); bool[][] arrS = { arr, new bool[0], arr }; - @out = new Ice.OutputStream(communicator); - BoolSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = BoolSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + BoolSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = BoolSSHelper.read(inS); test(Compare(arr2S, arrS)); } { byte[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); - Ice.ByteSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.ByteSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.ByteSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.ByteSeqHelper.read(inS); test(Compare(arr2, arr)); byte[][] arrS = { arr, new byte[0], arr }; - @out = new Ice.OutputStream(communicator); - ByteSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = ByteSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + ByteSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = ByteSSHelper.read(inS); test(Compare(arr2S, arrS)); } { Serialize.Small small = new Serialize.Small(); small.i = 99; - @out = new Ice.OutputStream(communicator); - @out.writeSerializable(small); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var small2 = (Serialize.Small)@in.readSerializable(); + outS = new Ice.OutputStream(communicator); + outS.writeSerializable(small); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var small2 = (Serialize.Small)inS.readSerializable(); test(small2.i == 99); } { short[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); - Ice.ShortSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.ShortSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.ShortSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.ShortSeqHelper.read(inS); test(Compare(arr2, arr)); short[][] arrS = { arr, new short[0], arr }; - @out = new Ice.OutputStream(communicator); - ShortSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = ShortSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + ShortSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = ShortSSHelper.read(inS); test(Compare(arr2S, arrS)); } { int[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); - Ice.IntSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.IntSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.IntSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.IntSeqHelper.read(inS); test(Compare(arr2, arr)); int[][] arrS = { arr, new int[0], arr }; - @out = new Ice.OutputStream(communicator); - IntSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = IntSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + IntSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = IntSSHelper.read(inS); test(Compare(arr2S, arrS)); } { long[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); - Ice.LongSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.LongSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.LongSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.LongSeqHelper.read(inS); test(Compare(arr2, arr)); long[][] arrS = { arr, new long[0], arr }; - @out = new Ice.OutputStream(communicator); - LongSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = LongSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + LongSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = LongSSHelper.read(inS); test(Compare(arr2S, arrS)); } { float[] arr = {1, 2, 3, 4}; - @out = new Ice.OutputStream(communicator); - Ice.FloatSeqHelper.write(@out, arr); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - float[] arr2 = Ice.FloatSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.FloatSeqHelper.write(outS, arr); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + float[] arr2 = Ice.FloatSeqHelper.read(inS); test(Compare(arr2, arr)); float[][] arrS = { arr, new float[0], arr }; - @out = new Ice.OutputStream(communicator); - FloatSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = FloatSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + FloatSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = FloatSSHelper.read(inS); test(Compare(arr2S, arrS)); } @@ -454,55 +452,55 @@ public class AllTests : TestCommon.TestApp (double)3, (double)4 }; - @out = new Ice.OutputStream(communicator); - Ice.DoubleSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.DoubleSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.DoubleSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.DoubleSeqHelper.read(inS); test(Compare(arr2, arr)); double[][] arrS = { arr, new double[0], arr }; - @out = new Ice.OutputStream(communicator); - DoubleSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = DoubleSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + DoubleSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = DoubleSSHelper.read(inS); test(Compare(arr2S, arrS)); } { string[] arr = { "string1", "string2", "string3", "string4" }; - @out = new Ice.OutputStream(communicator); - Ice.StringSeqHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = Ice.StringSeqHelper.read(@in); + outS = new Ice.OutputStream(communicator); + Ice.StringSeqHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = Ice.StringSeqHelper.read(inS); test(Compare(arr2, arr)); string[][] arrS = { arr, new string[0], arr }; - @out = new Ice.OutputStream(communicator); - StringSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = StringSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + StringSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = StringSSHelper.read(inS); test(Compare(arr2S, arrS)); } { MyEnum[] arr = { MyEnum.enum3, MyEnum.enum2, MyEnum.enum1, MyEnum.enum2 }; - @out = new Ice.OutputStream(communicator); - MyEnumSHelper.write(@out, arr); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = MyEnumSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + MyEnumSHelper.write(outS, arr); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = MyEnumSHelper.read(inS); test(Compare(arr2, arr)); MyEnum[][] arrS = { arr, new MyEnum[0], arr }; - @out = new Ice.OutputStream(communicator); - MyEnumSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = MyEnumSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + MyEnumSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = MyEnumSSHelper.read(inS); test(Compare(arr2S, arrS)); } @@ -545,13 +543,13 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator); - MyClassSHelper.write(@out, myClassArray); - @out.writePendingValues(); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2 = MyClassSHelper.read(@in); - @in.readPendingValues(); + outS = new Ice.OutputStream(communicator); + MyClassSHelper.write(outS, myClassArray); + outS.writePendingValues(); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2 = MyClassSHelper.read(inS); + inS.readPendingValues(); test(arr2.Length == myClassArray.Length); for (int i = 0; i < arr2.Length; ++i) { @@ -572,11 +570,11 @@ public class AllTests : TestCommon.TestApp } MyClass[][] arrS = { myClassArray, new MyClass[0], myClassArray }; - @out = new Ice.OutputStream(communicator); - MyClassSSHelper.write(@out, arrS); - data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var arr2S = MyClassSSHelper.read(@in); + outS = new Ice.OutputStream(communicator); + MyClassSSHelper.write(outS, arrS); + data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var arr2S = MyClassSSHelper.read(inS); test(arr2S.Length == arrS.Length); test(arr2S[0].Length == arrS[0].Length); test(arr2S[1].Length == arrS[1].Length); @@ -584,20 +582,20 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var obj = new MyClass(); obj.s = new SmallStruct(); obj.s.e = MyEnum.enum2; var writer = new TestValueWriter(obj); - @out.writeValue(writer); - @out.writePendingValues(); - var data = @out.finished(); + outS.writeValue(writer); + outS.writePendingValues(); + var data = outS.finished(); test(writer.called); factoryWrapper.setFactory(TestObjectFactory); - @in = new Ice.InputStream(communicator, data); + inS = new Ice.InputStream(communicator, data); var cb = new TestReadValueCallback(); - @in.readValue(cb.invoke); - @in.readPendingValues(); + inS.readValue(cb.invoke); + inS.readPendingValues(); test(cb.obj != null); test(cb.obj is TestValueReader); var reader = (TestValueReader)cb.obj; @@ -608,7 +606,7 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var ex = new MyException(); var c = new MyClass(); @@ -631,13 +629,13 @@ public class AllTests : TestCommon.TestApp ex.c = c; - @out.writeException(ex); - var data = @out.finished(); + outS.writeException(ex); + var data = outS.finished(); - @in = new Ice.InputStream(communicator, data); + inS = new Ice.InputStream(communicator, data); try { - @in.throwException(); + inS.throwException(); test(false); } catch (MyException ex1) @@ -663,11 +661,11 @@ public class AllTests : TestCommon.TestApp var dict = new Dictionary<byte, bool>(); dict.Add(4, true); dict.Add(1, false); - @out = new Ice.OutputStream(communicator); - ByteBoolDHelper.write(@out, dict); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = ByteBoolDHelper.read(@in); + outS = new Ice.OutputStream(communicator); + ByteBoolDHelper.write(outS, dict); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = ByteBoolDHelper.read(inS); test(Ice.CollectionComparer.Equals(dict2, dict)); } @@ -675,11 +673,11 @@ public class AllTests : TestCommon.TestApp var dict = new Dictionary<short, int>(); dict.Add(1, 9); dict.Add(4, 8); - @out = new Ice.OutputStream(communicator); - ShortIntDHelper.write(@out, dict); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = ShortIntDHelper.read(@in); + outS = new Ice.OutputStream(communicator); + ShortIntDHelper.write(outS, dict); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = ShortIntDHelper.read(inS); test(Ice.CollectionComparer.Equals(dict2, dict)); } @@ -687,11 +685,11 @@ public class AllTests : TestCommon.TestApp var dict = new Dictionary<long, float>(); dict.Add(123809828, 0.51f); dict.Add(123809829, 0.56f); - @out = new Ice.OutputStream(communicator); - LongFloatDHelper.write(@out, dict); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = LongFloatDHelper.read(@in); + outS = new Ice.OutputStream(communicator); + LongFloatDHelper.write(outS, dict); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = LongFloatDHelper.read(inS); test(Ice.CollectionComparer.Equals(dict2, dict)); } @@ -699,11 +697,11 @@ public class AllTests : TestCommon.TestApp var dict = new Dictionary<string, string>(); dict.Add("key1", "value1"); dict.Add("key2", "value2"); - @out = new Ice.OutputStream(communicator); - StringStringDHelper.write(@out, dict); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = StringStringDHelper.read(@in); + outS = new Ice.OutputStream(communicator); + StringStringDHelper.write(outS, dict); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = StringStringDHelper.read(inS); test(Ice.CollectionComparer.Equals(dict2, dict)); } @@ -717,13 +715,13 @@ public class AllTests : TestCommon.TestApp c.s = new SmallStruct(); c.s.e = MyEnum.enum3; dict.Add("key2", c); - @out = new Ice.OutputStream(communicator); - StringMyClassDHelper.write(@out, dict); - @out.writePendingValues(); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = StringMyClassDHelper.read(@in); - @in.readPendingValues(); + outS = new Ice.OutputStream(communicator); + StringMyClassDHelper.write(outS, dict); + outS.writePendingValues(); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = StringMyClassDHelper.read(inS); + inS.readPendingValues(); test(dict2.Count == dict.Count); test(dict2["key1"].s.e == MyEnum.enum2); test(dict2["key2"].s.e == MyEnum.enum3); @@ -731,44 +729,44 @@ public class AllTests : TestCommon.TestApp { bool[] arr = { true, false, true, false }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<bool>(arr); - BoolListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = BoolListHelper.read(@in); + BoolListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = BoolListHelper.read(inS); test(Compare(l, l2)); } { byte[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<byte>(arr); - ByteListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = ByteListHelper.read(@in); + ByteListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = ByteListHelper.read(inS); test(Compare(l2, l)); } { MyEnum[] arr = { MyEnum.enum3, MyEnum.enum2, MyEnum.enum1, MyEnum.enum2 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<MyEnum>(arr); - MyEnumListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = MyEnumListHelper.read(@in); + MyEnumListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = MyEnumListHelper.read(inS); test(Compare(l2, l)); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<SmallStruct>(smallStructArray); - SmallStructListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = SmallStructListHelper.read(@in); + SmallStructListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = SmallStructListHelper.read(inS); test(l2.Count == l.Count); for (int i = 0; i < l2.Count; ++i) { @@ -777,14 +775,14 @@ public class AllTests : TestCommon.TestApp } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<MyClass>(myClassArray); - MyClassListHelper.write(@out, l); - @out.writePendingValues(); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = MyClassListHelper.read(@in); - @in.readPendingValues(); + MyClassListHelper.write(outS, l); + outS.writePendingValues(); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = MyClassListHelper.read(inS); + inS.readPendingValues(); test(l2.Count == l.Count); for (int i = 0; i < l2.Count; ++i) { @@ -809,55 +807,55 @@ public class AllTests : TestCommon.TestApp var arr = new MyClassPrx[2]; arr[0] = MyClassPrxHelper.uncheckedCast(communicator.stringToProxy("zero")); arr[1] = MyClassPrxHelper.uncheckedCast(communicator.stringToProxy("one")); - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<MyClassPrx>(arr); - MyClassProxyListHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = MyClassProxyListHelper.read(@in); + MyClassProxyListHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = MyClassProxyListHelper.read(inS); test(Compare(l2, l)); } { short[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new LinkedList<short>(arr); - ShortLinkedListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = ShortLinkedListHelper.read(@in); + ShortLinkedListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = ShortLinkedListHelper.read(inS); test(Compare(l2, l)); } { int[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); LinkedList<int> l = new LinkedList<int>(arr); - Test.IntLinkedListHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - LinkedList<int> l2 = Test.IntLinkedListHelper.read(@in); + Test.IntLinkedListHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + LinkedList<int> l2 = Test.IntLinkedListHelper.read(inS); test(Compare(l2, l)); } { MyEnum[] arr = { MyEnum.enum3, MyEnum.enum2, MyEnum.enum1, MyEnum.enum2 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); LinkedList<Test.MyEnum> l = new LinkedList<Test.MyEnum>(arr); - Test.MyEnumLinkedListHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - LinkedList<Test.MyEnum> l2 = Test.MyEnumLinkedListHelper.read(@in); + Test.MyEnumLinkedListHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + LinkedList<Test.MyEnum> l2 = Test.MyEnumLinkedListHelper.read(inS); test(Compare(l2, l)); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new LinkedList<Test.SmallStruct>(smallStructArray); - SmallStructLinkedListHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = SmallStructLinkedListHelper.read(@in); + SmallStructLinkedListHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = SmallStructLinkedListHelper.read(inS); test(l2.Count == l.Count); var e = l.GetEnumerator(); var e2 = l2.GetEnumerator(); @@ -869,33 +867,33 @@ public class AllTests : TestCommon.TestApp { long[] arr = { 0x01, 0x11, 0x12, 0x22 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Stack<long>(arr); - LongStackHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = LongStackHelper.read(@in); + LongStackHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = LongStackHelper.read(inS); test(Compare(l2, l)); } { float[] arr = { 1, 2, 3, 4 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Stack<float>(arr); - FloatStackHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = FloatStackHelper.read(@in); + FloatStackHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = FloatStackHelper.read(inS); test(Compare(l2, l)); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Stack<SmallStruct>(smallStructArray); - SmallStructStackHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = SmallStructStackHelper.read(@in); + SmallStructStackHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = SmallStructStackHelper.read(inS); test(l2.Count == l.Count); var e = l.GetEnumerator(); var e2 = l2.GetEnumerator(); @@ -909,44 +907,44 @@ public class AllTests : TestCommon.TestApp var arr = new MyClassPrx[2]; arr[0] = MyClassPrxHelper.uncheckedCast(communicator.stringToProxy("zero")); arr[1] = MyClassPrxHelper.uncheckedCast(communicator.stringToProxy("one")); - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Stack<MyClassPrx>(arr); - MyClassProxyStackHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = MyClassProxyStackHelper.read(@in); + MyClassProxyStackHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = MyClassProxyStackHelper.read(inS); test(Compare(l2, l)); } { double[] arr = { 1, 2, 3, 4 }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Queue<double>(arr); - DoubleQueueHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = DoubleQueueHelper.read(@in); + DoubleQueueHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = DoubleQueueHelper.read(inS); test(Compare(l2, l)); } { string[] arr = { "string1", "string2", "string3", "string4" }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Queue<string>(arr); - StringQueueHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = StringQueueHelper.read(@in); + StringQueueHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = StringQueueHelper.read(inS); test(Compare(l2, l)); } { - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Queue<SmallStruct>(smallStructArray); - SmallStructQueueHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = SmallStructQueueHelper.read(@in); + SmallStructQueueHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = SmallStructQueueHelper.read(inS); test(l2.Count == l.Count); var e = l.GetEnumerator(); var e2 = l2.GetEnumerator(); @@ -959,24 +957,24 @@ public class AllTests : TestCommon.TestApp { string[] arr = { "string1", "string2", "string3", "string4" }; string[][] arrS = { arr, new string[0], arr }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new List<string[]>(arrS); - StringSListHelper.write(@out, l); - byte[] data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = StringSListHelper.read(@in); + StringSListHelper.write(outS, l); + byte[] data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = StringSListHelper.read(inS); test(Compare(l2, l)); } { string[] arr = { "string1", "string2", "string3", "string4" }; string[][] arrS = { arr, new string[0], arr }; - @out = new Ice.OutputStream(communicator); + outS = new Ice.OutputStream(communicator); var l = new Stack<string[]>(arrS); - StringSStackHelper.write(@out, l); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var l2 = StringSStackHelper.read(@in); + StringSStackHelper.write(outS, l); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var l2 = StringSStackHelper.read(inS); test(Compare(l2, l)); } @@ -984,11 +982,11 @@ public class AllTests : TestCommon.TestApp var dict = new SortedDictionary<string, string>(); dict.Add("key1", "value1"); dict.Add("key2", "value2"); - @out = new Ice.OutputStream(communicator); - SortedStringStringDHelper.write(@out, dict); - var data = @out.finished(); - @in = new Ice.InputStream(communicator, data); - var dict2 = SortedStringStringDHelper.read(@in); + outS = new Ice.OutputStream(communicator); + SortedStringStringDHelper.write(outS, dict); + var data = outS.finished(); + inS = new Ice.InputStream(communicator, data); + var dict2 = SortedStringStringDHelper.read(inS); test(Ice.CollectionComparer.Equals(dict2, dict)); } diff --git a/csharp/test/IceBox/admin/TestI.cs b/csharp/test/IceBox/admin/TestI.cs index 36317cd595a..004eb2e4f8c 100644 --- a/csharp/test/IceBox/admin/TestI.cs +++ b/csharp/test/IceBox/admin/TestI.cs @@ -15,27 +15,10 @@ public class TestFacetI : TestFacetDisp_, Ice.PropertiesAdminUpdateCallback { public TestFacetI() { - _called = false; } override public Dictionary<string, string> getChanges(Ice.Current current) { - // - // The client calls PropertiesAdmin::setProperties() and then invokes - // this operation. Since setProperties() is implemented using AMD, the - // client might receive its reply and then call getChanges() before our - // updated() method is called. We block here to ensure that updated() - // gets called before we return the most recent set of changes. - // - lock(this) - { - while(!_called) - { - System.Threading.Monitor.Wait(this); - } - } - _called = false; - return _changes; } @@ -44,8 +27,6 @@ public class TestFacetI : TestFacetDisp_, Ice.PropertiesAdminUpdateCallback lock(this) { _changes = changes; - _called = true; - System.Threading.Monitor.Pulse(this); } } diff --git a/csharp/test/Slice/keyword/Client.cs b/csharp/test/Slice/keyword/Client.cs index 603ccb30043..e2835a837ba 100644 --- a/csharp/test/Slice/keyword/Client.cs +++ b/csharp/test/Slice/keyword/Client.cs @@ -9,6 +9,7 @@ using System; using System.Collections.Generic; +using System.Threading.Tasks; public class Client { @@ -22,10 +23,10 @@ public class Client public sealed class caseI : @abstract.caseDisp_ { - public override void - catchAsync(int @checked, Action<int> response, Action<Exception> exception, Ice.Current current__) + public override Task<int> + catchAsync(int @checked, Ice.Current current__) { - response(0); + return Task<int>.FromResult(0); } } @@ -46,10 +47,10 @@ public class Client public sealed class explicitI : @abstract.explicitDisp_ { - public override void - catchAsync(int @checked, Action<int> response, Action<Exception> exception, Ice.Current current__) + public override Task<int> + catchAsync(int @checked, Ice.Current current__) { - response(0); + return Task<int>.FromResult(0); } public override void @default(Ice.Current current) |