diff --git a/core/src/main/java/org/transitclock/gtfs/model/GtfsRoute.java b/core/src/main/java/org/transitclock/gtfs/model/GtfsRoute.java index 5f4952748..d3e0fdb9a 100644 --- a/core/src/main/java/org/transitclock/gtfs/model/GtfsRoute.java +++ b/core/src/main/java/org/transitclock/gtfs/model/GtfsRoute.java @@ -43,7 +43,9 @@ public class GtfsRoute extends CsvBase { private final Integer breakTime; private final Double maxDistance; - /** For creating a GtfsStop object from scratch. */ + /** + * For creating a GtfsStop object from scratch. + */ public GtfsRoute( String routeId, String agencyId, @@ -86,7 +88,9 @@ public GtfsRoute(CSVRecord record, boolean supplementalFile, String fileName) { agencyId = getOptionalValue(record, "agency_id"); routeShortName = getOptionalValue(record, "route_short_name"); routeLongName = getOptionalValue(record, "route_long_name"); - routeDesc = getOptionalValue(record, "route_desc"); + routeDesc = getOptionalValue(record, "route_desc").length() < 1024 + ? getOptionalValue(record, "route_desc") + : truncateToLimitSize(getOptionalValue(record, "route_desc"), 1024); routeType = getRequiredUnlessSupplementalValue(record, "route_type"); routeURL = getOptionalValue(record, "route_url"); routeColor = getOptionalValue(record, "route_color"); @@ -176,4 +180,8 @@ public boolean getHidden() { public boolean shouldCreateUnscheduledBlock() { return unscheduledBlockSuffix != null; } + + private String truncateToLimitSize(String toTruncate, int maxSize) { + return toTruncate.substring(0, maxSize); + } }