in jaxb-api-2.0/src/main/java/javax/xml/bind/annotation/adapters/CollapsedStringAdapter.java [25:57]
public String unmarshal(String v) {
if(v == null) {
return null;
}
int len = v.length();
int s;
for (s = 0; s < len && !isWhiteSpace(v.charAt(s)); s++);
if (s == len) {
return v;
}
StringBuffer result = new StringBuffer(len);
if (s != 0) {
for(int i = 0; i < s; i++) {
result.append(v.charAt(i));
}
result.append(' ');
}
boolean inStripMode = true;
for (int i = s + 1; i < len; i++) {
char ch = v.charAt(i);
boolean b = isWhiteSpace(ch);
if (inStripMode && b) {
continue;
}
inStripMode = b;
result.append(inStripMode ? ' ' : ch);
}
len = result.length();
if (len > 0 && result.charAt(len - 1) == ' ') {
result.setLength(len - 1);
}
return result.toString();
}