private String buildText(Graph graph, Element element, Column[] selectedColumns) { String txt; if (selectedColumns == null || selectedColumns.length == 0) { txt = element.getLabel(); } else if (selectedColumns.length == 1) { return buildText(graph, element, selectedColumns[0]); } else { StringBuilder sb = new StringBuilder(); int i = 0; for (Column c : selectedColumns) { if (i++ > 0) { sb.append(" - "); } sb.append(buildText(graph, element, c)); } txt = sb.toString(); } return (txt != null && !txt.isEmpty()) ? txt : null; }