mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2025-01-30 16:19:56 +08:00
Attempt to reduce TableContainer#parseHtml complexity
This commit is contained in:
parent
0393bcef61
commit
2dcc69fc92
@ -48,25 +48,25 @@ public class InspectContainer {
|
||||
}
|
||||
|
||||
public final String parseHtml() {
|
||||
StringBuilder html = new StringBuilder();
|
||||
StringBuilder parsed = new StringBuilder();
|
||||
|
||||
if (!values.isEmpty()) {
|
||||
html.append("<div class=\"body\">");
|
||||
parsed.append("<div class=\"body\">");
|
||||
for (Map.Entry<String, String> entry : values.entrySet()) {
|
||||
html.append("<p>").append(entry.getKey()).append(": ").append(entry.getValue()).append("</p>");
|
||||
parsed.append("<p>").append(entry.getKey()).append(": ").append(entry.getValue()).append("</p>");
|
||||
}
|
||||
html.append("</div>");
|
||||
parsed.append("</div>");
|
||||
}
|
||||
|
||||
for (Map.Entry<String, String> entry : this.html.entrySet()) {
|
||||
html.append(entry.getValue());
|
||||
parsed.append(entry.getValue());
|
||||
}
|
||||
|
||||
for (Map.Entry<String, TableContainer> entry : tables.entrySet()) {
|
||||
html.append(entry.getValue().parseHtml());
|
||||
parsed.append(entry.getValue().parseHtml());
|
||||
}
|
||||
|
||||
return html.toString();
|
||||
return parsed.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -40,12 +40,10 @@ public class TableContainer {
|
||||
}
|
||||
|
||||
public TableContainer(boolean players, String... header) {
|
||||
this.header = FormatUtils.mergeArrays(
|
||||
this(FormatUtils.mergeArrays(
|
||||
new String[]{Icon.called("user").build() + " Player"},
|
||||
header
|
||||
);
|
||||
this.formatters = new Formatter[this.header.length];
|
||||
values = new ArrayList<>();
|
||||
));
|
||||
}
|
||||
|
||||
public final void addRow(Serializable... values) {
|
||||
@ -60,13 +58,22 @@ public class TableContainer {
|
||||
}
|
||||
|
||||
public final String parseBody() {
|
||||
StringBuilder body = new StringBuilder();
|
||||
|
||||
if (values.isEmpty()) {
|
||||
addRow("No Data");
|
||||
}
|
||||
for (Serializable[] row : values) {
|
||||
return Html.TABLE_BODY.parse(buildBody());
|
||||
|
||||
}
|
||||
|
||||
private String buildBody() {
|
||||
StringBuilder body = new StringBuilder();
|
||||
for (Serializable[] row : values) {
|
||||
appendRow(body, row);
|
||||
}
|
||||
return body.toString();
|
||||
}
|
||||
|
||||
private void appendRow(StringBuilder body, Serializable[] row) {
|
||||
int maxIndex = row.length - 1;
|
||||
body.append("<tr>");
|
||||
for (int i = 0; i < header.length; i++) {
|
||||
@ -85,11 +92,6 @@ public class TableContainer {
|
||||
}
|
||||
}
|
||||
body.append("</tr>");
|
||||
|
||||
}
|
||||
|
||||
return Html.TABLE_BODY.parse(body.toString());
|
||||
|
||||
}
|
||||
|
||||
public final void setColor(String color) {
|
||||
@ -97,12 +99,12 @@ public class TableContainer {
|
||||
}
|
||||
|
||||
public final String parseHeader() {
|
||||
StringBuilder header = new StringBuilder("<thead" + (color != null ? " class=\"bg-" + color + "\"" : "") + "><tr>");
|
||||
for (String title : this.header) {
|
||||
header.append("<th>").append(title).append("</th>");
|
||||
StringBuilder parsedHeader = new StringBuilder("<thead" + (color != null ? " class=\"bg-" + color + "\"" : "") + "><tr>");
|
||||
for (String title : header) {
|
||||
parsedHeader.append("<th>").append(title).append("</th>");
|
||||
}
|
||||
header.append("</tr></thead>");
|
||||
return header.toString();
|
||||
parsedHeader.append("</tr></thead>");
|
||||
return parsedHeader.toString();
|
||||
}
|
||||
|
||||
public final void setFormatter(int index, Formatter formatter) {
|
||||
|
Loading…
Reference in New Issue
Block a user