summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/JavaUtil.cpp
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2004-08-26 16:29:48 +0000
committerMark Spruiell <mes@zeroc.com>2004-08-26 16:29:48 +0000
commit285955241991fdac0a9b6046903c807093c3b788 (patch)
tree4ae11cffc798f9237059bbc7b439697b8c30a5a9 /cpp/src/Slice/JavaUtil.cpp
parentcatch exception (diff)
downloadice-285955241991fdac0a9b6046903c807093c3b788.tar.bz2
ice-285955241991fdac0a9b6046903c807093c3b788.tar.xz
ice-285955241991fdac0a9b6046903c807093c3b788.zip
allow metadata for operation return value and parameters
Diffstat (limited to 'cpp/src/Slice/JavaUtil.cpp')
-rw-r--r--cpp/src/Slice/JavaUtil.cpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/cpp/src/Slice/JavaUtil.cpp b/cpp/src/Slice/JavaUtil.cpp
index ed2f558d838..06e1dc9f331 100644
--- a/cpp/src/Slice/JavaUtil.cpp
+++ b/cpp/src/Slice/JavaUtil.cpp
@@ -462,13 +462,28 @@ Slice::JavaGenerator::typeToString(const TypePtr& type,
SequencePtr seq = SequencePtr::dynamicCast(type);
if(seq)
{
+ string listType = findMetaData(metaData);
if(mode == TypeModeOut)
{
- return getAbsolute(seq, package, "", "Holder");
+ if(listType.empty())
+ {
+ return getAbsolute(seq, package, "", "Holder");
+ }
+ else if(listType == "java.util.ArrayList")
+ {
+ return "Ice.ArrayListHolder";
+ }
+ else if(listType == "java.util.LinkedList")
+ {
+ return "Ice.LinkedListHolder";
+ }
+ else
+ {
+ return "Ice.ListHolder";
+ }
}
else
{
- string listType = findMetaData(metaData);
if(listType.empty())
{
StringList l = seq->getMetaData();