Skip to content

Commit fae049b

Browse files
committed
fix(MergeFeedsJob): remove branding URL fields when merging MTC feeds
1 parent 3144e00 commit fae049b

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public void jobFinished() {
181181
mergedTempFile.deleteOnExit();
182182
// Create the zipfile.
183183
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(mergedTempFile));
184-
LOG.info("Created project merge file: " + mergedTempFile.getAbsolutePath());
184+
LOG.info("Created merge file: " + mergedTempFile.getAbsolutePath());
185185
List<FeedToMerge> feedsToMerge = collectAndSortFeeds(feedVersions);
186186

187187
// Determine which tables to merge (only merge GTFS+ tables for MTC extension).
@@ -333,6 +333,21 @@ private int constructMergedTable(Table table, List<FeedToMerge> feedsToMerge,
333333
int mergedLineNumber = 0;
334334
// Get the spec fields to export
335335
List<Field> specFields = table.specFields();
336+
if (DataManager.isExtensionEnabled("mtc")) {
337+
// Remove route and agency branding URL from field list.
338+
// Nothing to do for other tables.
339+
if ("agency".equals(table.name) || "routes".equals(table.name)) {
340+
int indexToRemove = -1;
341+
for (int i = 0; i < specFields.size(); i++) {
342+
if (specFields.get(i).name.endsWith("_branding_url")) {
343+
indexToRemove = i;
344+
break;
345+
}
346+
}
347+
// Remove item outside of loop to prevent concurrent modification exception.
348+
if (indexToRemove != -1) specFields.remove(indexToRemove);
349+
}
350+
}
336351
boolean stopCodeMissingFromFirstTable = false;
337352
try {
338353
// Iterate over each zip file.

0 commit comments

Comments
 (0)