diff options
author | Bernard Normier <bernard@zeroc.com> | 2006-10-27 20:06:22 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2006-10-27 20:06:22 +0000 |
commit | cf95cce15efb9e8d5226b94e8d080252336a491c (patch) | |
tree | 593f42dd1384cf44efd6a754035d8b0ded1a06a4 /java/test/Ice/operations/Twoways.java | |
parent | undo previous merge (diff) | |
download | ice-cf95cce15efb9e8d5226b94e8d080252336a491c.tar.bz2 ice-cf95cce15efb9e8d5226b94e8d080252336a491c.tar.xz ice-cf95cce15efb9e8d5226b94e8d080252336a491c.zip |
Implicit Context implementation + test
Diffstat (limited to 'java/test/Ice/operations/Twoways.java')
-rw-r--r-- | java/test/Ice/operations/Twoways.java | 54 |
1 files changed, 53 insertions, 1 deletions
diff --git a/java/test/Ice/operations/Twoways.java b/java/test/Ice/operations/Twoways.java index dc6f3069161..3317e05800b 100644 --- a/java/test/Ice/operations/Twoways.java +++ b/java/test/Ice/operations/Twoways.java @@ -19,7 +19,7 @@ class Twoways } static void - twoways(Ice.Communicator communicator, Ice.InitializationData initData, Test.MyClassPrx p) + twoways(Ice.Communicator communicator, Test.MyClassPrx p) { { p.opVoid(); @@ -663,6 +663,58 @@ class Twoways communicator.setDefaultContext(new java.util.HashMap()); } } + { + // + // Test implicit context propagation + // + + String[] impls = {"Shared", "SharedWithoutLocking", "PerThread"}; + for(int i = 0; i < 3; i++) + { + Ice.InitializationData initData = new Ice.InitializationData(); + initData.properties = Ice.Util.createProperties(); + initData.properties.setProperty("Ice.ImplicitContext", impls[i]); + + Ice.Communicator ic = Ice.Util.initialize(initData); + + java.util.Map ctx = new java.util.HashMap(); + ctx.put("one", "ONE"); + ctx.put("two", "TWO"); + ctx.put("three", "THREE"); + + Test.MyClassPrx p3 = Test.MyClassPrxHelper.uncheckedCast( + ic.stringToProxy("test:default -p 12010 -t 10000")); + + ic.getImplicitContext().setContext(ctx); + test(ic.getImplicitContext().getContext().equals(ctx)); + test(p3.opContext().equals(ctx)); + + ic.getImplicitContext().set("zero", "ZERO"); + test(ic.getImplicitContext().get("zero").equals("ZERO")); + test(ic.getImplicitContext().getWithDefault("foobar", "foo").equals("foo")); + + ctx = ic.getImplicitContext().getContext(); + test(p3.opContext().equals(ctx)); + + java.util.Map prxContext = new java.util.HashMap(); + prxContext.put("one", "UN"); + prxContext.put("four", "QUATRE"); + + java.util.Map combined = new java.util.HashMap(ctx); + combined.putAll(prxContext); + test(combined.get("one").equals("UN")); + + p3 = Test.MyClassPrxHelper.uncheckedCast(p3.ice_context(prxContext)); + + ic.getImplicitContext().setContext(null); + test(p3.opContext().equals(prxContext)); + + ic.getImplicitContext().setContext(ctx); + test(p3.opContext().equals(combined)); + + ic.destroy(); + } + } { double d = 1278312346.0 / 13.0; |