summaryrefslogtreecommitdiff
path: root/java/test/Ice/operations/AMDMyDerivedClassI.java
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2011-05-04 17:51:35 -0700
committerMark Spruiell <mes@zeroc.com>2011-05-04 17:51:35 -0700
commit9afd50c19bceeb2be64bf0c7c6d7a0c2c126dde8 (patch)
tree44786ffd2f2bf17f6872f97ea109cb09243d9cf9 /java/test/Ice/operations/AMDMyDerivedClassI.java
parentminor doc fixes for RHEL (diff)
downloadice-9afd50c19bceeb2be64bf0c7c6d7a0c2c126dde8.tar.bz2
ice-9afd50c19bceeb2be64bf0c7c6d7a0c2c126dde8.tar.xz
ice-9afd50c19bceeb2be64bf0c7c6d7a0c2c126dde8.zip
bug 4976 - inconsistent operation mode for pseudo ops
Diffstat (limited to 'java/test/Ice/operations/AMDMyDerivedClassI.java')
-rw-r--r--java/test/Ice/operations/AMDMyDerivedClassI.java50
1 files changed, 50 insertions, 0 deletions
diff --git a/java/test/Ice/operations/AMDMyDerivedClassI.java b/java/test/Ice/operations/AMDMyDerivedClassI.java
index 3435c9482c2..1e9359d4bfb 100644
--- a/java/test/Ice/operations/AMDMyDerivedClassI.java
+++ b/java/test/Ice/operations/AMDMyDerivedClassI.java
@@ -22,11 +22,13 @@ import test.Ice.operations.AMD.Test.AMD_MyClass_opDoubleMarshaling;
import test.Ice.operations.AMD.Test.AMD_MyClass_opFloatDouble;
import test.Ice.operations.AMD.Test.AMD_MyClass_opFloatDoubleS;
import test.Ice.operations.AMD.Test.AMD_MyClass_opFloatDoubleSS;
+import test.Ice.operations.AMD.Test.AMD_MyClass_opIdempotent;
import test.Ice.operations.AMD.Test.AMD_MyClass_opIntS;
import test.Ice.operations.AMD.Test.AMD_MyClass_opLongFloatD;
import test.Ice.operations.AMD.Test.AMD_MyClass_opMyClass;
import test.Ice.operations.AMD.Test.AMD_MyClass_opMyEnum;
import test.Ice.operations.AMD.Test.AMD_MyClass_opMyStructMyEnumD;
+import test.Ice.operations.AMD.Test.AMD_MyClass_opNonmutating;
import test.Ice.operations.AMD.Test.AMD_MyClass_opShortIntD;
import test.Ice.operations.AMD.Test.AMD_MyClass_opShortIntLong;
import test.Ice.operations.AMD.Test.AMD_MyClass_opShortIntLongS;
@@ -78,6 +80,38 @@ public final class AMDMyDerivedClassI extends MyDerivedClass
private AMD_MyClass_opVoid _cb;
}
+ //
+ // Override the Object "pseudo" operations to verify the operation mode.
+ //
+
+ public boolean
+ ice_isA(String id, Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Nonmutating);
+ return super.ice_isA(id, current);
+ }
+
+ public void
+ ice_ping(Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Nonmutating);
+ super.ice_ping(current);
+ }
+
+ public String[]
+ ice_ids(Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Nonmutating);
+ return super.ice_ids(current);
+ }
+
+ public String
+ ice_id(Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Nonmutating);
+ return super.ice_id(current);
+ }
+
synchronized public void
shutdown_async(AMD_MyClass_shutdown cb,
Ice.Current current)
@@ -510,6 +544,22 @@ public final class AMDMyDerivedClassI extends MyDerivedClass
}
public void
+ opIdempotent_async(AMD_MyClass_opIdempotent cb,
+ Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Idempotent);
+ cb.ice_response();
+ }
+
+ public void
+ opNonmutating_async(AMD_MyClass_opNonmutating cb,
+ Ice.Current current)
+ {
+ test(current.mode == Ice.OperationMode.Nonmutating);
+ cb.ice_response();
+ }
+
+ public void
opDerived_async(AMD_MyDerivedClass_opDerived cb,
Ice.Current current)
{