summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/utils/FlipTable.java
diff options
context:
space:
mode:
authorJames Moger <james.moger@gitblit.com>2014-03-23 11:36:14 -0400
committerJames Moger <james.moger@gitblit.com>2014-04-10 18:58:10 -0400
commitf81ed74578eb1d0fed26c56ddcfbb39f08a4e47c (patch)
treeff704feeb645749bd4d18040efa08b9fa88428ab /src/main/java/com/gitblit/utils/FlipTable.java
parentd500429a1d7a47da3bcd22880b53dce806ba9300 (diff)
downloadgitblit-f81ed74578eb1d0fed26c56ddcfbb39f08a4e47c.tar.gz
gitblit-f81ed74578eb1d0fed26c56ddcfbb39f08a4e47c.zip
Support querying in tickets ls and accept Object[][] for table data
Diffstat (limited to 'src/main/java/com/gitblit/utils/FlipTable.java')
-rw-r--r--src/main/java/com/gitblit/utils/FlipTable.java22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/main/java/com/gitblit/utils/FlipTable.java b/src/main/java/com/gitblit/utils/FlipTable.java
index 666b70c7..7aa5f0b1 100644
--- a/src/main/java/com/gitblit/utils/FlipTable.java
+++ b/src/main/java/com/gitblit/utils/FlipTable.java
@@ -46,7 +46,7 @@ public final class FlipTable {
private Borders(int bitmask) {
this.bitmask = bitmask;
}
-
+
boolean header() {
return isset(0x8);
}
@@ -69,12 +69,12 @@ public final class FlipTable {
}
/** Create a new table with the specified headers and row data. */
- public static String of(String[] headers, String[][] data) {
+ public static String of(String[] headers, Object[][] data) {
return of(headers, data, Borders.FULL);
}
/** Create a new table with the specified headers and row data. */
- public static String of(String[] headers, String[][] data, Borders borders) {
+ public static String of(String[] headers, Object[][] data, Borders borders) {
if (headers == null)
throw new NullPointerException("headers == null");
if (headers.length == 0)
@@ -85,13 +85,13 @@ public final class FlipTable {
}
private final String[] headers;
- private final String[][] data;
+ private final Object[][] data;
private final Borders borders;
private final int columns;
private final int[] columnWidths;
private final int emptyWidth;
- private FlipTable(String[] headers, String[][] data, Borders borders) {
+ private FlipTable(String[] headers, Object[][] data, Borders borders) {
this.headers = headers;
this.data = data;
this.borders = borders;
@@ -99,17 +99,17 @@ public final class FlipTable {
columns = headers.length;
columnWidths = new int[columns];
for (int row = -1; row < data.length; row++) {
- String[] rowData = (row == -1) ? headers : data[row];
+ Object[] rowData = (row == -1) ? headers : data[row];
if (rowData.length != columns) {
throw new IllegalArgumentException(String.format("Row %s's %s columns != %s columns", row + 1,
rowData.length, columns));
}
for (int column = 0; column < columns; column++) {
- String cell = rowData[column];
+ Object cell = rowData[column];
if (cell == null) {
continue;
}
- for (String rowDataLine : cell.split("\\n")) {
+ for (String rowDataLine : cell.toString().split("\\n")) {
columnWidths[column] = Math.max(columnWidths[column], rowDataLine.length());
}
}
@@ -194,7 +194,7 @@ public final class FlipTable {
out.append(format.charAt(4)).append('\n');
}
- private void printData(StringBuilder out, String[] data, boolean isHeader) {
+ private void printData(StringBuilder out, Object[] data, boolean isHeader) {
for (int line = 0, lines = 1; line < lines; line++) {
for (int column = 0; column < columns; column++) {
if (column == 0) {
@@ -208,11 +208,11 @@ public final class FlipTable {
} else {
out.append(' ');
}
- String cell = data[column];
+ Object cell = data[column];
if (cell == null) {
cell = "";
}
- String[] cellLines = cell.split("\\n");
+ String[] cellLines = cell.toString().split("\\n");
lines = Math.max(lines, cellLines.length);
String cellLine = line < cellLines.length ? cellLines[line] : "";
out.append(pad(columnWidths[column], cellLine));