List of usage examples for org.apache.commons.lang StringUtils leftPad
public static String leftPad(String str, int size)
Left pad a String with spaces (' ').
From source file:org.springframework.yarn.support.console.UiUtils.java
/** * Renders a textual representation of the provided {@link Table} * * @param table Table data {@link Table} * @param withHeader with header/*from ww w. j a va2s . co m*/ * @return The rendered table representation as String */ public static String renderTextTable(Table table, boolean withHeader) { table.calculateColumnWidths(); final String padding = " "; final String headerBorder = getHeaderBorder(table.getHeaders()); final StringBuilder textTable = new StringBuilder(); if (withHeader) { final StringBuilder headerline = new StringBuilder(); for (TableHeader header : table.getHeaders().values()) { if (header.getName().length() > header.getWidth()) { Iterable<String> chunks = Splitter.fixedLength(header.getWidth()).split(header.getName()); int length = headerline.length(); boolean first = true; for (String chunk : chunks) { final String lineToAppend; if (first) { lineToAppend = padding + CommonUtils.padRight(chunk, header.getWidth()); } else { lineToAppend = StringUtils.leftPad("", length) + padding + CommonUtils.padRight(chunk, header.getWidth()); } first = false; headerline.append(lineToAppend); headerline.append("\n"); } headerline.deleteCharAt(headerline.lastIndexOf("\n")); } else { String lineToAppend = padding + CommonUtils.padRight(header.getName(), header.getWidth()); headerline.append(lineToAppend); } } textTable.append(org.springframework.util.StringUtils.trimTrailingWhitespace(headerline.toString())); textTable.append("\n"); } textTable.append(headerBorder); for (TableRow row : table.getRows()) { StringBuilder rowLine = new StringBuilder(); for (Entry<Integer, TableHeader> entry : table.getHeaders().entrySet()) { String value = row.getValue(entry.getKey()); if (value.length() > entry.getValue().getWidth()) { Iterable<String> chunks = Splitter.fixedLength(entry.getValue().getWidth()).split(value); int length = rowLine.length(); boolean first = true; for (String chunk : chunks) { final String lineToAppend; if (first) { lineToAppend = padding + CommonUtils.padRight(chunk, entry.getValue().getWidth()); } else { lineToAppend = StringUtils.leftPad("", length) + padding + CommonUtils.padRight(chunk, entry.getValue().getWidth()); } first = false; rowLine.append(lineToAppend); rowLine.append("\n"); } rowLine.deleteCharAt(rowLine.lastIndexOf("\n")); } else { String lineToAppend = padding + CommonUtils.padRight(value, entry.getValue().getWidth()); rowLine.append(lineToAppend); } } textTable.append(org.springframework.util.StringUtils.trimTrailingWhitespace(rowLine.toString())); textTable.append("\n"); } if (!withHeader) { textTable.append(headerBorder); } return textTable.toString(); }
From source file:org.structr.autocomplete.AbstractHintProvider.java
protected void alignHintDescriptions(final List<GraphObject> hints, final int maxNameLength) { // insert appropriate number of spaces into description to align function names for (final GraphObject item : hints) { final String text = item.getProperty(displayText); final int pos = text.indexOf(" - "); if (pos < maxNameLength) { final StringBuilder buf = new StringBuilder(text); buf.insert(pos, StringUtils.leftPad("", maxNameLength - pos)); // ignore exception, won't happen on a GraphObjectMap anyway try { item.setProperty(displayText, buf.toString()); } catch (FrameworkException fex) { }// ww w.j a v a 2s . c o m } } }
From source file:org.structr.bolt.SessionTransaction.java
public void logQuery(final String statement, final Map<String, Object> map, final long t0) { if (db.logQueries()) { if (!isPing || db.logPingQueries()) { final long time = System.currentTimeMillis() - t0; final String log = time + "ms"; if (map != null && map.size() > 0) { System.out.print(StringUtils.leftPad(log, 5) + " "); if (statement.contains("extractedContent")) { System.out.println(statement + "\t\t SET on extractedContent - value suppressed"); } else { System.out.println(statement + "\t\t Parameters: " + map.toString()); }//from ww w .j a va2 s .c o m } else { System.out.print(StringUtils.leftPad(log, 5) + " "); System.out.println(statement); } } } }
From source file:org.tridas.io.formats.corina.CorinaFile.java
protected void writeData(ArrayList<String> file) { file.add(";DATA "); // clone the data, so i can add the infamous "9990". (i can't // modify the data in-place, because that could cause all // sorts of problems, and it would be a huge mess to handle it // in a special case.) List<Object> data = new ArrayList<Object>(); ArrayList<Integer> count = new ArrayList<Integer>(); for (TridasValue v : dataValues.getValues()) { data.add(v.getValue());//from w w w .j av a 2 s.co m if (v.isSetCount()) { count.add(v.getCount()); } } // Add end marker to data and count data.add(new Integer(9990)); if (count.size() > 0) { count.add(count.get(count.size() - 1)); } // Get start year SafeIntYear startYear = new SafeIntYear(1001); if (series.isSetInterpretation()) { if (series.getInterpretation().isSetFirstYear()) { startYear = new SafeIntYear(series.getInterpretation().getFirstYear()); } } // Get end year SafeIntYear endYear = startYear.add(data.size()); YearRange range = new YearRange(startYear, endYear.add(-1)); // row ends, for count info SafeIntYear rleft = null, rright; String line = ""; // loop through years for (SafeIntYear y = range.getStart(); y.compareTo(range.getEnd()) <= 0; y = y.add(+1)) { // year if (range.startOfRow(y)) { line += (StringUtils.leftPad(y.toString(), 5)); rleft = y; } // pad the first row if (y.equals(range.getStart()) || y.isYearOne()) for (int i = 0; i < y.column(); i++) line += " "; // data: pad to 6 ("%-6d") line += StringUtils.leftPad(data.get(y.diff(range.getStart())).toString(), 6); // (FIXME: dies if data[i] = null -- so don't let nulls get here!) // newline if (range.endOfRow(y)) { file.add(line); line = ""; rright = y; // last row is 4 cols to the left. don't ask why. line += rright.equals(range.getEnd()) ? " " : " "; // (3,7) // count (in brackets), for the line of data i just wrote if (rleft.equals(range.getStart()) || rleft.isYearOne()) for (int i = 0; i < rleft.column(); i++) line += " "; // (6) if (count.size() == 0) { String c = StringUtils.leftPad("[1]", 6); for (SafeIntYear y1 = rleft; y1.compareTo(rright) <= 0; y1 = y1.add(+1)) { line += c; } } else { for (SafeIntYear y1 = rleft; y1.compareTo(rright) <= 0; y1 = y1.add(+1)) { String c = count.get(y1.diff(range.getStart())).toString(); c = StringUtils.leftPad("[" + c + "]", 6); line += c; } } file.add(line); line = ""; } } // blank line after s.data file.add(""); line = ""; }
From source file:org.tridas.io.formats.corina.CorinaFile.java
private void saveWeiserjahre(ArrayList<String> file) { // if no wj, do nothing if (wjValues == null) return;/*from w w w. j ava 2s . c o m*/ List<Object> data = new ArrayList<Object>(); for (TridasValue v : wjValues.getValues()) { if (v.getValue().matches("\\d/\\d")) { data.add(v.getValue()); } else { return; } } file.add(";weiserjahre "); // Get start year SafeIntYear startYear = new SafeIntYear(1001); if (series.isSetInterpretation()) { if (series.getInterpretation().isSetFirstYear()) { startYear = new SafeIntYear(series.getInterpretation().getFirstYear()); } } // Get end year SafeIntYear endYear = startYear.add(data.size()); YearRange range = new YearRange(startYear, endYear.add(-1)); String line = ""; for (SafeIntYear y = startYear; y.compareTo(endYear) < 0; y = y.add(1)) { // year: "%5d" if (y.equals(startYear) || y.column() == 0) line += StringUtils.leftPad(y.toString(), 5); // always use '/' in corina files line += StringUtils.leftPad(data.get(y.diff(range.getStart())).toString(), 6); // newline if (y.column() == 9 || y.equals(endYear.add(-1))) { file.add(line); line = ""; } } file.add(line); line = ""; }
From source file:org.tridas.io.formats.heikkenenchrono.HeikkenenChronoFile.java
@Override public String[] saveToString() { ArrayList<String> file = new ArrayList<String>(); if (dataValues != null && dataValues.isSetValues()) { List<TridasValue> vals = dataValues.getValues(); Collections.reverse(vals); for (TridasValue val : vals) { file.add(StringUtils.leftPad(val.getValue().toString(), 4)); }/*from w w w. j a v a 2 s . co m*/ } return file.toArray(new String[0]); }
From source file:org.tridas.io.formats.nottingham.NottinghamFile.java
@Override public String[] saveToString() { StringBuilder sb = new StringBuilder(); sb.append(defaults.getStringDefaultValue(DefaultFields.SERIES_TITLE).getValue() + " " + defaults.getIntegerDefaultValue(DefaultFields.RING_COUNT).getValue() + System.getProperty("line.separator")); int i = 1;/*from w ww . j a v a 2 s . co m*/ for (TridasValue val : dataValues.getValues()) { // Add value to our line sb.append(StringUtils.leftPad(val.getValue(), 4)); i++; // If this is the 20th value add line to file if (i == 20) sb.append(System.getProperty("line.separator")); } // Return array of lines return sb.toString().split(System.getProperty("line.separator")); }
From source file:org.tridas.io.formats.oxford.OxfordFile.java
@Override public String[] saveToString() { ArrayList<String> file = new ArrayList<String>(); String line = "'" + defaults.getStringDefaultValue(OxDefaultFields.SERIESCODE).getStringValue(); line += " <" + defaults.getIntegerDefaultValue(OxDefaultFields.FIRSTYEAR).getStringValue(); line += "-" + defaults.getIntegerDefaultValue(OxDefaultFields.LASTYEAR).getStringValue() + "> "; line += defaults.getStringDefaultValue(OxDefaultFields.DESCRIPTION).getStringValue() + "'"; file.add(line);/* www.j av a 2s . c om*/ line = defaults.getIntegerDefaultValue(OxDefaultFields.SERIESLENGTH).getStringValue() + ","; line += defaults.getIntegerDefaultValue(OxDefaultFields.STARTYEAR).getStringValue(); file.add(line); // Data Integer col = 0; line = ""; Boolean hasCounts = false; for (TridasValue val : valuesGroup.getValues()) { col++; if (col > 10) { file.add(line.substring(0, line.length() - 1)); line = ""; col = 1; } line += StringUtils.leftPad(val.getValue(), 3) + " "; if (val.isSetCount()) hasCounts = true; } if (line.length() > 0) { file.add(line.substring(0, line.length() - 1)); } file.add(""); // Add counts section if applicable if (hasCounts) { col = 0; line = ""; for (TridasValue val : valuesGroup.getValues()) { col++; if (col > 10) { file.add(line.substring(0, line.length() - 1)); line = ""; col = 1; } if (val.isSetCount()) { line += StringUtils.leftPad(val.getCount().toString(), 3) + " "; } else { line += StringUtils.leftPad("0".toString(), 3) + " "; defaults.addConversionWarning( new ConversionWarning(WarningType.INVALID, I18n.getText("oxford.countsEmpty"))); } } if (line.length() > 0) { file.add(line.substring(0, line.length() - 1)); } } // Comments if (defaults.getStringDefaultValue(OxDefaultFields.COMMENTS).getValue() != null) { file.add(defaults.getStringDefaultValue(OxDefaultFields.COMMENTS).getStringValue()); } // Return file return file.toArray(new String[0]); }
From source file:pt.webdetails.cdc.hazelcast.CfgTestApp.java
protected void handleHelp(String command) { final int DESC_COL = 37; super.handleHelp(command); println("-- Extensions:"); for (Command cmd : commands.values()) { String invoc = cmd.cmd + cmd.argsHelp; String separator = StringUtils.leftPad("//", DESC_COL - invoc.length()); println(invoc + separator + cmd.help); }//from ww w . java 2 s . co m println(""); }
From source file:pt.webdetails.cdc.hazelcast.CfgTestApp.java
private String formatConfig(String config) { StringReader reader = new StringReader(config); StringBuilder sbuild = new StringBuilder(); int ch;/*from w w w .j av a 2 s .c o m*/ int indent = 0; final int INDENT_FACT = 4; try { while ((ch = reader.read()) != -1) { switch (ch) { case '{': case '[': indent++; sbuild.append((char) ch); sbuild.append('\n'); sbuild.append(StringUtils.leftPad("", indent * INDENT_FACT)); break; case '}': case ']': indent--; sbuild.append('\n'); sbuild.append(StringUtils.leftPad("", indent * INDENT_FACT)); sbuild.append((char) ch); // sbuild.append('\n'); // sbuild.append(StringUtils.leftPad("", indent * INDENT_FACT)); break; case ',': sbuild.append((char) ch); sbuild.append('\n'); sbuild.append(StringUtils.leftPad("", indent * INDENT_FACT)); ch = reader.read(); if (ch != ' ') { sbuild.append((char) ch); } break; default: sbuild.append((char) ch); } } } catch (IOException e) { println(e); } return sbuild.append('\n').toString(); }