diff options
author | Michi Henning <michi@zeroc.com> | 2006-01-12 05:30:44 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2006-01-12 05:30:44 +0000 |
commit | a1d3c9639f93a9923511c83d21d7c010f09dbd28 (patch) | |
tree | 6a95fb9e8c6215a441854f07f28c18e28482956c /cpp/src/slice2vb/Gen.cpp | |
parent | But 341. (diff) | |
download | ice-a1d3c9639f93a9923511c83d21d7c010f09dbd28.tar.bz2 ice-a1d3c9639f93a9923511c83d21d7c010f09dbd28.tar.xz ice-a1d3c9639f93a9923511c83d21d7c010f09dbd28.zip |
Bug 341.
Diffstat (limited to 'cpp/src/slice2vb/Gen.cpp')
-rwxr-xr-x | cpp/src/slice2vb/Gen.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cpp/src/slice2vb/Gen.cpp b/cpp/src/slice2vb/Gen.cpp index f7e6c7303d1..1eb4a0ec495 100755 --- a/cpp/src/slice2vb/Gen.cpp +++ b/cpp/src/slice2vb/Gen.cpp @@ -3708,7 +3708,6 @@ Slice::Gen::HelperVisitor::visitClassDefStart(const ClassDefPtr& p) << "ByVal ctx__ As Ice.Context" << epar << " Implements " << name << "Prx." << opName << "_async"; // TODO: should be containing class? _out.inc(); - _out << nl << "checkTwowayOnly__(\"" << p->name() << "\")"; _out << nl << "cb__.invoke__" << spar << "Me" << argsAMI << "ctx__" << epar; _out.dec(); _out << nl << "End Sub"; @@ -4792,6 +4791,16 @@ Slice::Gen::AsyncVisitor::visitOperation(const OperationPtr& p) _out << nl << "Try"; _out.inc(); _out << nl << "prepare__(prx__, \"" << p->name() << "\", " << sliceModeToIceMode(p) << ", ctx__)"; + if(p->returnsData()) + { + _out << nl << "If Not prx__.ice_isTwoway() Then"; + _out.inc(); + _out << nl << "Dim ex As Ice.TwowayOnlyException = New Ice.TwowayOnlyException()"; + _out << nl << "ex.operation = \"" << p->name() << "\""; + _out << nl << "Throw ex"; + _out.dec(); + _out << nl << "End If"; + } for(q = inParams.begin(); q != inParams.end(); ++q) { string typeS = typeToString(q->first); |