in src/main/java/org/apache/sdap/ningester/writer/SolrStore.java [73:115]
public SolrInputDocument getSolrDocFromTileSummary(TileSummary summary) {
TileSummary.BBox bbox = summary.getBbox();
TileSummary.DataStats stats = summary.getStats();
Calendar startCal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
startCal.setTime(new Date(stats.getMinTime() * 1000));
Calendar endCal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
endCal.setTime(new Date(stats.getMaxTime() * 1000));
String minTime = iso.format(startCal.getTime());
String maxTime = iso.format(endCal.getTime());
String geo = determineGeo(summary);
String granuleFileName = Paths.get(summary.getGranule()).getFileName().toString();
SolrInputDocument inputDocument = new SolrInputDocument();
inputDocument.addField("table_s", TABLE_NAME);
inputDocument.addField("geo", geo);
inputDocument.addField("id", summary.getTileId());
inputDocument.addField("solr_id_s", summary.getDatasetName() + "!" + summary.getTileId());
inputDocument.addField("dataset_id_s", summary.getDatasetUuid());
inputDocument.addField("sectionSpec_s", summary.getSectionSpec());
inputDocument.addField("dataset_s", summary.getDatasetName());
inputDocument.addField("granule_s", granuleFileName);
inputDocument.addField("tile_var_name_s", summary.getDataVarName());
inputDocument.addField("tile_min_lon", bbox.getLonMin());
inputDocument.addField("tile_max_lon", bbox.getLonMax());
inputDocument.addField("tile_min_lat", bbox.getLatMin());
inputDocument.addField("tile_max_lat", bbox.getLatMax());
inputDocument.addField("tile_min_time_dt", minTime);
inputDocument.addField("tile_max_time_dt", maxTime);
inputDocument.addField("tile_min_val_d", stats.getMin());
inputDocument.addField("tile_max_val_d", stats.getMax());
inputDocument.addField("tile_avg_val_d", stats.getMean());
inputDocument.addField("tile_count_i", Long.valueOf(stats.getCount()).intValue());
summary.getGlobalAttributesList().forEach(attribute ->
inputDocument.addField(attribute.getName(), attribute.getValuesCount() == 1 ? attribute.getValues(0) : attribute.getValuesList())
);
return inputDocument;
}