public override int run(string[] args) { // // Create OA and servants // communicator().getProperties().setProperty("MyOA.AdapterId", "myOA"); Ice.ObjectAdapter oa = communicator().createObjectAdapterWithEndpoints("MyOA2", "tcp -h localhost"); 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); if (rs != 0) { return(rs); } Console.WriteLine("Now with AMD"); rs = runAmd(prxForAMD, amdInterceptor); if (rs != 0) { return(rs); } oa.activate(); // Only necessary for non-collocation optimized tests Console.WriteLine("Collocation optimization off"); interceptor.clear(); prx = Test.MyObjectPrxHelper.uncheckedCast(prx.ice_collocationOptimized(false)); rs = run(prx, interceptor); if (rs != 0) { return(rs); } Console.WriteLine("Now with AMD"); amdInterceptor.clear(); prxForAMD = Test.MyObjectPrxHelper.uncheckedCast(prxForAMD.ice_collocationOptimized(false)); rs = runAmd(prxForAMD, amdInterceptor); return(rs); }
public override int run(string[] args) { // // Create OA and servants // communicator().getProperties().setProperty("MyOA.AdapterId", "myOA"); Ice.ObjectAdapter oa = communicator().createObjectAdapterWithEndpoints("MyOA2", "tcp -h localhost"); 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); if(rs != 0) { return rs; } Console.WriteLine("Now with AMD"); rs = runAmd(prxForAMD, amdInterceptor); if(rs != 0) { return rs; } oa.activate(); // Only necessary for non-collocation optimized tests Console.WriteLine("Collocation optimization off"); interceptor.clear(); prx = Test.MyObjectPrxHelper.uncheckedCast(prx.ice_collocationOptimized(false)); rs = run(prx, interceptor); if(rs != 0) { return rs; } Console.WriteLine("Now with AMD"); amdInterceptor.clear(); prxForAMD = Test.MyObjectPrxHelper.uncheckedCast(prxForAMD.ice_collocationOptimized(false)); rs = runAmd(prxForAMD, amdInterceptor); return rs; }
private int runAmd(Test.MyObjectPrx prx, AMDInterceptorI interceptor) { Console.Out.Write("testing simple interceptor... "); Console.Out.Flush(); test(interceptor.getLastOperation() == null); test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); 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)); 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)); Console.WriteLine("ok"); Console.Out.Write("testing user exception... "); Console.Out.Flush(); try { prx.amdBadAdd(33, 12); test(false); } catch(Test.InvalidInputException) { // expected } test(interceptor.getLastOperation().Equals("amdBadAdd")); test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); test(interceptor.getActualStatus().Equals(Ice.DispatchStatus.DispatchUserException)); Console.WriteLine("ok"); Console.Out.Write("testing ONE... "); Console.Out.Flush(); interceptor.clear(); try { prx.amdNotExistAdd(33, 12); test(false); } catch(Ice.ObjectNotExistException) { // 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); Console.WriteLine("ok"); Console.Out.Write("testing system exception... "); Console.Out.Flush(); interceptor.clear(); try { prx.amdBadSystemAdd(33, 12); test(false); } catch(Ice.UnknownException) { test(!prx.ice_isCollocationOptimized()); } catch(MySystemException) { test(prx.ice_isCollocationOptimized()); } catch(Exception) { 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); Console.WriteLine("ok"); return 0; }
private int runAmd(Test.MyObjectPrx prx, AMDInterceptorI interceptor) { Console.Out.Write("testing simple interceptor... "); Console.Out.Flush(); test(interceptor.getLastOperation() == null); test(interceptor.getLastStatus() == Ice.DispatchStatus.DispatchAsync); 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)); 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)); Console.WriteLine("ok"); Console.Out.Write("testing user exception... "); Console.Out.Flush(); try { prx.amdBadAdd(33, 12); test(false); } catch (Test.InvalidInputException) { // expected } test(interceptor.getLastOperation().Equals("amdBadAdd")); test(interceptor.getLastStatus().Equals(Ice.DispatchStatus.DispatchAsync)); test(interceptor.getActualStatus().Equals(Ice.DispatchStatus.DispatchUserException)); Console.WriteLine("ok"); Console.Out.Write("testing ONE... "); Console.Out.Flush(); interceptor.clear(); try { prx.amdNotExistAdd(33, 12); test(false); } catch (Ice.ObjectNotExistException) { // 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); Console.WriteLine("ok"); Console.Out.Write("testing system exception... "); Console.Out.Flush(); interceptor.clear(); try { prx.amdBadSystemAdd(33, 12); test(false); } catch (Ice.UnknownException) { test(!prx.ice_isCollocationOptimized()); } catch (MySystemException) { test(prx.ice_isCollocationOptimized()); } catch (Exception) { 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); Console.WriteLine("ok"); return(0); }