public static String renderParameterInfoDataAsTable(Map<String, String> parameters, boolean withHeader,
			int lastColumnMaxWidth) {
		final Table table = new Table();

		table.getHeaders().put(COLUMN_1, new TableHeader("Parameter"));

		final TableHeader tableHeader2 = new TableHeader("Value (Configured or Default)");
		tableHeader2.setMaxWidth(lastColumnMaxWidth);
		table.getHeaders().put(COLUMN_2, tableHeader2);

		for (Entry<String, String> entry : parameters.entrySet()) {

			final TableRow tableRow = new TableRow();

			table.getHeaders().get(COLUMN_1).updateWidth(entry.getKey().length());
			tableRow.addValue(COLUMN_1, entry.getKey());

			int width = entry.getValue() != null ? entry.getValue().length() : 0;

			table.getHeaders().get(COLUMN_2).updateWidth(width);
			tableRow.addValue(COLUMN_2, entry.getValue());

			table.getRows().add(tableRow);
		}

		return renderTextTable(table, withHeader);
	}
Renders a textual representation of the list of provided Map data

@param columns List of Maps
@return The rendered table representation as String
spring-xd-shell/src/main/java/org/springframework/xd/shell/util/UiUtils.java