in empire-db-jakarta-faces/src/main/java/org/apache/empire/jakarta/utils/TagEncodingHelper.java [1849:1888]
protected String assembleStyleClassString(String... styles)
{
int totalLength=0;
String current = null;
// Count total length
for (int i=0; i<styles.length; i++)
{ int len = (styles[i]!=null ? styles[i].length() : 0);
if (len>0) {
if (current!=null && current.equals(styles[i]))
continue; // same style twice
current = styles[i];
if (totalLength>0 && !current.startsWith(SPACE))
len++;
totalLength += len;
}
}
// only one?
if (current==null || current.length()==totalLength)
return current;
// concat now
current = null;
StringBuilder b = new StringBuilder(totalLength);
for (int i=0; i<styles.length; i++)
{ int len = (styles[i]!=null ? styles[i].length() : 0);
if (len>0) {
if (current!=null && current.equals(styles[i]))
continue; // same style twice
current = styles[i];
if (b.length()>0 && !current.startsWith(SPACE))
b.append(SPACE);
b.append(current);
}
}
/* can never be
if (b.length()!=totalLength)
log.warn("Wrong calculation for assembleStyleClassString!");
*/
// done
return b.toString();
}