summaryrefslogtreecommitdiff
path: root/cpp/src/slice2javae/Gen.cpp
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2007-04-27 12:49:29 +0000
committerDwayne Boone <dwayne@zeroc.com>2007-04-27 12:49:29 +0000
commitdea5208bf4010ca002addb77b46e59a8e16632d8 (patch)
tree81da23a32aa1d84b512cf553726400f08098d030 /cpp/src/slice2javae/Gen.cpp
parentRemoved unused getFixedConnections method. (diff)
downloadice-dea5208bf4010ca002addb77b46e59a8e16632d8.tar.bz2
ice-dea5208bf4010ca002addb77b46e59a8e16632d8.tar.xz
ice-dea5208bf4010ca002addb77b46e59a8e16632d8.zip
Make generated code more Ice like
Diffstat (limited to 'cpp/src/slice2javae/Gen.cpp')
-rw-r--r--cpp/src/slice2javae/Gen.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/cpp/src/slice2javae/Gen.cpp b/cpp/src/slice2javae/Gen.cpp
index 36a91cd5009..ff8dcfcd2a0 100644
--- a/cpp/src/slice2javae/Gen.cpp
+++ b/cpp/src/slice2javae/Gen.cpp
@@ -2175,13 +2175,30 @@ Slice::Gen::HelperVisitor::visitClassDefStart(const ClassDefPtr& p)
{
out << "return ";
}
- out << opName << spar << args << "__defaultContext()" << epar << ';';
+ out << opName << spar << args << "null, false" << epar << ';';
out << eb;
out << sp;
out << nl << "public " << retS << nl << opName << spar << params << "java.util.Hashtable __ctx" << epar;
writeThrowsClause(package, throws);
out << sb;
+ out << nl;
+ if(ret)
+ {
+ out << "return ";
+ }
+ out << opName << spar << args << "__ctx, true" << epar << ';';
+ out << eb;
+
+ out << sp;
+ out << nl << "public " << retS << nl << opName << spar << params
+ << "java.util.Hashtable __ctx, boolean __explicitCtx" << epar;
+ writeThrowsClause(package, throws);
+ out << sb;
+ out << nl << "if(__explicitCtx && __ctx == null)";
+ out << sb;
+ out << nl << "__ctx = _emptyContext;";
+ out << eb;
out << nl << "int __cnt = 0;";
out << nl << "while(true)";
out << sb;