diff options
Diffstat (limited to 'cpp/test/Ice/slicing/exceptions/TestAMDI.cpp')
-rw-r--r-- | cpp/test/Ice/slicing/exceptions/TestAMDI.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/cpp/test/Ice/slicing/exceptions/TestAMDI.cpp b/cpp/test/Ice/slicing/exceptions/TestAMDI.cpp index f8358484dfb..f87288d4f08 100644 --- a/cpp/test/Ice/slicing/exceptions/TestAMDI.cpp +++ b/cpp/test/Ice/slicing/exceptions/TestAMDI.cpp @@ -156,6 +156,27 @@ TestI::unknownMostDerived2AsBaseCompact_async(const AMD_TestIntf_unknownMostDeri } void +TestI::knownPreservedAsBase_async(const AMD_TestIntf_knownPreservedAsBasePtr& cb, const ::Ice::Current&) +{ + KnownPreservedDerived ex; + ex.b = "base"; + ex.kp = "preserved"; + ex.kpd = "derived"; + cb->ice_exception(ex); +} + +void +TestI::knownPreservedAsKnownPreserved_async(const AMD_TestIntf_knownPreservedAsKnownPreservedPtr& cb, + const ::Ice::Current&) +{ + KnownPreservedDerived ex; + ex.b = "base"; + ex.kp = "preserved"; + ex.kpd = "derived"; + cb->ice_exception(ex); +} + +void TestI::relayKnownPreservedAsBase_async(const AMD_TestIntf_relayKnownPreservedAsBasePtr& cb, const RelayPrx& r, const ::Ice::Current&) { @@ -186,6 +207,31 @@ TestI::relayKnownPreservedAsKnownPreserved_async(const AMD_TestIntf_relayKnownPr } void +TestI::unknownPreservedAsBase_async(const AMD_TestIntf_unknownPreservedAsBasePtr& cb, const ::Ice::Current&) +{ + SPreserved2 ex; + ex.b = "base"; + ex.kp = "preserved"; + ex.kpd = "derived"; + ex.p1 = new SPreservedClass("bc", "spc"); + ex.p2 = ex.p1; + cb->ice_exception(ex); +} + +void +TestI::unknownPreservedAsKnownPreserved_async(const AMD_TestIntf_unknownPreservedAsKnownPreservedPtr& cb, + const ::Ice::Current&) +{ + SPreserved2 ex; + ex.b = "base"; + ex.kp = "preserved"; + ex.kpd = "derived"; + ex.p1 = new SPreservedClass("bc", "spc"); + ex.p2 = ex.p1; + cb->ice_exception(ex); +} + +void TestI::relayUnknownPreservedAsBase_async(const AMD_TestIntf_relayUnknownPreservedAsBasePtr& cb, const RelayPrx& r, const ::Ice::Current&) { |