in src/main/java/org/apache/sdap/ningester/processors/AddDayOfYearAttribute.java [49:81]
public NexusTile setDayOfYearFromGranuleName(NexusTile nexusTile) {
String granuleName = nexusTile.getSummary().getGranule();
Matcher granuleNameMatcher = this.regex.matcher(granuleName);
Boolean granuleNameMatched = granuleNameMatcher.find();
if (!granuleNameMatched) {
throw new RuntimeException("regex did not match granuleName.");
}
if (granuleNameMatcher.groupCount() != 1) {
throw new RuntimeException("regex does not have exactly one capturing group.");
}
if (granuleNameMatcher.group(1).length() <= 0) {
throw new RuntimeException("group does not contain match.");
}
String dayOfYear = granuleNameMatcher.group(1);
NexusTile.Builder newTileBuilder = NexusTile.newBuilder().mergeFrom(nexusTile);
TileSummary.Builder newTileSummaryBuilder = newTileBuilder.getSummaryBuilder();
newTileSummaryBuilder.addGlobalAttributes(
Attribute.newBuilder()
.setName("day_of_year_i")
.addValues(dayOfYear)
.build()
);
newTileBuilder.setSummary(newTileSummaryBuilder);
return newTileBuilder.build();
}