in platforms/commands/commands-core/src/main/java/org/apache/camel/commands/EndpointStatisticCommand.java [196:243]
private String buildFormatString(final Map<String, Integer> columnWidths, final boolean isHeader) {
final String fieldPreamble;
final String fieldPostamble;
final int columnWidthIncrement;
if (isHeader) {
fieldPreamble = DEFAULT_HEADER_PREAMBLE;
fieldPostamble = DEFAULT_HEADER_POSTAMBLE;
} else {
fieldPreamble = DEFAULT_FIELD_PREAMBLE;
fieldPostamble = DEFAULT_FIELD_POSTAMBLE;
}
columnWidthIncrement = DEFAULT_COLUMN_WIDTH_INCREMENT;
int contextLen = Math.min(columnWidths.get(CONTEXT_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
contextLen = Math.max(MIN_COLUMN_WIDTH, contextLen);
int uriLen = Math.min(columnWidths.get(URI_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
uriLen = Math.max(MIN_COLUMN_WIDTH, uriLen);
int routeIdLen = Math.min(columnWidths.get(ROUTE_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
routeIdLen = Math.max(MIN_COLUMN_WIDTH, routeIdLen);
int directionLen = Math.min(columnWidths.get(DIRECTION_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
directionLen = Math.max(MIN_COLUMN_WIDTH, directionLen);
int staticLen = Math.min(columnWidths.get(STATIC_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
staticLen = Math.max(MIN_COLUMN_WIDTH, staticLen);
int dynamicLen = Math.min(columnWidths.get(DYNAMIC_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
dynamicLen = Math.max(MIN_COLUMN_WIDTH, dynamicLen);
int totalLen = Math.min(columnWidths.get(HITS_COLUMN_LABEL) + columnWidthIncrement, getMaxColumnWidth());
totalLen = Math.max(MIN_COLUMN_WIDTH, totalLen);
// last row does not have min width
final StringBuilder retval = new StringBuilder(DEFAULT_FORMAT_BUFFER_LENGTH);
retval.append(fieldPreamble).append("%-").append(contextLen).append('.').append(contextLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%-").append(uriLen).append('.').append(uriLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%-").append(routeIdLen).append('.').append(routeIdLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%-").append(directionLen).append('.').append(directionLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%-").append(staticLen).append('.').append(staticLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%-").append(dynamicLen).append('.').append(dynamicLen).append('s').append(fieldPostamble).append(' ');
retval.append(fieldPreamble).append("%").append(totalLen).append('.').append(totalLen).append('s').append(fieldPostamble).append(' ');
return retval.toString();
}