diff options
Diffstat (limited to 'java/src/Ice/ObjectPrxHelper.java')
-rw-r--r-- | java/src/Ice/ObjectPrxHelper.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/java/src/Ice/ObjectPrxHelper.java b/java/src/Ice/ObjectPrxHelper.java index b87dcee662e..22dae62aecf 100644 --- a/java/src/Ice/ObjectPrxHelper.java +++ b/java/src/Ice/ObjectPrxHelper.java @@ -18,6 +18,12 @@ public class ObjectPrxHelper extends ObjectPrxHelperBase } public static ObjectPrx + checkedCast(Ice.ObjectPrx b, java.util.Map ctx) + { + return b; + } + + public static ObjectPrx checkedCast(Ice.ObjectPrx b, String f) { ObjectPrx d = null; @@ -40,6 +46,28 @@ public class ObjectPrxHelper extends ObjectPrxHelperBase } public static ObjectPrx + checkedCast(Ice.ObjectPrx b, String f, java.util.Map ctx) + { + ObjectPrx d = null; + if(b != null) + { + Ice.ObjectPrx bb = b.ice_newFacet(f); + try + { + boolean ok = bb.ice_isA("::Object", ctx); + assert(ok); + ObjectPrxHelper h = new ObjectPrxHelper(); + h.__copyFrom(bb); + d = h; + } + catch(Ice.FacetNotExistException ex) + { + } + } + return d; + } + + public static ObjectPrx uncheckedCast(Ice.ObjectPrx b) { return b; |