/** * Get an iterator to return the names of all the columns in order. * * @return the iterator */ public Iterator<String> iterator() { return getColumnNames().iterator(); }
private static int[] maximumWidths(final TabularResult result) { HeaderDefinition headerDefinition = result.getHeaderDefinition(); int[] maxWidths = new int[headerDefinition.size()]; int count = 0; for (String columnName : headerDefinition.getColumnNames()) { maxWidths[count++] = columnName.length(); } Iterator<Row> iterator = result.iterator(); while (iterator.hasNext()) { Row row = iterator.next(); for (int i = 0; i < row.size(); i++) { String columnValue = row.getString(i); if (columnValue != null) { maxWidths[i] = Math.max(maxWidths[i], columnValue.length()); } else { maxWidths[i] = Math.max(maxWidths[i], NULL_SIZE); } } } return maxWidths; } }
@Override public MetaDataResult getMetaData(final MultiMetaDataRequest request) { ArgumentChecker.notNull(request, "request"); Map<String, HeaderDefinition> multipleHeaderDefinition = getMultipleHeaderDefinition(request); try { JSONObject result = new JSONObject(); if (multipleHeaderDefinition.size() > 0) { result.append(JSON_COLUMN_NAMES_FIELD, DATE_COLUMN); result.append(JSON_COLUMNS_FIELD, DATE_COLUMN); } for (Map.Entry<String, HeaderDefinition> entry : multipleHeaderDefinition.entrySet()) { String quandlCode = entry.getKey(); HeaderDefinition headerDef = entry.getValue(); for (String columnName : headerDef.getColumnNames()) { if (!columnName.equals(DATE_COLUMN)) { // skip Date column for each data set. result.append(JSON_COLUMN_NAMES_FIELD, quandlCode + " - " + columnName); result.append(JSON_COLUMNS_FIELD, columnName); } } } result.put(JSON_DATA_FIELD, new JSONArray()); result.put(JSON_ERRORS_FIELD, Collections.emptyMap()); result.put(JSON_FREQUENCY_FIELD, (Object) null); result.put(JSON_FROM_DATE_FIELD, (Object) null); result.put(JSON_TO_DATE_FIELD, (Object) null); return MetaDataResult.of(result); } catch (JSONException ex) { throw new QuandlRuntimeException("Problem building JSON response", ex); } }
final List<String> names = table.getHeaderDefinition().getColumnNames(); final Iterator<String> iter = names.iterator(); if (!iter.hasNext()) {