1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
|
#
# Copyright (c) ZeroC, Inc. All rights reserved.
#
import Ice, Test, array, sys
class ThrowerI(Test.Thrower):
def shutdown(self, current=None):
current.adapter.getCommunicator().shutdown()
def supportsUndeclaredExceptions(self, current=None):
return True
def supportsAssertException(self, current=None):
return False
def throwAasA(self, a, current=None):
ex = Test.A()
ex.aMem = a
raise ex
def throwAorDasAorD(self, a, current=None):
if a > 0:
ex = Test.A()
ex.aMem = a
raise ex
else:
ex = Test.D()
ex.dMem = a
raise ex
def throwBasA(self, a, b, current=None):
self.throwBasB(a, b, current)
def throwCasA(self, a, b, c, current=None):
self.throwCasC(a, b, c, current)
def throwBasB(self, a, b, current=None):
ex = Test.B()
ex.aMem = a
ex.bMem = b
raise ex
def throwCasB(self, a, b, c, current=None):
self.throwCasC(a, b, c, current)
def throwCasC(self, a, b, c, current=None):
ex = Test.C()
ex.aMem = a
ex.bMem = b
ex.cMem = c
raise ex
def throwModA(self, a, a2, current=None):
ex = Test.Mod.A()
ex.aMem = a
ex.a2Mem = a2
raise ex
def throwUndeclaredA(self, a, current=None):
ex = Test.A()
ex.aMem = a
raise ex
def throwUndeclaredB(self, a, b, current=None):
ex = Test.B()
ex.aMem = a
ex.bMem = b
raise ex
def throwUndeclaredC(self, a, b, c, current=None):
ex = Test.C()
ex.aMem = a
ex.bMem = b
ex.cMem = c
raise ex
def throwLocalException(self, current=None):
raise Ice.TimeoutException()
def throwNonIceException(self, current=None):
raise RuntimeError("12345")
def throwAssertException(self, current=None):
raise RuntimeError("operation `throwAssertException' not supported")
def throwMemoryLimitException(self, seq, current=None):
return bytearray(20 * 1024)
def throwLocalExceptionIdempotent(self, current=None):
raise Ice.TimeoutException()
def throwAfterResponse(self, current=None):
#
# Only relevant for AMD.
#
pass
def throwAfterException(self, current=None):
#
# Only relevant for AMD.
#
raise Test.A()
def throwMarshalException(self, current):
if "return" in current.ctx:
return ("", 0)
if "param" in current.ctx:
return (0, "")
|