diff options
author | Mark Spruiell <mes@zeroc.com> | 2006-04-11 19:48:55 +0000 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2006-04-11 19:48:55 +0000 |
commit | aeafe1122f28456c3fb9e27ec4c5832dc7c7a154 (patch) | |
tree | a06c097c1ad05e6c0772ab3eb70cc88fc5a87393 /java/src/IceInternal/ValueWriter.java | |
parent | fixing bug with Java interop (diff) | |
download | ice-aeafe1122f28456c3fb9e27ec4c5832dc7c7a154.tar.bz2 ice-aeafe1122f28456c3fb9e27ec4c5832dc7c7a154.tar.xz ice-aeafe1122f28456c3fb9e27ec4c5832dc7c7a154.zip |
indent string values
Diffstat (limited to 'java/src/IceInternal/ValueWriter.java')
-rw-r--r-- | java/src/IceInternal/ValueWriter.java | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/java/src/IceInternal/ValueWriter.java b/java/src/IceInternal/ValueWriter.java index 953ca4a174c..c5aba59298e 100644 --- a/java/src/IceInternal/ValueWriter.java +++ b/java/src/IceInternal/ValueWriter.java @@ -36,10 +36,26 @@ public final class ValueWriter } else if(c.equals(String.class)) { + // + // Indent the lines of a string value. + // writeName(name, out); out.print("\""); - out.print(value.toString()); + out.useCurrentPosAsIndent(); + String str = value.toString(); + int start = 0, pos; + while(start < str.length() && (pos = str.indexOf('\n', start)) != -1) + { + out.print(str.substring(start, pos)); + out.nl(); + start = pos + 1; + } + if(start < str.length()) + { + out.print(str.substring(start)); + } out.print("\""); + out.restoreIndent(); } else if(c.isArray()) { |