From ccf435e5514ef72a562427a4fd34e3baad53e82a Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 8 Jun 2017 17:10:00 -0400 Subject: [PATCH 01/83] feat(gis-export): add gis export for stops/routes --- .../editor/controllers/api/GisController.java | 77 +++++++ .../datatools/editor/jobs/GisExport.java | 33 ++- .../editor/jobs/ProcessGisExport.java | 199 ------------------ .../datatools/manager/DataManager.java | 1 + 4 files changed, 94 insertions(+), 216 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java delete mode 100755 src/main/java/com/conveyal/datatools/editor/jobs/ProcessGisExport.java diff --git a/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java b/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java new file mode 100644 index 000000000..aaf504bfd --- /dev/null +++ b/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java @@ -0,0 +1,77 @@ +package com.conveyal.datatools.editor.controllers.api; + +import com.conveyal.datatools.editor.jobs.GisExport; +import com.conveyal.datatools.manager.models.JsonViews; +import com.conveyal.datatools.manager.utils.json.JsonManager; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import spark.Request; +import spark.Response; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Arrays; +import java.util.List; + +import static spark.Spark.get; +import static spark.Spark.halt; + +/** + * Created by landon on 5/30/17. + */ +public class GisController { + public static final JsonManager json = + new JsonManager<>(GisController.class, JsonViews.UserInterface.class); + private static final Logger LOG = LoggerFactory.getLogger(GisController.class); + + + public static FileInputStream exportGis (Request req, Response res) throws IOException { + String type = req.queryParams("type"); + List feedIds = Arrays.asList(req.queryParams("feedId").split(",")); + File temp = File.createTempFile("gis_" + type, ".zip"); + + GisExport gisExport = new GisExport(GisExport.Type.valueOf(type), temp, feedIds); + gisExport.run(); + + FileInputStream fis = new FileInputStream(temp); + + res.type("application/zip"); + res.header("Content-Disposition", "attachment;filename=" + temp.getName().replaceAll("[^a-zA-Z0-9]", "") + ".zip"); + + // will not actually be deleted until download has completed + // http://stackoverflow.com/questions/24372279 +// temp.delete(); + + return fis; + } + +// res.raw().setContentType("application/zip"); +// res.raw().setHeader("Content-Disposition", "attachment; filename=" + temp.getName() + ".zip"); +// +// try { +// BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(res.raw().getOutputStream()); +// BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(temp)); +// +// byte[] buffer = new byte[1024]; +// int len; +// while ((len = bufferedInputStream.read(buffer)) > 0) { +// bufferedOutputStream.write(buffer, 0, len); +// } +// +// bufferedOutputStream.flush(); +// bufferedOutputStream.close(); +// } catch (Exception e) { +// halt(500, "Error serving GTFS+ file"); +// } +// +// return res.raw(); + + public static void register (String apiPrefix) { + get(apiPrefix + "secure/export/gis", GisController::exportGis, json::write); + } +} diff --git a/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java b/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java index 664b31a70..22b8057b4 100644 --- a/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java +++ b/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java @@ -1,7 +1,6 @@ package com.conveyal.datatools.editor.jobs; import com.conveyal.datatools.editor.datastore.FeedTx; -import com.conveyal.datatools.manager.models.FeedSource; import com.google.common.io.Files; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.GeometryFactory; @@ -36,12 +35,12 @@ public class GisExport implements Runnable { File file; Type type; - Collection agencyIds; + Collection feedIds; - public GisExport(Type type, File file, Collection agencyIds) { + public GisExport(Type type, File file, Collection feedIds) { this.type = type; this.file = file; - this.agencyIds = agencyIds; + this.feedIds = feedIds; } @Override @@ -50,7 +49,7 @@ public void run() { File outShp = new File(outDir, file.getName().replaceAll("\\.zip", "") + ".shp"); GlobalTx gtx = VersionedDataStore.getGlobalTx(); - FeedTx atx = null; + FeedTx feedtx = null; try { ShapefileDataStoreFactory dataStoreFactory = new ShapefileDataStoreFactory(); @@ -98,11 +97,11 @@ public void run() { datastore.createSchema(STOP_TYPE); featureBuilder = new SimpleFeatureBuilder(STOP_TYPE); - for (String feedId : agencyIds) { + for (String feedId : feedIds) { EditorFeed fs = gtx.feeds.get(feedId); - atx = VersionedDataStore.getFeedTx(feedId); - for (Stop s : atx.stops.values()) { + feedtx = VersionedDataStore.getFeedTx(feedId); + for (Stop s : feedtx.stops.values()) { featureBuilder.add(s.location); featureBuilder.add(s.stopName); featureBuilder.add(s.stopCode); @@ -113,7 +112,7 @@ public void run() { features.add(feature); } - atx.rollback(); + feedtx.rollback(); } } else if (type.equals(Type.ROUTES)) { collectionType = ROUTE_TYPE; @@ -122,14 +121,14 @@ public void run() { GeometryFactory gf = new GeometryFactory(); - for (String feedId : agencyIds) { + for (String feedId : feedIds) { EditorFeed fs = gtx.feeds.get(feedId); - atx = VersionedDataStore.getFeedTx(feedId); + feedtx = VersionedDataStore.getFeedTx(feedId); // we loop over trip patterns. Note that this will yield several lines for routes that have // multiple patterns. There's no real good way to reconcile the shapes of multiple patterns. - for (TripPattern tp : atx.tripPatterns.values()) { + for (TripPattern tp : feedtx.tripPatterns.values()) { LineString shape; if (tp.shape != null) { shape = tp.shape; @@ -138,13 +137,13 @@ public void run() { Coordinate[] coords = new Coordinate[tp.patternStops.size()]; for (int i = 0; i < coords.length; i++) { - coords[i] = atx.stops.get(tp.patternStops.get(i).stopId).location.getCoordinate(); + coords[i] = feedtx.stops.get(tp.patternStops.get(i).stopId).location.getCoordinate(); } shape = gf.createLineString(coords); } - Route r = atx.routes.get(tp.routeId); + Route r = feedtx.routes.get(tp.routeId); featureBuilder.add(shape); featureBuilder.add(tp.name); @@ -165,7 +164,7 @@ public void run() { features.add(feature); } - atx.rollback(); + feedtx.rollback(); } } else @@ -208,9 +207,9 @@ public void run() { e.printStackTrace(); } finally { if (gtx != null) gtx.rollback(); - if (atx != null) atx.rollbackIfOpen(); + if (feedtx != null) feedtx.rollbackIfOpen(); } } - public static enum Type { ROUTES, STOPS }; + public enum Type { ROUTES, STOPS } } diff --git a/src/main/java/com/conveyal/datatools/editor/jobs/ProcessGisExport.java b/src/main/java/com/conveyal/datatools/editor/jobs/ProcessGisExport.java deleted file mode 100755 index 5467a7c28..000000000 --- a/src/main/java/com/conveyal/datatools/editor/jobs/ProcessGisExport.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.conveyal.datatools.editor.jobs; - - -public class ProcessGisExport implements Runnable { - @Override - public void run() { - - } -/* - private Long _gisExportId; - - - public ProcessGisExport(Long gisExportId) - { - this._gisExportId = gisExportId; - } - - public void doJob() { - - String exportName = "gis_" + this._gisExportId; - - File outputZipFile = new File(Play.configuration.getProperty("application.publicDataDirectory"), exportName + ".zip"); - - File outputDirectory = new File(Play.configuration.getProperty("application.publicDataDirectory"), exportName); - - LOG.info("outfile path:" + outputDirectory.getAbsolutePath()); - - File outputShapefile = new File(outputDirectory, exportName + ".shp"); - - try - { - GisExport gisExport = null; - - while(gisExport == null) - { - gisExport = GisExport.findById(this._gisExportId); - Thread.sleep(1000); - - LOG.info("Waiting for gisExport object..."); - } - - - if(!outputDirectory.exists()) - { - outputDirectory.mkdir(); - } - - ShapefileDataStoreFactory com.conveyal.datatools.editor.datastoreFactory = new ShapefileDataStoreFactory(); - - Map params = new HashMap(); - params.put("url", outputShapefile.toURI().toURL()); - params.put("create spatial index", Boolean.TRUE); - - ShapefileDataStore com.conveyal.datatools.editor.datastore = (ShapefileDataStore)dataStoreFactory.createNewDataStore(params); - com.conveyal.datatools.editor.datastore.forceSchemaCRS(DefaultGeographicCRS.WGS84); - - SimpleFeatureType STOP_TYPE = DataUtilities.createType( - "Stop", - "location:Point:srid=4326," + - "name:String," + - "code:String," + - "desc:String," + - "id:String," + - "agency:String" - ); - - SimpleFeatureType ROUTE_TYPE = DataUtilities.createType( - "Route", // <- the name for our feature type - "route:LineString:srid=4326," + - "patternName:String," + - "shortName:String," + - "longName:String," + - "desc:String," + - "type:String," + - "url:String," + - "routeColor:String," + - "routeTextColor:String," + - "agency:String" - ); - - SimpleFeatureCollection collection; - - SimpleFeatureType collectionType; - - SimpleFeatureBuilder featureBuilder = null; - - List features = new ArrayList(); - - if(gisExport.type.equals(GisUploadType.STOPS)) - { - collectionType = STOP_TYPE; - com.conveyal.datatools.editor.datastore.createSchema(STOP_TYPE); - featureBuilder = new SimpleFeatureBuilder(STOP_TYPE); - - List stops = Stop.find("agency in (:ids)").bind("ids", gisExport.feeds).fetch(); - - for(Stop s : stops) - { - featureBuilder.add(s.locationPoint()); - featureBuilder.add(s.stopName); - featureBuilder.add(s.stopCode); - featureBuilder.add(s.stopDesc); - featureBuilder.add(s.gtfsStopId); - featureBuilder.add(s.agency.name); - SimpleFeature feature = featureBuilder.buildFeature(null); - features.add(feature); - } - } - else if(gisExport.type.equals(GisUploadType.ROUTES)) - { - collectionType = ROUTE_TYPE; - com.conveyal.datatools.editor.datastore.createSchema(ROUTE_TYPE); - featureBuilder = new SimpleFeatureBuilder(ROUTE_TYPE); - - List routes = Route.find("agency in (:ids)").bind("ids", gisExport.feeds).fetch(); - - // check for duplicates - - // HashMap existingRoutes = new HashMap(); - - for(Route r : routes) - { -// String routeId = r.routeLongName + "_" + r.routeDesc + "_ " + r.phone.id; -// -// if(existingRoutes.containsKey(routeId)) -// continue; -// else -// existingRoutes.put(routeId, true); - - - List patterns = TripPattern.find("route = ?", r).fetch(); - for(TripPattern tp : patterns) - { - if(tp.shape == null) - continue; - - featureBuilder.add(tp.shape.shape); - featureBuilder.add(tp.name); - featureBuilder.add(r.routeShortName); - featureBuilder.add(r.routeLongName); - featureBuilder.add(r.routeDesc); - - if(r.routeType != null) - featureBuilder.add(r.routeType.toString()); - else - featureBuilder.add(""); - - featureBuilder.add(r.routeUrl); - featureBuilder.add(r.routeColor); - featureBuilder.add(r.routeTextColor); - featureBuilder.add(r.agency.name); - SimpleFeature feature = featureBuilder.buildFeature(null); - features.add(feature); - } - } - } - else - throw new Exception("Unknown export type."); - - collection = new ListFeatureCollection(collectionType, features); - - Transaction transaction = new DefaultTransaction("create"); - - String typeName = com.conveyal.datatools.editor.datastore.getTypeNames()[0]; - SimpleFeatureSource featureSource = com.conveyal.datatools.editor.datastore.getFeatureSource(typeName); - - if (featureSource instanceof SimpleFeatureStore) - { - SimpleFeatureStore featureStore = (SimpleFeatureStore) featureSource; - - featureStore.setTransaction(transaction); - - featureStore.addFeatures(collection); - transaction.commit(); - - transaction.close(); - } - else - { - throw new Exception(typeName + " does not support read/write access"); - } - - DirectoryZip.zip(outputDirectory, outputZipFile); - FileUtils.deleteDirectory(outputDirectory); - - gisExport.status = GisExportStatus.PROCESSED; - - gisExport.save(); - - } - catch(Exception e) - { - LOG.error("Unable to process GIS export: ", e.toString()); - e.printStackTrace(); - } - }*/ -} - - diff --git a/src/main/java/com/conveyal/datatools/manager/DataManager.java b/src/main/java/com/conveyal/datatools/manager/DataManager.java index e068bc872..043b6fab9 100644 --- a/src/main/java/com/conveyal/datatools/manager/DataManager.java +++ b/src/main/java/com/conveyal/datatools/manager/DataManager.java @@ -143,6 +143,7 @@ private static void registerRoutes() throws IOException { SnapshotController.register(EDITOR_API_PREFIX); FeedInfoController.register(EDITOR_API_PREFIX); FareController.register(EDITOR_API_PREFIX); + GisController.register(EDITOR_API_PREFIX); } // log all exceptions to system.out From fa9ec493f28e85a29323fb3bb64b9456b3d1bbb6 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 11 Oct 2018 16:12:49 -0400 Subject: [PATCH 02/83] initial work on merge feeds for MTC --- .../common/status/MonitorableJob.java | 3 +- .../api/FeedVersionController.java | 13 + .../datatools/manager/jobs/MergeFeedsJob.java | 253 ++++++++++++++++++ .../manager/jobs/MergeProjectFeedsJob.java | 211 +-------------- 4 files changed, 278 insertions(+), 202 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java diff --git a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java index 72cbc13f4..9ad9e438e 100644 --- a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java +++ b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java @@ -54,7 +54,8 @@ public enum JobType { EXPORT_SNAPSHOT_TO_GTFS, CONVERT_EDITOR_MAPDB_TO_SQL, VALIDATE_ALL_FEEDS, - MERGE_PROJECT_FEEDS + MERGE_PROJECT_FEEDS, + MERGE_FEED_VERSIONS } public MonitorableJob(String owner, String name, JobType type) { diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index 9ed48ca7a..454e2bdaf 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -5,6 +5,7 @@ import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.jobs.BuildTransportNetworkJob; import com.conveyal.datatools.manager.jobs.CreateFeedVersionFromSnapshotJob; +import com.conveyal.datatools.manager.jobs.MergeFeedsJob; import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; import com.conveyal.datatools.manager.models.FeedDownloadToken; import com.conveyal.datatools.manager.models.FeedSource; @@ -41,8 +42,10 @@ import java.util.Date; import java.util.EnumSet; import java.util.List; +import java.util.Set; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; +import java.util.stream.Stream; import com.fasterxml.jackson.databind.JsonNode; import com.google.common.io.ByteStreams; @@ -421,6 +424,15 @@ private static FeedVersion publishToExternalResource (Request req, Response res) } } + private static String mergeFeedVersions(Request req, Response res) { + String[] versionIds = req.queryParams("feedVersionIds").split(","); + Auth0UserProfile userProfile = req.attribute("user"); + Set versions = Stream.of(versionIds).map(id -> Persistence.feedVersions.getById(id)).collect(Collectors.toSet()); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getEmail(), versions, "merged"); + DataManager.heavyExecutor.execute(mergeFeedsJob); + return SparkUtils.formatJobMessage(mergeFeedsJob.jobId, "Merging feed versions..."); + } + /** * Download locally stored feed version with token supplied by this application. This method is only used when * useS3 is set to false. Otherwise, a direct download from s3 should be used. @@ -460,6 +472,7 @@ public static void register (String apiPrefix) { post(apiPrefix + "secure/feedversion", FeedVersionController::createFeedVersionViaUpload, json::write); post(apiPrefix + "secure/feedversion/fromsnapshot", FeedVersionController::createFeedVersionFromSnapshot, json::write); put(apiPrefix + "secure/feedversion/:id/rename", FeedVersionController::renameFeedVersion, json::write); + put(apiPrefix + "secure/feedversion/merge", FeedVersionController::mergeFeedVersions, json::write); post(apiPrefix + "secure/feedversion/:id/publish", FeedVersionController::publishToExternalResource, json::write); delete(apiPrefix + "secure/feedversion/:id", FeedVersionController::deleteFeedVersion, json::write); diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java new file mode 100644 index 000000000..ab9eb50cb --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -0,0 +1,253 @@ +package com.conveyal.datatools.manager.jobs; + +import com.conveyal.datatools.common.status.MonitorableJob; +import com.conveyal.datatools.common.utils.Consts; +import com.conveyal.datatools.common.utils.SparkUtils; +import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.models.FeedSource; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.persistence.FeedStore; +import com.conveyal.datatools.manager.persistence.Persistence; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ArrayNode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.BufferedReader; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; +import java.util.zip.ZipOutputStream; + +import static spark.Spark.halt; + +public class MergeFeedsJob extends MonitorableJob { + + private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJob.class); + private final Set feedVersions; + private final String filename; + + public MergeFeedsJob(String owner, Set feedVersions, String filename) { + super(owner, "Merging feed versions", JobType.MERGE_FEED_VERSIONS); + this.feedVersions = feedVersions; + this.filename = filename; + } + + @Override + public void jobLogic() { + // create temp merged zip file to add feed content to + File mergedFile = null; + try { + mergedFile = File.createTempFile(filename, ".zip"); + mergedFile.deleteOnExit(); + + } catch (IOException e) { + LOG.error("Could not create temp file"); + e.printStackTrace(); + halt(400, SparkUtils.formatJSON("Unknown error while merging feeds.", 400)); + } + + // create the zipfile + ZipOutputStream out; + try { + out = new ZipOutputStream(new FileOutputStream(mergedFile)); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } + + LOG.info("Created project merge file: " + mergedFile.getAbsolutePath()); + + // map of feed versions to table entries contained within version's GTFS + Map feedSourceMap = new HashMap<>(); + + // collect zipFiles for each feedSource before merging tables + for (FeedVersion version : feedVersions) { + FeedSource fs = Persistence.feedSources.getById(version.feedSourceId); + // modify feed version to use prepended feed id + LOG.info("Adding {} feed to merged zip", fs.name); + try { + File file = version.retrieveGtfsFile(); + if (file == null) { + LOG.error("No file exists for {}", version.id); + continue; + } + ZipFile zipFile = new ZipFile(file); + feedSourceMap.put(fs, zipFile); + } catch(Exception e) { + e.printStackTrace(); + LOG.error("Zipfile for version {} not found", version.id); + } + } + + // loop through GTFS tables + // FIXME: add iteration over GTFS+ tables + int numberOfTables = DataManager.gtfsConfig.size(); + for(int i = 0; i < numberOfTables; i++) { + JsonNode tableNode = DataManager.gtfsConfig.get(i); + byte[] tableOut = mergeTables(tableNode, feedSourceMap); + + // if at least one feed has the table, include it + if (tableOut != null) { + + String tableName = tableNode.get("name").asText(); + synchronized (status) { + status.message = "Merging " + tableName; + status.percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; + } + // create entry for zip file + ZipEntry tableEntry = new ZipEntry(tableName); + try { + out.putNextEntry(tableEntry); + LOG.info("Writing {} to merged feed", tableName); + out.write(tableOut); + out.closeEntry(); + } catch (IOException e) { + LOG.error("Error writing to table {}", tableName); + e.printStackTrace(); + } + } + } + try { + out.close(); + } catch (IOException e) { + LOG.error("Error closing zip file"); + e.printStackTrace(); + } + synchronized (status) { + status.message = "Saving merged feed."; + status.percentComplete = 95.0; + } + // Store the project merged zip locally or on s3 +// if (DataManager.useS3) { +// String s3Key = "project/" + project.id + ".zip"; +// FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedFile); +// LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); +// } else { +// try { +// FeedVersion.feedStore.newFeed(project.id + ".zip", new FileInputStream(mergedFile), null); +// } catch (FileNotFoundException e) { +// e.printStackTrace(); +// LOG.error("Could not store feed for project {}", project.id); +// } +// } + // delete temp file + mergedFile.delete(); + + status.update(false, "Merged feed created successfully.", 100, true); + } + + /** + * Merge the specified table for multiple GTFS feeds. + * @param tableNode tableNode to merge + * @param feedSourceMap map of feedSources to zipFiles from which to extract the .txt tables + * @return single merged table for feeds + */ + private static byte[] mergeTables(JsonNode tableNode, Map feedSourceMap) { + + String tableName = tableNode.get("name").asText(); + ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); + + ArrayNode fieldsNode = (ArrayNode) tableNode.get("fields"); + List headers = new ArrayList<>(); + for (int i = 0; i < fieldsNode.size(); i++) { + JsonNode fieldNode = fieldsNode.get(i); + String fieldName = fieldNode.get("name").asText(); + // Clean up spec file to exclude datatools/editor specific fields for the merge job. + boolean notInSpec = fieldNode.has("datatools") && fieldNode.get("datatools").asBoolean(); + if (notInSpec) { + fieldsNode.remove(i); + } + headers.add(fieldName); + } + + try { + // write headers to table + tableOut.write(String.join(",", headers).getBytes()); + tableOut.write("\n".getBytes()); + + // iterate over feed source to zipfile map + for ( Map.Entry mapEntry : feedSourceMap.entrySet()) { + FeedSource fs = mapEntry.getKey(); + ZipFile zipFile = mapEntry.getValue(); + final Enumeration entries = zipFile.entries(); + while (entries.hasMoreElements()) { + final ZipEntry entry = entries.nextElement(); + if(tableName.equals(entry.getName())) { + LOG.info("Adding {} table for {}", entry.getName(), fs.name); + + InputStream inputStream = zipFile.getInputStream(entry); + + BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); + String line = in.readLine(); + String[] fields = line.split(","); + + List fieldList = Arrays.asList(fields); + + + // iterate over rows in table + while((line = in.readLine()) != null) { + String[] newValues = new String[fieldsNode.size()]; + String[] values = line.split(Consts.COLUMN_SPLIT, -1); + if (values.length == 1) { + LOG.warn("Found blank line. Skipping..."); + continue; + } + for(int v = 0; v < fieldsNode.size(); v++) { + JsonNode fieldNode = fieldsNode.get(v); + String fieldName = fieldNode.get("name").asText(); + + // get index of field from GTFS spec as it appears in feed + int index = fieldList.indexOf(fieldName); + String val = ""; + try { + index = fieldList.indexOf(fieldName); + if(index != -1) { + val = values[index]; + } + } catch (ArrayIndexOutOfBoundsException e) { + LOG.warn("Index {} out of bounds for file {} and feed {}", index, entry.getName(), fs.name); + continue; + } + + String fieldType = fieldNode.get("inputType").asText(); + + // if field is a gtfs identifier, prepend with feed id/name + if (fieldType.contains("GTFS") && !val.isEmpty()) { + newValues[v] = fs.name + ":" + val; + } + else { + newValues[v] = val; + } + } + String newLine = String.join(",", newValues); + + // write line to table (plus new line char) + tableOut.write(newLine.getBytes()); + tableOut.write("\n".getBytes()); + } + } + } + } + } catch (IOException e) { + e.printStackTrace(); + LOG.error("Error merging feed sources: {}", feedSourceMap.keySet().stream().map(fs -> fs.name).collect(Collectors.toList()).toString()); + halt(400, SparkUtils.formatJSON("Error merging feed sources", 400, e)); + } + return tableOut.toByteArray(); + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java index 9f855df89..bdb61ecf0 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java @@ -27,8 +27,10 @@ import java.util.Collection; import java.util.Enumeration; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; @@ -52,214 +54,21 @@ public MergeProjectFeedsJob(Project project, String owner) { @Override public void jobLogic () { - // get feed sources in project - Collection feeds = project.retrieveProjectFeedSources(); - - // create temp merged zip file to add feed content to - File mergedFile = null; - try { - mergedFile = File.createTempFile(project.id + "-merged", ".zip"); - mergedFile.deleteOnExit(); - - } catch (IOException e) { - LOG.error("Could not create temp file"); - e.printStackTrace(); - halt(400, SparkUtils.formatJSON("Unknown error while merging feeds.", 400)); - } - - // create the zipfile - ZipOutputStream out; - try { - out = new ZipOutputStream(new FileOutputStream(mergedFile)); - } catch (FileNotFoundException e) { - throw new RuntimeException(e); - } - - LOG.info("Created project merge file: " + mergedFile.getAbsolutePath()); - - // map of feed versions to table entries contained within version's GTFS - Map feedSourceMap = new HashMap<>(); - - // collect zipFiles for each feedSource before merging tables - for (FeedSource fs : feeds) { - // check if feed source has version (use latest) + Set feedVersions = new HashSet<>(); + // Get latest version for each feed source in project + Collection feedSources = project.retrieveProjectFeedSources(); + for (FeedSource fs : feedSources) { + // check if feed version exists FeedVersion version = fs.retrieveLatest(); if (version == null) { - LOG.info("Skipping {} because it has no feed versions", fs.name); + LOG.warn("Skipping {} because it has no feed versions", fs.name); continue; } // modify feed version to use prepended feed id LOG.info("Adding {} feed to merged zip", fs.name); - try { - File file = version.retrieveGtfsFile(); - if (file == null) { - LOG.error("No file exists for {}", version.id); - continue; - } - ZipFile zipFile = new ZipFile(file); - feedSourceMap.put(fs, zipFile); - } catch(Exception e) { - e.printStackTrace(); - LOG.error("Zipfile for version {} not found", version.id); - } - } - - // loop through GTFS tables - int numberOfTables = DataManager.gtfsConfig.size(); - for(int i = 0; i < numberOfTables; i++) { - JsonNode tableNode = DataManager.gtfsConfig.get(i); - byte[] tableOut = mergeTables(tableNode, feedSourceMap); - - // if at least one feed has the table, include it - if (tableOut != null) { - - String tableName = tableNode.get("name").asText(); - synchronized (status) { - status.message = "Merging " + tableName; - status.percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; - } - // create entry for zip file - ZipEntry tableEntry = new ZipEntry(tableName); - try { - out.putNextEntry(tableEntry); - LOG.info("Writing {} to merged feed", tableName); - out.write(tableOut); - out.closeEntry(); - } catch (IOException e) { - LOG.error("Error writing to table {}", tableName); - e.printStackTrace(); - } - } - } - try { - out.close(); - } catch (IOException e) { - LOG.error("Error closing zip file"); - e.printStackTrace(); - } - synchronized (status) { - status.message = "Saving merged feed."; - status.percentComplete = 95.0; - } - // Store the project merged zip locally or on s3 - if (DataManager.useS3) { - String s3Key = "project/" + project.id + ".zip"; - FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedFile); - LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); - } else { - try { - FeedVersion.feedStore.newFeed(project.id + ".zip", new FileInputStream(mergedFile), null); - } catch (FileNotFoundException e) { - e.printStackTrace(); - LOG.error("Could not store feed for project {}", project.id); - } - } - // delete temp file - mergedFile.delete(); - - synchronized (status) { - status.message = "Merged feed created successfully."; - status.completed = true; - status.percentComplete = 100.0; - } - } - - /** - * Merge the specified table for multiple GTFS feeds. - * @param tableNode tableNode to merge - * @param feedSourceMap map of feedSources to zipFiles from which to extract the .txt tables - * @return single merged table for feeds - */ - private static byte[] mergeTables(JsonNode tableNode, Map feedSourceMap) { - - String tableName = tableNode.get("name").asText(); - ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); - - ArrayNode fieldsNode = (ArrayNode) tableNode.get("fields"); - List headers = new ArrayList<>(); - for (int i = 0; i < fieldsNode.size(); i++) { - JsonNode fieldNode = fieldsNode.get(i); - String fieldName = fieldNode.get("name").asText(); - Boolean notInSpec = fieldNode.has("datatools") && fieldNode.get("datatools").asBoolean(); - if (notInSpec) { - fieldsNode.remove(i); - } - headers.add(fieldName); + feedVersions.add(version); } + addNextJob(new MergeFeedsJob(owner, feedVersions, project.id + "-merged")); - try { - // write headers to table - tableOut.write(String.join(",", headers).getBytes()); - tableOut.write("\n".getBytes()); - - // iterate over feed source to zipfile map - for ( Map.Entry mapEntry : feedSourceMap.entrySet()) { - FeedSource fs = mapEntry.getKey(); - ZipFile zipFile = mapEntry.getValue(); - final Enumeration entries = zipFile.entries(); - while (entries.hasMoreElements()) { - final ZipEntry entry = entries.nextElement(); - if(tableName.equals(entry.getName())) { - LOG.info("Adding {} table for {}", entry.getName(), fs.name); - - InputStream inputStream = zipFile.getInputStream(entry); - - BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); - String line = in.readLine(); - String[] fields = line.split(","); - - List fieldList = Arrays.asList(fields); - - - // iterate over rows in table - while((line = in.readLine()) != null) { - String[] newValues = new String[fieldsNode.size()]; - String[] values = line.split(Consts.COLUMN_SPLIT, -1); - if (values.length == 1) { - LOG.warn("Found blank line. Skipping..."); - continue; - } - for(int v = 0; v < fieldsNode.size(); v++) { - JsonNode fieldNode = fieldsNode.get(v); - String fieldName = fieldNode.get("name").asText(); - - // get index of field from GTFS spec as it appears in feed - int index = fieldList.indexOf(fieldName); - String val = ""; - try { - index = fieldList.indexOf(fieldName); - if(index != -1) { - val = values[index]; - } - } catch (ArrayIndexOutOfBoundsException e) { - LOG.warn("Index {} out of bounds for file {} and feed {}", index, entry.getName(), fs.name); - continue; - } - - String fieldType = fieldNode.get("inputType").asText(); - - // if field is a gtfs identifier, prepend with feed id/name - if (fieldType.contains("GTFS") && !val.isEmpty()) { - newValues[v] = fs.name + ":" + val; - } - else { - newValues[v] = val; - } - } - String newLine = String.join(",", newValues); - - // write line to table (plus new line char) - tableOut.write(newLine.getBytes()); - tableOut.write("\n".getBytes()); - } - } - } - } - } catch (IOException e) { - e.printStackTrace(); - LOG.error("Error merging feed sources: {}", feedSourceMap.keySet().stream().map(fs -> fs.name).collect(Collectors.toList()).toString()); - halt(400, SparkUtils.formatJSON("Error merging feed sources", 400, e)); - } - return tableOut.toByteArray(); } } From 9e76476de1deab8800285d28a233b9e06066ed56 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 1 Feb 2019 17:12:25 -0500 Subject: [PATCH 03/83] refactor(feed-merge): handle merging projects + two versions for feed source --- .../api/FeedVersionController.java | 21 +- .../datatools/manager/jobs/MergeFeedsJob.java | 278 ++++++++++-------- .../manager/jobs/MergeFeedsResult.java | 15 + .../manager/jobs/MergeProjectFeedsJob.java | 2 +- .../manager/jobs/ProcessSingleFeedJob.java | 2 +- src/main/resources/gtfs/gtfs.yml | 21 ++ 6 files changed, 205 insertions(+), 134 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index eef219390..28e3147f4 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -31,6 +31,7 @@ import java.io.IOException; import java.util.Collection; import java.util.Date; +import java.util.HashSet; import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -292,8 +293,24 @@ private static FeedVersion publishToExternalResource (Request req, Response res) private static String mergeFeedVersions(Request req, Response res) { String[] versionIds = req.queryParams("feedVersionIds").split(","); Auth0UserProfile userProfile = req.attribute("user"); - Set versions = Stream.of(versionIds).map(id -> Persistence.feedVersions.getById(id)).collect(Collectors.toSet()); - MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getEmail(), versions, "merged"); + Set versions = new HashSet<>(); + String feedSourceId = null; + for (String id : versionIds) { + FeedVersion v = Persistence.feedVersions.getById(id); + if (v == null) { + logMessageAndHalt(req, 400, "Must provide valid version ID"); + } + // Store feed source id and check other versions for matching. + if (feedSourceId == null) feedSourceId = v.feedSourceId; + else if (!v.feedSourceId.equals(feedSourceId)) { + logMessageAndHalt(req, 400, "Cannot merge versions with different parent feed sources."); + } + versions.add(v); + } + if (versionIds.length != 2) { + logMessageAndHalt(req, 400, "Merging more than two versions is not currently supported."); + } + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), versions, "merged", MergeFeedsJob.MergeType.FEED_VERSIONS); DataManager.heavyExecutor.execute(mergeFeedsJob); return SparkUtils.formatJobMessage(mergeFeedsJob.jobId, "Merging feed versions..."); } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index ab9eb50cb..e106c322e 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -2,13 +2,12 @@ import com.conveyal.datatools.common.status.MonitorableJob; import com.conveyal.datatools.common.utils.Consts; -import com.conveyal.datatools.common.utils.SparkUtils; import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.persistence.FeedStore; -import com.conveyal.datatools.manager.persistence.Persistence; import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ArrayNode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -17,7 +16,6 @@ import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; -import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; @@ -34,145 +32,164 @@ import java.util.zip.ZipFile; import java.util.zip.ZipOutputStream; -import static spark.Spark.halt; +import static com.conveyal.datatools.manager.utils.StringUtils.getCleanName; public class MergeFeedsJob extends MonitorableJob { private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJob.class); + public static final ObjectMapper mapper = new ObjectMapper(); private final Set feedVersions; + public MergeFeedsResult mergeFeedsResult; private final String filename; + private final MergeType mergeType; - public MergeFeedsJob(String owner, Set feedVersions, String filename) { - super(owner, "Merging feed versions", JobType.MERGE_FEED_VERSIONS); + public MergeFeedsJob(String owner, Set feedVersions, String filename, MergeType mergeType) { + super(owner, mergeType.equals(MergeType.REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; this.filename = filename; + this.mergeType = mergeType; + this.mergeFeedsResult = new MergeFeedsResult(); + } + + public enum MergeType { + REGIONAL, + FEED_VERSIONS } @Override - public void jobLogic() { - // create temp merged zip file to add feed content to - File mergedFile = null; + public void jobLogic() throws IOException { + // Create temp zip file to add merged feed content to. + File mergedTempFile = null; try { - mergedFile = File.createTempFile(filename, ".zip"); - mergedFile.deleteOnExit(); - - } catch (IOException e) { - LOG.error("Could not create temp file"); - e.printStackTrace(); - halt(400, SparkUtils.formatJSON("Unknown error while merging feeds.", 400)); - } + try { + mergedTempFile = File.createTempFile(filename, ".zip"); + mergedTempFile.deleteOnExit(); + } catch (IOException e) { + LOG.error("Could not create temp file"); + throw e; + } - // create the zipfile - ZipOutputStream out; - try { - out = new ZipOutputStream(new FileOutputStream(mergedFile)); - } catch (FileNotFoundException e) { - throw new RuntimeException(e); - } + // create the zipfile + ZipOutputStream out = new ZipOutputStream(new FileOutputStream(mergedTempFile)); - LOG.info("Created project merge file: " + mergedFile.getAbsolutePath()); + LOG.info("Created project merge file: " + mergedTempFile.getAbsolutePath()); - // map of feed versions to table entries contained within version's GTFS - Map feedSourceMap = new HashMap<>(); + // Map of feed versions to table entries contained within version's GTFS. + Map zipFilesForVersions = new HashMap<>(); - // collect zipFiles for each feedSource before merging tables - for (FeedVersion version : feedVersions) { - FeedSource fs = Persistence.feedSources.getById(version.feedSourceId); - // modify feed version to use prepended feed id - LOG.info("Adding {} feed to merged zip", fs.name); - try { - File file = version.retrieveGtfsFile(); - if (file == null) { - LOG.error("No file exists for {}", version.id); - continue; + // Collect zipFiles for each feedSource before merging tables. + // FIXME : This needs to handle more than one version for the same feed source. + for (FeedVersion version : feedVersions) { + // modify feed version to use prepended feed id + LOG.info("Adding {} feed to merged zip", version.parentFeedSource().name); + try { + File file = version.retrieveGtfsFile(); + if (file == null) { + LOG.error("No file exists for {}", version.id); + continue; + } + ZipFile zipFile = new ZipFile(file); + zipFilesForVersions.put(version, zipFile); + } catch(Exception e) { + LOG.error("Zipfile for version {} not found", version.id); + throw e; } - ZipFile zipFile = new ZipFile(file); - feedSourceMap.put(fs, zipFile); - } catch(Exception e) { - e.printStackTrace(); - LOG.error("Zipfile for version {} not found", version.id); } - } - // loop through GTFS tables - // FIXME: add iteration over GTFS+ tables - int numberOfTables = DataManager.gtfsConfig.size(); - for(int i = 0; i < numberOfTables; i++) { - JsonNode tableNode = DataManager.gtfsConfig.get(i); - byte[] tableOut = mergeTables(tableNode, feedSourceMap); + // Determine which tables to merge (only merge GTFS+ tables for MTC extension). + final ArrayNode tablesToMerge = DataManager.isExtensionEnabled("mtc") + ? ((ArrayNode) DataManager.gtfsConfig).addAll((ArrayNode) DataManager.gtfsPlusConfig) + : (ArrayNode) DataManager.gtfsConfig; + int numberOfTables = tablesToMerge.size(); + // Loop over GTFS tables and merge each feed one table at a time. + for (int i = 0; i < numberOfTables; i++) { + JsonNode tableNode = tablesToMerge.get(i); + byte[] tableOut = constructMergedTable(tableNode, zipFilesForVersions); - // if at least one feed has the table, include it - if (tableOut != null) { - - String tableName = tableNode.get("name").asText(); - synchronized (status) { - status.message = "Merging " + tableName; - status.percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; + // If at least one feed has the table (i.e., tableOut is not null), include it in the merged feed. + if (tableOut != null) { + String tableName = tableNode.get("name").asText(); + double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; + status.update( "Merging " + tableName, percentComplete); + // Create entry for zip file. + ZipEntry tableEntry = new ZipEntry(tableName); + LOG.info("Writing {} to merged feed", tableName); + try { + out.putNextEntry(tableEntry); + out.write(tableOut); + out.closeEntry(); + } catch (IOException e) { + String message = String.format("Error writing to table %s", tableName); + LOG.error(message, e); + status.fail(message, e); + } + } + } + // Close output stream for zip file. + out.close(); + // Handle writing file to storage (local or s3). + if (mergeType.equals(MergeType.REGIONAL)) { + status.update(false, "Saving merged feed.", 95); + // Store the project merged zip locally or on s3 + if (DataManager.useS3) { + String s3Key = "project/" + filename; + FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedTempFile); + LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); + } else { + try { + FeedVersion.feedStore.newFeed(filename, new FileInputStream(mergedTempFile), null); + } catch (IOException e) { + e.printStackTrace(); + LOG.error("Could not store feed for project {}", filename); + throw e; + } } - // create entry for zip file - ZipEntry tableEntry = new ZipEntry(tableName); + } else { + // Create a new feed version from the file. + // Feed source should be the same for each version if using the FEED_VERSIONS merge type. + FeedSource source = feedVersions.iterator().next().parentFeedSource(); + FeedVersion mergedVersion = new FeedVersion(source); try { - out.putNextEntry(tableEntry); - LOG.info("Writing {} to merged feed", tableName); - out.write(tableOut); - out.closeEntry(); + FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), null); } catch (IOException e) { - LOG.error("Error writing to table {}", tableName); - e.printStackTrace(); + LOG.error("Could not store merged feed for new version"); + throw e; } + // Handle the processing of the new merged version (note: s3 upload is handled within this job. + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); + addNextJob(processSingleFeedJob); } + status.update(false, "Merged feed created successfully.", 100, true); + } catch (Exception e) { + LOG.error("Failed to merge feeds"); + // Bubble up exception to MonitorableJob + throw e; + } finally { + // Delete temp file in finally clause to ensure it is deleted even if the job fails. + mergedTempFile.delete(); } - try { - out.close(); - } catch (IOException e) { - LOG.error("Error closing zip file"); - e.printStackTrace(); - } - synchronized (status) { - status.message = "Saving merged feed."; - status.percentComplete = 95.0; - } - // Store the project merged zip locally or on s3 -// if (DataManager.useS3) { -// String s3Key = "project/" + project.id + ".zip"; -// FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedFile); -// LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); -// } else { -// try { -// FeedVersion.feedStore.newFeed(project.id + ".zip", new FileInputStream(mergedFile), null); -// } catch (FileNotFoundException e) { -// e.printStackTrace(); -// LOG.error("Could not store feed for project {}", project.id); -// } -// } - // delete temp file - mergedFile.delete(); - - status.update(false, "Merged feed created successfully.", 100, true); } /** * Merge the specified table for multiple GTFS feeds. * @param tableNode tableNode to merge - * @param feedSourceMap map of feedSources to zipFiles from which to extract the .txt tables - * @return single merged table for feeds + * @param zipFilesForVersions map of feedSources to zipFiles from which to extract the .txt tables + * @return single merged table for feeds or null if the table did not exist for any feed */ - private static byte[] mergeTables(JsonNode tableNode, Map feedSourceMap) { + private static byte[] constructMergedTable(JsonNode tableNode, Map zipFilesForVersions) throws IOException { String tableName = tableNode.get("name").asText(); ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); - - ArrayNode fieldsNode = (ArrayNode) tableNode.get("fields"); + ArrayNode fieldsNode = mapper.createArrayNode(); List headers = new ArrayList<>(); - for (int i = 0; i < fieldsNode.size(); i++) { - JsonNode fieldNode = fieldsNode.get(i); + for (JsonNode fieldNode : tableNode.get("fields")) { String fieldName = fieldNode.get("name").asText(); // Clean up spec file to exclude datatools/editor specific fields for the merge job. - boolean notInSpec = fieldNode.has("datatools") && fieldNode.get("datatools").asBoolean(); - if (notInSpec) { - fieldsNode.remove(i); + boolean isSpecField = !(fieldNode.has("datatools") && fieldNode.get("datatools").asBoolean()); + if (isSpecField) { + fieldsNode.add(fieldNode); + headers.add(fieldName); } - headers.add(fieldName); } try { @@ -180,42 +197,46 @@ private static byte[] mergeTables(JsonNode tableNode, Map f tableOut.write(String.join(",", headers).getBytes()); tableOut.write("\n".getBytes()); - // iterate over feed source to zipfile map - for ( Map.Entry mapEntry : feedSourceMap.entrySet()) { - FeedSource fs = mapEntry.getKey(); + // Iterate over each zip file. + for ( Map.Entry mapEntry : zipFilesForVersions.entrySet()) { + FeedVersion version = mapEntry.getKey(); + FeedSource fs = version.parentFeedSource(); + // Generate ID prefix to scope GTFS identifiers to avoid conflicts. + String idScope = getCleanName(fs.name) + version.version; ZipFile zipFile = mapEntry.getValue(); + // Get a list of the files contained within the zip file to find the table we're currently working on. final Enumeration entries = zipFile.entries(); while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); - if(tableName.equals(entry.getName())) { - LOG.info("Adding {} table for {}", entry.getName(), fs.name); + if (tableName.equals(entry.getName())) { + LOG.info("Adding {} table for {}{}", entry.getName(), fs.name, version.version); InputStream inputStream = zipFile.getInputStream(entry); BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); + // Read in first line (row headers) String line = in.readLine(); - String[] fields = line.split(","); - - List fieldList = Arrays.asList(fields); + List fieldsFoundInZip = Arrays.asList(line.split(",")); - - // iterate over rows in table - while((line = in.readLine()) != null) { + // Iterate over rows in table, writing them to the out file. + while ((line = in.readLine()) != null) { String[] newValues = new String[fieldsNode.size()]; String[] values = line.split(Consts.COLUMN_SPLIT, -1); if (values.length == 1) { LOG.warn("Found blank line. Skipping..."); continue; } + // Piece together the row to write, which should look practically identical to the original + // row except for the identifiers receiving a prefix to avoid ID conflicts. for(int v = 0; v < fieldsNode.size(); v++) { JsonNode fieldNode = fieldsNode.get(v); String fieldName = fieldNode.get("name").asText(); - // get index of field from GTFS spec as it appears in feed - int index = fieldList.indexOf(fieldName); + // Get index of field from GTFS spec as it appears in feed + int index = fieldsFoundInZip.indexOf(fieldName); String val = ""; try { - index = fieldList.indexOf(fieldName); + index = fieldsFoundInZip.indexOf(fieldName); if(index != -1) { val = values[index]; } @@ -223,20 +244,15 @@ private static byte[] mergeTables(JsonNode tableNode, Map f LOG.warn("Index {} out of bounds for file {} and feed {}", index, entry.getName(), fs.name); continue; } - + // Determine if field is GTFS identifier. String fieldType = fieldNode.get("inputType").asText(); - - // if field is a gtfs identifier, prepend with feed id/name - if (fieldType.contains("GTFS") && !val.isEmpty()) { - newValues[v] = fs.name + ":" + val; - } - else { - newValues[v] = val; - } + // If field is a GTFS identifier (e.g., route_id, stop_id, etc.), add scoped prefix. + newValues[v] = fieldType.contains("GTFS") && !val.isEmpty() + ? String.join(":", idScope, val) + : val; } + // Write line to table (plus new line char). String newLine = String.join(",", newValues); - - // write line to table (plus new line char) tableOut.write(newLine.getBytes()); tableOut.write("\n".getBytes()); } @@ -244,9 +260,11 @@ private static byte[] mergeTables(JsonNode tableNode, Map f } } } catch (IOException e) { - e.printStackTrace(); - LOG.error("Error merging feed sources: {}", feedSourceMap.keySet().stream().map(fs -> fs.name).collect(Collectors.toList()).toString()); - halt(400, SparkUtils.formatJSON("Error merging feed sources", 400, e)); + LOG.error( + "Error merging feed sources: {}", + zipFilesForVersions.keySet().stream().map(fs -> fs.name).collect(Collectors.toList()).toString() + ); + throw e; } return tableOut.toByteArray(); } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java new file mode 100644 index 000000000..263bac4bf --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java @@ -0,0 +1,15 @@ +package com.conveyal.datatools.manager.jobs; + +import java.util.Date; + +public class MergeFeedsResult { + + public int feedCount; + public int errors; + public Date startTime; + public boolean failed; + + public MergeFeedsResult () { + startTime = new Date(); + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java index 80bb45270..745dbca79 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java @@ -64,7 +64,7 @@ public void jobLogic () { LOG.info("Adding {} feed to merged zip", fs.name); feedVersions.add(version); } - addNextJob(new MergeFeedsJob(owner, feedVersions, project.id + "-merged")); + addNextJob(new MergeFeedsJob(owner, feedVersions, String.format("%s.zip", project.id), MergeFeedsJob.MergeType.REGIONAL)); } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/ProcessSingleFeedJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/ProcessSingleFeedJob.java index 4c1a11182..a5ed1a062 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/ProcessSingleFeedJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/ProcessSingleFeedJob.java @@ -50,7 +50,7 @@ public String getFeedSourceId () { public void jobLogic () { LOG.info("Processing feed for {}", feedVersion.id); - // First, load the feed into database. + // First, load the feed into database. During this stage, the GTFS file will be uploaded to S3 (and deleted locally). addNextJob(new LoadFeedJob(feedVersion, owner, isNewVersion)); // Next, validate the feed. diff --git a/src/main/resources/gtfs/gtfs.yml b/src/main/resources/gtfs/gtfs.yml index 5d86bca60..acc45edf0 100644 --- a/src/main/resources/gtfs/gtfs.yml +++ b/src/main/resources/gtfs/gtfs.yml @@ -318,6 +318,27 @@ columnWidth: 12 helpContent: +- id: shape + name: shapes.txt + helpContent: Shapes describe the physical path that a vehicle takes, and are defined in the file shapes.txt. Shapes belong to Trips, and consist of a sequence of points. Tracing the points in order provides the path of the vehicle. The points do not need to match stop locations. + fields: + - name: shape_id + required: true + inputType: GTFS_ID + helpContent: The shape_id field contains an ID that uniquely identifies a shape. + - name: shape_pt_lat + required: true + inputType: LATITUDE + - name: shape_pt_lon + required: true + inputType: LONGITUDE + - name: shape_pt_sequence + required: true + inputType: POSITIVE_INT + - name: shape_dist_traveled + inputType: POSITIVE_NUM + required: false + - id: trip name: trips.txt helpContent: Trips for each route. A trip is a sequence of two or more stops that occurs at specific time. From 17f651ec4543bdabfa4283a7257cf9101541cc3a Mon Sep 17 00:00:00 2001 From: evansiroky Date: Mon, 11 Feb 2019 16:13:34 -0800 Subject: [PATCH 04/83] docs(github): add item about referencing PRs in PRs to master --- .github/pull_request_template.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 539a998bf..8452340b0 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -5,9 +5,10 @@ - [ ] The description lists all applicable issues this PR seeks to resolve - [ ] The description lists any configuration setting(s) that differ from the default settings - [ ] All tests and CI builds passing +- [ ] The description lists all relevant PRs included in this release _(remove this if not merging to master)_ - [ ] e2e tests are all passing _(remove this if not merging to master)_ - [ ] Code coverage improves or is at 100% _(remove this if not merging to master)_ ### Description -Please explain the changes you made here and, if not immediately obvious from the code, how they resolve any referenced issues. Be sure to include all issues being resolved and any special configuration settings that are need for the software to run properly with these changes. +Please explain the changes you made here and, if not immediately obvious from the code, how they resolve any referenced issues. Be sure to include all issues being resolved and any special configuration settings that are need for the software to run properly with these changes. If merging to master, please also list the PRs that are to be included. From 7bcbda7ad305fb70627084828609dfbccab5adf7 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Wed, 13 Feb 2019 16:41:42 -0800 Subject: [PATCH 05/83] ci: cache yarn stuff and preemptively fix semantic-release to v15 semantic-release v16 is going to have a breaking change that will make maven-semantic-release not work properly. --- .travis.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index b999278c2..6eaec67d4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,10 +7,11 @@ sudo: false services: mongodb cache: directories: - - "$HOME/.m2" + - "$HOME/.m2" + - "$HOME/.cache/yarn" # Install semantic-release before_script: - - yarn global add @conveyal/maven-semantic-release semantic-release + - yarn global add @conveyal/maven-semantic-release semantic-release@15 before_install: #- sed -i.bak -e 's|https://nexus.codehaus.org/snapshots/|https://oss.sonatype.org/content/repositories/codehaus-snapshots/|g' ~/.m2/settings.xml # set region in AWS config for S3 setup From 88a57cd65eb0fb45c12c1e82cc035d4487cccec6 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 14 Feb 2019 23:02:33 -0800 Subject: [PATCH 06/83] refactor(auth0): log response body when an error from auth0 is received --- .../controllers/api/UserController.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java index 0aa1e74f5..b0757b360 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java @@ -374,16 +374,9 @@ private static String executeRequestAndGetResult(HttpRequestBase httpRequest, Re ); } - int statusCode = response.getStatusLine().getStatusCode(); - if(statusCode >= 300) { - LOG.error("HTTP request returned error code >= 300: ({})", httpRequest.toString()); - logMessageAndHalt(req, statusCode, response.toString()); - } - // parse response body if there is one HttpEntity entity = response.getEntity(); String result = null; - if (entity != null) { try { result = EntityUtils.toString(entity); @@ -391,14 +384,25 @@ private static String executeRequestAndGetResult(HttpRequestBase httpRequest, Re logMessageAndHalt( req, 500, - String.format("Failed to parse result of http request (%s).", - httpRequest.toString() + String.format( + "Failed to parse result of http request (%s).", + httpRequest.toString() ), e ); } } + int statusCode = response.getStatusLine().getStatusCode(); + if(statusCode >= 300) { + LOG.error( + "HTTP request returned error code >= 300: ({}). Body: {}", + httpRequest.toString(), + result != null ? result : "" + ); + logMessageAndHalt(req, statusCode, response.toString()); + } + LOG.info("Successfully made request: ({})", httpRequest.toString()); return result; From b6d1058dd14edc70703aea4eb5e10918ff11487f Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 15 Feb 2019 14:03:10 -0500 Subject: [PATCH 07/83] feat(merge-feeds): add MTC merge feeds strategy resolves #185 --- .../api/FeedVersionController.java | 5 +- .../controllers/api/ProjectController.java | 26 +- .../manager/gtfsplus/CalendarAttribute.java | 20 + .../datatools/manager/gtfsplus/Direction.java | 22 + .../manager/gtfsplus/FareRiderCategory.java | 24 + .../manager/gtfsplus/FareZoneAttribute.java | 20 + .../manager/gtfsplus/GtfsPlusTable.java | 87 +++ .../manager/gtfsplus/RealtimeRoute.java | 21 + .../manager/gtfsplus/RealtimeStop.java | 21 + .../manager/gtfsplus/RealtimeTrip.java | 20 + .../manager/gtfsplus/RiderCategory.java | 20 + .../manager/gtfsplus/StopAttribute.java | 23 + .../datatools/manager/gtfsplus/TimePoint.java | 20 + .../datatools/manager/jobs/MergeFeedsJob.java | 649 +++++++++++++----- .../manager/jobs/MergeFeedsResult.java | 25 +- .../manager/jobs/MergeFeedsType.java | 6 + .../manager/jobs/MergeProjectFeedsJob.java | 70 -- 17 files changed, 814 insertions(+), 265 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java create mode 100644 src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsType.java delete mode 100644 src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index 42de6737c..3f9b3e379 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -28,8 +28,6 @@ import java.util.Date; import java.util.HashSet; import java.util.Set; -import java.util.stream.Collectors; -import java.util.stream.Stream; import static com.conveyal.datatools.common.utils.S3Utils.downloadFromS3; import static com.conveyal.datatools.common.utils.SparkUtils.copyRequestStreamIntoFile; @@ -37,6 +35,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.formatJobMessage; import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.controllers.api.FeedSourceController.checkFeedSourcePermissions; +import static com.conveyal.datatools.manager.jobs.MergeFeedsType.MTC; import static spark.Spark.delete; import static spark.Spark.get; import static spark.Spark.post; @@ -289,7 +288,7 @@ else if (!v.feedSourceId.equals(feedSourceId)) { if (versionIds.length != 2) { logMessageAndHalt(req, 400, "Merging more than two versions is not currently supported."); } - MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), versions, "merged", MergeFeedsJob.MergeType.FEED_VERSIONS); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), versions, "merged", MTC); DataManager.heavyExecutor.execute(mergeFeedsJob); return SparkUtils.formatJobMessage(mergeFeedsJob.jobId, "Merging feed versions..."); } diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java index c5caba46f..6df416e19 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java @@ -5,8 +5,9 @@ import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.jobs.FetchProjectFeedsJob; import com.conveyal.datatools.manager.jobs.MakePublicJob; -import com.conveyal.datatools.manager.jobs.MergeProjectFeedsJob; +import com.conveyal.datatools.manager.jobs.MergeFeedsJob; import com.conveyal.datatools.manager.models.FeedDownloadToken; +import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.models.JsonViews; import com.conveyal.datatools.manager.models.Project; @@ -20,6 +21,8 @@ import spark.Response; import java.util.Collection; +import java.util.HashSet; +import java.util.Set; import java.util.stream.Collectors; import static com.conveyal.datatools.common.utils.S3Utils.downloadFromS3; @@ -27,6 +30,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.formatJobMessage; import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.DataManager.publicPath; +import static com.conveyal.datatools.manager.jobs.MergeFeedsType.REGIONAL; import static spark.Spark.delete; import static spark.Spark.get; import static spark.Spark.post; @@ -220,10 +224,24 @@ private static String downloadMergedFeed(Request req, Response res) { Project project = requestProjectById(req, "view"); Auth0UserProfile userProfile = req.attribute("user"); // TODO: make this an authenticated call? - MergeProjectFeedsJob mergeProjectFeedsJob = new MergeProjectFeedsJob(project, userProfile.getUser_id()); - DataManager.heavyExecutor.execute(mergeProjectFeedsJob); + Set feedVersions = new HashSet<>(); + // Get latest version for each feed source in project + Collection feedSources = project.retrieveProjectFeedSources(); + for (FeedSource fs : feedSources) { + // check if feed version exists + FeedVersion version = fs.retrieveLatest(); + if (version == null) { + LOG.warn("Skipping {} because it has no feed versions", fs.name); + continue; + } + // modify feed version to use prepended feed id + LOG.info("Adding {} feed to merged zip", fs.name); + feedVersions.add(version); + } + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), feedVersions, project.id, REGIONAL); + DataManager.heavyExecutor.execute(mergeFeedsJob); // Return job ID to requester for monitoring job status. - return formatJobMessage(mergeProjectFeedsJob.jobId, "Merge operation is processing."); + return formatJobMessage(mergeFeedsJob.jobId, "Merge operation is processing."); } /** diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java new file mode 100644 index 000000000..ad16d471e --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java @@ -0,0 +1,20 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class CalendarAttribute extends Entity { + + private static final long serialVersionUID = 1L; + + public String service_id; + public String service_description; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java new file mode 100644 index 000000000..9e5666d0a --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java @@ -0,0 +1,22 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class Direction extends Entity { + + private static final long serialVersionUID = 1L; + + public String route_id; + public int direction_id; + public String direction; + + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java new file mode 100644 index 000000000..000632b56 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java @@ -0,0 +1,24 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.time.LocalDate; + +public class FareRiderCategory extends Entity { + + private static final long serialVersionUID = 1L; + + public String fare_id; + public int rider_category_id; + public double price; + public LocalDate expiration_date; + public LocalDate commencement_date; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java new file mode 100644 index 000000000..780ec62be --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java @@ -0,0 +1,20 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class FareZoneAttribute extends Entity { + + private static final long serialVersionUID = 1L; + + public String zone_id; + public String zone_name; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java new file mode 100644 index 000000000..062aa5664 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java @@ -0,0 +1,87 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.loader.DateField; +import com.conveyal.gtfs.loader.DoubleField; +import com.conveyal.gtfs.loader.IntegerField; +import com.conveyal.gtfs.loader.ShortField; +import com.conveyal.gtfs.loader.StringField; +import com.conveyal.gtfs.loader.Table; + +import static com.conveyal.gtfs.loader.Requirement.OPTIONAL; +import static com.conveyal.gtfs.loader.Requirement.PROPRIETARY; +import static com.conveyal.gtfs.loader.Requirement.REQUIRED; + +public class GtfsPlusTable { + public static final Table REALTIME_ROUTES = new Table("realtime_routes", RealtimeRoute.class, PROPRIETARY, + new StringField("route_id", REQUIRED).isReferenceTo(Table.ROUTES), + new ShortField("realtime_enabled", REQUIRED, 1), + new StringField("realtime_routename", REQUIRED), + new StringField("realtime_routecode", REQUIRED) + ); + + public static final Table REALTIME_STOPS = new Table("realtime_stops", RealtimeStop.class, PROPRIETARY, + new StringField("trip_id", REQUIRED).isReferenceTo(Table.TRIPS), + new StringField("stop_id", REQUIRED).isReferenceTo(Table.STOPS), + new StringField("realtime_stop_id", REQUIRED) + ).keyFieldIsNotUnique(); + + public static final Table DIRECTIONS = new Table("directions", Direction.class, PROPRIETARY, + new StringField("route_id", REQUIRED).isReferenceTo(Table.ROUTES), + new ShortField("direction_id", REQUIRED, 1), + new StringField("direction", REQUIRED) + ).keyFieldIsNotUnique(); + + public static final Table REALTIME_TRIPS = new Table("realtime_trips", RealtimeTrip.class, PROPRIETARY, + new StringField("trip_id", REQUIRED).isReferenceTo(Table.TRIPS), + new StringField("realtime_trip_id", REQUIRED) + ); + + public static final Table STOP_ATTRIBUTES = new Table("stop_attributes", StopAttribute.class, PROPRIETARY, + new StringField("stop_id", REQUIRED).isReferenceTo(Table.STOPS), + new ShortField("accessibility_id", REQUIRED, 8), + new StringField("cardinal_direction", OPTIONAL), + new StringField("relative_position", OPTIONAL), + new StringField("stop_city", REQUIRED) + ); + + public static final Table TIMEPOINTS = new Table("timepoints", TimePoint.class, PROPRIETARY, + new StringField("trip_id", REQUIRED).isReferenceTo(Table.TRIPS), + new StringField("stop_id", REQUIRED).isReferenceTo(Table.STOPS) + ).keyFieldIsNotUnique(); + + public static final Table RIDER_CATEGORIES = new Table("rider_categories", RiderCategory.class, PROPRIETARY, + new IntegerField("rider_category_id", REQUIRED, 1, 25), + new StringField("rider_category_description", REQUIRED) + ); + + public static final Table FARE_RIDER_CATEGORIES = new Table("fare_rider_categories", FareRiderCategory.class, PROPRIETARY, + new StringField("fare_id", REQUIRED), + new IntegerField("rider_category_id", REQUIRED, 2, 25).isReferenceTo(RIDER_CATEGORIES), + new DoubleField("price", REQUIRED, 0, Double.MAX_VALUE, 2), + new DateField("expiration_date", OPTIONAL), + new DateField("commencement_date", OPTIONAL) + ).keyFieldIsNotUnique(); + + public static final Table CALENDAR_ATTRIBUTES = new Table("calendar_attributes", CalendarAttribute.class, PROPRIETARY, + new StringField("service_id", REQUIRED).isReferenceTo(Table.CALENDAR), + new StringField("service_description", REQUIRED) + ); + + public static final Table FAREZONE_ATTRIBUTES = new Table("farezone_attributes", FareZoneAttribute.class, PROPRIETARY, + new StringField("zone_id", REQUIRED), + new StringField("zone_name", REQUIRED) + ); + + public static final Table[] tables = new Table[] { + REALTIME_ROUTES, + REALTIME_STOPS, + REALTIME_TRIPS, + DIRECTIONS, + STOP_ATTRIBUTES, + TIMEPOINTS, + RIDER_CATEGORIES, + FARE_RIDER_CATEGORIES, + CALENDAR_ATTRIBUTES, + FAREZONE_ATTRIBUTES + }; +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java new file mode 100644 index 000000000..93d33d9c3 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java @@ -0,0 +1,21 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class RealtimeRoute extends Entity { + private static final long serialVersionUID = 1L; + + public String route_id; + public int realtime_enabled; + public String realtime_routename; + public String realtime_routecode; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java new file mode 100644 index 000000000..94033fa76 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java @@ -0,0 +1,21 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class RealtimeStop extends Entity { + + private static final long serialVersionUID = 1L; + + public String trip_id; + public String stop_id; + public String realtime_stop_id; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java new file mode 100644 index 000000000..d2acbf42f --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java @@ -0,0 +1,20 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class RealtimeTrip extends Entity { + + private static final long serialVersionUID = 1L; + + public String trip_id; + public String realtime_trip_id; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java new file mode 100644 index 000000000..3b44b487c --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java @@ -0,0 +1,20 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class RiderCategory extends Entity { + + private static final long serialVersionUID = 1L; + + public int rider_category_id; + public String rider_category_description; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java new file mode 100644 index 000000000..84b19e834 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java @@ -0,0 +1,23 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class StopAttribute extends Entity { + + private static final long serialVersionUID = 1L; + + public String stop_id; + public int accessibility_id; + public String cardinal_direction; + public String relative_position; + public String stop_city; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java new file mode 100644 index 000000000..8e2c83af1 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java @@ -0,0 +1,20 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.gtfs.model.Entity; + +import java.sql.PreparedStatement; +import java.sql.SQLException; + +public class TimePoint extends Entity { + + private static final long serialVersionUID = 1L; + + public String trip_id; + public String stop_id; + + // TODO + @Override + public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { + + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index e106c322e..30b3a40f0 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -1,271 +1,550 @@ package com.conveyal.datatools.manager.jobs; import com.conveyal.datatools.common.status.MonitorableJob; -import com.conveyal.datatools.common.utils.Consts; import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.gtfsplus.GtfsPlusTable; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.persistence.FeedStore; -import com.fasterxml.jackson.databind.JsonNode; +import com.conveyal.gtfs.error.NewGTFSError; +import com.conveyal.gtfs.error.NewGTFSErrorType; +import com.conveyal.gtfs.loader.Field; +import com.conveyal.gtfs.loader.JdbcGtfsLoader; +import com.conveyal.gtfs.loader.ReferenceTracker; +import com.conveyal.gtfs.loader.Table; +import com.csvreader.CsvReader; import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ArrayNode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.ArrayList; +import java.time.LocalDate; +import java.time.temporal.ChronoUnit; import java.util.Arrays; -import java.util.Enumeration; +import java.util.Comparator; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; import java.util.zip.ZipOutputStream; +import static com.conveyal.datatools.manager.jobs.MergeFeedsType.MTC; +import static com.conveyal.datatools.manager.jobs.MergeFeedsType.REGIONAL; import static com.conveyal.datatools.manager.utils.StringUtils.getCleanName; +import static com.conveyal.gtfs.loader.DateField.GTFS_DATE_FORMATTER; +import static com.conveyal.gtfs.loader.JdbcGtfsLoader.getFieldIndex; +import static com.conveyal.gtfs.loader.JdbcGtfsLoader.getKeyFieldIndex; +/** + * This job handles merging two or more feed versions according to logic specific to the specified merge type. + * The current merge types handled here are: + * - {@link MergeFeedsType#REGIONAL}: this is essentially a "dumb" merge. For each feed version, each primary key is + * scoped so that there is no possibility that it will conflict with other IDs + * found in any other feed version. Note: There is absoluately no attempt to merge + * entities based on either expected shared IDs or entity location (e.g., stop + * coordinates). + * - {@link MergeFeedsType#MTC}: this strategy is defined in detail at https://github.com/conveyal/datatools-server/issues/185, + * but in essence, this strategy attempts to merge a current and future feed into + * a combined file. For certain entities (specifically stops and routes) it uses + * alternate fields as primary keys (stop_code and route_short_name) if they are + * available. There is some complexity related to this in {@link #constructMergedTable(Table, List)}. + * Another defining characteristic is to prefer entities defined in the "future" + * file if there are matching entities in the current file. + * Future merge strategies could be added here. For example, some potential customers have mentioned a desire to + * prefer entities from the "current" version, so that entities edited in Data Tools would override the values found + * in the "future" file, which may have limited data attributes due to being exported from scheduling software with + * limited GTFS support. + */ public class MergeFeedsJob extends MonitorableJob { private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJob.class); public static final ObjectMapper mapper = new ObjectMapper(); private final Set feedVersions; + private final ReferenceTracker referenceTracker = new ReferenceTracker(); public MergeFeedsResult mergeFeedsResult; private final String filename; - private final MergeType mergeType; + public final String projectId; + public final MergeFeedsType mergeType; + private File mergedTempFile = null; - public MergeFeedsJob(String owner, Set feedVersions, String filename, MergeType mergeType) { - super(owner, mergeType.equals(MergeType.REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); + public MergeFeedsJob(String owner, Set feedVersions, String file, MergeFeedsType mergeType) { + super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; - this.filename = filename; + // Construct full filename with extension + this.filename = String.format("%s.zip", file); + // If the merge type is regional, the file string should be equivalent to projectId, which is used by the client + // to download the merged feed upon job completion. + this.projectId = mergeType.equals(REGIONAL) ? file : null; this.mergeType = mergeType; - this.mergeFeedsResult = new MergeFeedsResult(); + this.mergeFeedsResult = new MergeFeedsResult(mergeType); } - public enum MergeType { - REGIONAL, - FEED_VERSIONS + public void jobFinished() { + // Delete temp file to ensure it does not cause storage bloat. + if (!mergedTempFile.delete()) { + // FIXME: send to bugsnag? + LOG.error("Merged feed file {} not deleted. This may contribute to storage space shortages.", mergedTempFile.getAbsolutePath()); + } } @Override public void jobLogic() throws IOException { // Create temp zip file to add merged feed content to. - File mergedTempFile = null; - try { - try { - mergedTempFile = File.createTempFile(filename, ".zip"); - mergedTempFile.deleteOnExit(); - } catch (IOException e) { - LOG.error("Could not create temp file"); - throw e; - } - - // create the zipfile - ZipOutputStream out = new ZipOutputStream(new FileOutputStream(mergedTempFile)); - - LOG.info("Created project merge file: " + mergedTempFile.getAbsolutePath()); + mergedTempFile = File.createTempFile(filename, null); + mergedTempFile.deleteOnExit(); + // Create the zipfile. + ZipOutputStream out = new ZipOutputStream(new FileOutputStream(mergedTempFile)); + LOG.info("Created project merge file: " + mergedTempFile.getAbsolutePath()); + List feedsToMerge = collectAndSortFeeds(feedVersions); - // Map of feed versions to table entries contained within version's GTFS. - Map zipFilesForVersions = new HashMap<>(); - - // Collect zipFiles for each feedSource before merging tables. - // FIXME : This needs to handle more than one version for the same feed source. - for (FeedVersion version : feedVersions) { - // modify feed version to use prepended feed id - LOG.info("Adding {} feed to merged zip", version.parentFeedSource().name); + // Determine which tables to merge (only merge GTFS+ tables for MTC extension). + final List tablesToMerge = Arrays.stream(Table.tablesInOrder) + .filter(Table::isSpecTable) + .collect(Collectors.toList()); + if (DataManager.isExtensionEnabled("mtc")) { + // Merge GTFS+ tables only if MTC extension is enabled. We should do this for both regional and MTC merge + // strategies. + tablesToMerge.addAll(Arrays.asList(GtfsPlusTable.tables)); + } + int numberOfTables = tablesToMerge.size(); + // Loop over GTFS tables and merge each feed one table at a time. + for (int i = 0; i < numberOfTables; i++) { + Table table = tablesToMerge.get(i); + double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; + status.update( "Merging " + table.name, percentComplete); + // Perform the merge. + byte[] tableOut = constructMergedTable(table, feedsToMerge); + // If at least one feed has the table (i.e., tableOut is not null), include it in the merged feed. + if (tableOut != null) { + // Create entry for zip file. + ZipEntry tableEntry = new ZipEntry(table.name + ".txt"); + LOG.info("Writing {} to merged feed", table.name); try { - File file = version.retrieveGtfsFile(); - if (file == null) { - LOG.error("No file exists for {}", version.id); - continue; - } - ZipFile zipFile = new ZipFile(file); - zipFilesForVersions.put(version, zipFile); - } catch(Exception e) { - LOG.error("Zipfile for version {} not found", version.id); - throw e; + out.putNextEntry(tableEntry); + out.write(tableOut); + out.closeEntry(); + } catch (IOException e) { + String message = String.format("Error writing to table %s", table.name); + LOG.error(message, e); + status.fail(message, e); } + } else { + LOG.info("Skipping {} table. No entries found in zip files.", table.name); } + } + // Close output stream for zip file. + out.close(); + // Handle writing file to storage (local or s3). + storeMergedFeed(); + status.update(false, "Merged feed created successfully.", 100, true); + } - // Determine which tables to merge (only merge GTFS+ tables for MTC extension). - final ArrayNode tablesToMerge = DataManager.isExtensionEnabled("mtc") - ? ((ArrayNode) DataManager.gtfsConfig).addAll((ArrayNode) DataManager.gtfsPlusConfig) - : (ArrayNode) DataManager.gtfsConfig; - int numberOfTables = tablesToMerge.size(); - // Loop over GTFS tables and merge each feed one table at a time. - for (int i = 0; i < numberOfTables; i++) { - JsonNode tableNode = tablesToMerge.get(i); - byte[] tableOut = constructMergedTable(tableNode, zipFilesForVersions); - - // If at least one feed has the table (i.e., tableOut is not null), include it in the merged feed. - if (tableOut != null) { - String tableName = tableNode.get("name").asText(); - double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; - status.update( "Merging " + tableName, percentComplete); - // Create entry for zip file. - ZipEntry tableEntry = new ZipEntry(tableName); - LOG.info("Writing {} to merged feed", tableName); - try { - out.putNextEntry(tableEntry); - out.write(tableOut); - out.closeEntry(); - } catch (IOException e) { - String message = String.format("Error writing to table %s", tableName); - LOG.error(message, e); - status.fail(message, e); - } - } - } - // Close output stream for zip file. - out.close(); - // Handle writing file to storage (local or s3). - if (mergeType.equals(MergeType.REGIONAL)) { - status.update(false, "Saving merged feed.", 95); - // Store the project merged zip locally or on s3 - if (DataManager.useS3) { - String s3Key = "project/" + filename; - FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedTempFile); - LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); - } else { - try { - FeedVersion.feedStore.newFeed(filename, new FileInputStream(mergedTempFile), null); - } catch (IOException e) { - e.printStackTrace(); - LOG.error("Could not store feed for project {}", filename); - throw e; - } + /** + * Collect zipFiles for each feed version before merging tables. + * Note: feed versions are sorted by first calendar date so that future dataset is iterated over first. This is + * required for the MTC merge strategy which prefers entities from the future dataset over past entities. + */ + private List collectAndSortFeeds(Set feedVersions) { + return feedVersions + .stream() + .map(version -> { + try { + return new FeedToMerge(version); + } catch (Exception e) { + LOG.error("Could not create zip file for version {}:", version.parentFeedSource(), version.version); + return null; } + }) + .filter(Objects::nonNull) + // MTC-specific sort mentioned in above comment. + // TODO: If another merge strategy requires a different sort order, a merge type check should be added. + .sorted(Comparator.comparing(entry -> entry.version.validationResult.firstCalendarDate, Comparator.reverseOrder())) + .collect(Collectors.toList()); + } + + private void storeMergedFeed() throws IOException { + if (mergeType.equals(REGIONAL)) { + status.update(false, "Saving merged feed.", 95); + // Store the project merged zip locally or on s3 + if (DataManager.useS3) { + String s3Key = String.join("/", "project", filename); + FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedTempFile); + LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); } else { - // Create a new feed version from the file. - // Feed source should be the same for each version if using the FEED_VERSIONS merge type. - FeedSource source = feedVersions.iterator().next().parentFeedSource(); - FeedVersion mergedVersion = new FeedVersion(source); try { - FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), null); + FeedVersion.feedStore.newFeed(filename, new FileInputStream(mergedTempFile), null); } catch (IOException e) { - LOG.error("Could not store merged feed for new version"); + e.printStackTrace(); + LOG.error("Could not store feed for project {}", filename); throw e; } - // Handle the processing of the new merged version (note: s3 upload is handled within this job. - ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); - addNextJob(processSingleFeedJob); } - status.update(false, "Merged feed created successfully.", 100, true); - } catch (Exception e) { - LOG.error("Failed to merge feeds"); - // Bubble up exception to MonitorableJob - throw e; - } finally { - // Delete temp file in finally clause to ensure it is deleted even if the job fails. - mergedTempFile.delete(); + } else { + // Create a new feed version from the file. + // Feed source should be the same for each version if using the MTC merge type. + FeedSource source = feedVersions.iterator().next().parentFeedSource(); + FeedVersion mergedVersion = new FeedVersion(source); + try { + FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), null); + } catch (IOException e) { + LOG.error("Could not store merged feed for new version"); + throw e; + } + // Handle the processing of the new merged version (note: s3 upload is handled within this job. + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); + addNextJob(processSingleFeedJob); } } /** * Merge the specified table for multiple GTFS feeds. - * @param tableNode tableNode to merge - * @param zipFilesForVersions map of feedSources to zipFiles from which to extract the .txt tables + * @param table table to merge + * @param feedsToMerge map of feedSources to zipFiles from which to extract the .txt tables * @return single merged table for feeds or null if the table did not exist for any feed */ - private static byte[] constructMergedTable(JsonNode tableNode, Map zipFilesForVersions) throws IOException { - - String tableName = tableNode.get("name").asText(); - ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); - ArrayNode fieldsNode = mapper.createArrayNode(); - List headers = new ArrayList<>(); - for (JsonNode fieldNode : tableNode.get("fields")) { - String fieldName = fieldNode.get("name").asText(); - // Clean up spec file to exclude datatools/editor specific fields for the merge job. - boolean isSpecField = !(fieldNode.has("datatools") && fieldNode.get("datatools").asBoolean()); - if (isSpecField) { - fieldsNode.add(fieldNode); - headers.add(fieldName); + private byte[] constructMergedTable(Table table, List feedsToMerge) throws IOException { + String keyField = table.getKeyFieldName(); + String orderField = table.getOrderFieldName(); + if (mergeType.equals(MTC)) { + // MTC requires that the stop and route records be merged based on different key fields. + switch (table.name) { + case "stops": + keyField = "stop_code"; + break; + case "routes": + keyField = "route_short_name"; + break; + default: + // Otherwise, use the standard key field (see keyField declaration. + break; } } - + // Set up objects for outputting the data and tracking the rows encountered + ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); + Map rowValuesForKeys = new HashMap<>(); + Set rowStrings = new HashSet<>(); + int mergedLineNumber = 0; + // Get the spec fields to export + List specFields = table.specFields(); + boolean stopCodeMissingFromFirstTable = false; try { - // write headers to table - tableOut.write(String.join(",", headers).getBytes()); - tableOut.write("\n".getBytes()); - // Iterate over each zip file. - for ( Map.Entry mapEntry : zipFilesForVersions.entrySet()) { - FeedVersion version = mapEntry.getKey(); - FeedSource fs = version.parentFeedSource(); + for (int f = 0; f < feedsToMerge.size(); f++) { + mergeFeedsResult.feedCount++; + // FIXME add check for merge type. + if (f > 0 && (table.name.equals("agency") || table.name.equals("feed_info")) && mergeType.equals(MTC)) { + // Always prefer future file for agency and feed_info tables, which means that we can skip + // iterations following the first one. + // FIXME: This could cause issues with routes or fares that reference an agency_id that no longer + // exists. + LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, f, feedsToMerge.size()); + continue; + } + FeedToMerge feed = feedsToMerge.get(f); + FeedVersion version = feed.version; + FeedSource feedSource = version.parentFeedSource(); // Generate ID prefix to scope GTFS identifiers to avoid conflicts. - String idScope = getCleanName(fs.name) + version.version; - ZipFile zipFile = mapEntry.getValue(); - // Get a list of the files contained within the zip file to find the table we're currently working on. - final Enumeration entries = zipFile.entries(); - while (entries.hasMoreElements()) { - final ZipEntry entry = entries.nextElement(); - if (tableName.equals(entry.getName())) { - LOG.info("Adding {} table for {}{}", entry.getName(), fs.name, version.version); - - InputStream inputStream = zipFile.getInputStream(entry); + String idScope = getCleanName(feedSource.name) + version.version; + CsvReader csvReader = JdbcGtfsLoader.getCsvReader(feed.zipFile, table, null); + // If csv reader is null, the table was not found in the zip file. There is no need to handle merging + // this table for the current zip file. + if (csvReader == null) continue; + LOG.info("Adding {} table for {}{}", table.name, feedSource.name, version.version); - BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); - // Read in first line (row headers) - String line = in.readLine(); - List fieldsFoundInZip = Arrays.asList(line.split(",")); - - // Iterate over rows in table, writing them to the out file. - while ((line = in.readLine()) != null) { - String[] newValues = new String[fieldsNode.size()]; - String[] values = line.split(Consts.COLUMN_SPLIT, -1); - if (values.length == 1) { - LOG.warn("Found blank line. Skipping..."); - continue; + Field[] fieldsFoundInZip = JdbcGtfsLoader.getFieldsFromFieldHeaders(csvReader.getHeaders(), table, null); + List fieldsFoundList = Arrays.asList(fieldsFoundInZip); + // Determine the index of the key field for this version's table. + int keyFieldIndex = getFieldIndex(fieldsFoundInZip, keyField); + int lineNumber = 0; + // Iterate over rows in table, writing them to the out file. + while (csvReader.readRecord()) { + String keyValue = csvReader.get(keyFieldIndex); + // FIXME add check for merge type? + if (mergeType.equals(MTC) && lineNumber == 0 && table.name.equals("stops")) { + // For the first line of the stops table, check that the alt. key + // field (stop_code) is present. If it is not, revert to the original key field. + if (f == 0) { + // Check that the first file contains stop_code values. + if ("".equals(keyValue)) { + LOG.warn("stop_code is not present in file {}/{}. Reverting to stop_id", f, feedsToMerge.size()); + // If the key value for stop_code is not present, revert to stop_id. + keyField = table.getKeyFieldName(); + keyFieldIndex = JdbcGtfsLoader.getKeyFieldIndex(table, fieldsFoundInZip); + keyValue = csvReader.get(keyFieldIndex); + stopCodeMissingFromFirstTable = true; } - // Piece together the row to write, which should look practically identical to the original - // row except for the identifiers receiving a prefix to avoid ID conflicts. - for(int v = 0; v < fieldsNode.size(); v++) { - JsonNode fieldNode = fieldsNode.get(v); - String fieldName = fieldNode.get("name").asText(); - - // Get index of field from GTFS spec as it appears in feed - int index = fieldsFoundInZip.indexOf(fieldName); - String val = ""; - try { - index = fieldsFoundInZip.indexOf(fieldName); - if(index != -1) { - val = values[index]; + } else { + // Check whether stop_code exists for the subsequent files. + String firstStopCodeValue = csvReader.get(getFieldIndex(fieldsFoundInZip, "stop_code")); + if (stopCodeMissingFromFirstTable && !"".equals(firstStopCodeValue)) { + // If stop_code was missing from the first file and exists for the second, we consider + // that a failing error. + mergeFeedsResult.failed = true; + mergeFeedsResult.errorCount++; + mergeFeedsResult.failureReasons.add( + "If one stops.txt file contains stop_codes, both feed versions must stop_codes." + ); + } + } + } + boolean skipRecord = false; + String[] rowValues = new String[specFields.size()]; + String[] values = csvReader.getValues(); + if (values.length == 1) { + LOG.warn("Found blank line. Skipping..."); + continue; + } + // Piece together the row to write, which should look practically identical to the original + // row except for the identifiers receiving a prefix to avoid ID conflicts. + for (int v = 0; v < specFields.size(); v++) { + Field field = specFields.get(v); + // Get index of field from GTFS spec as it appears in feed + int index = fieldsFoundList.indexOf(field); + String val = csvReader.get(index); + // Determine if field is a GTFS identifier. + boolean isKeyField = field.isForeignReference() || keyField.equals(field.name); + Set idErrors = table.checkReferencesAndUniqueness(keyValue, lineNumber, field, val, referenceTracker, keyField, orderField); + // Store values for key fields that have been encountered. + switch (table.name) { + // case "calendar_dates": + case "calendar": + // If any service_id in the active feed matches with the future feed, it should be + // modified and all associated trip records must also be changed with the modified + // service_id. + // TODO How can we check that calendar_dates entries are duplicates? I think we would + // need to consider the service_id:exception_type:date as the unique key and include any + // all entries as long as they are unique on this key. + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + String key = String.join(":", table.name, idScope, val); + // Modify service_id and ensure that referencing trips have service_id updated. + val = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, val); + } + } + // If a service_id from the active calendar has both the start_date and end_date in the + // future, the service will be excluded from the merged file. Records in trips, + // calendar_dates, and calendar_attributes referencing this service_id shall also be + // removed/ignored. Stop_time records for the ignored trips shall also be removed. + if (f > 0) { + int startDateIndex = getFieldIndex(fieldsFoundInZip, "start_date"); + LocalDate startDate = LocalDate.parse(csvReader.get(startDateIndex), GTFS_DATE_FORMATTER); + if (startDate.isAfter(LocalDate.now())) { + LOG.warn("Skipping calendar entry {} because it operates in the future.", keyValue); + String key = String.join(":", table.name, idScope, keyValue); + mergeFeedsResult.skippedIds.add(key); + skipRecord = true; + continue; + } + // If a service_id from the active calendar has only the end_date in the future, the + // end_date shall be set to one day prior to the earliest start_date in future + // dataset before appending the calendar record to the merged file. + int endDateIndex = getFieldIndex(fieldsFoundInZip, "end_date"); + if (index == endDateIndex) { + LocalDate endDate = LocalDate.parse(csvReader.get(endDateIndex), GTFS_DATE_FORMATTER); + if (endDate.isAfter(LocalDate.now())) { + val = feedsToMerge.get(0).version.validationResult.firstCalendarDate + .minus(1, ChronoUnit.DAYS) + .format(GTFS_DATE_FORMATTER); + } + } + } + break; + case "trips": + // trip_ids between active and future datasets must not match. If any trip_id is found + // to be matching, the merge should fail with appropriate notification to user with the + // cause of the failure. Merge result should include all conflicting trip_ids. + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + mergeFeedsResult.failureReasons.add("Trip ID conflict caused merge failure."); + mergeFeedsResult.addIdConflict(error.badValue); + skipRecord = true; + } + } + break; + case "stops": + // When stop_code is included, stop merging will be based on that. If stop_code is not + // included, it will be based on stop_id. All stops in future data will be carried + // forward and any stops found in active data that are not in the future data shall be + // appended. If one of the feed is missing stop_code, merge fails with a notification to + // the user with suggestion that the feed with missing stop_code must be fixed with + // stop_code. + case "routes": + String primaryKeyValue = csvReader.get(getKeyFieldIndex(table, fieldsFoundInZip)); + Set primaryKeyErrors = table.checkReferencesAndUniqueness(primaryKeyValue, lineNumber, field, val, referenceTracker); + // Merging will be based on route_short_name in the current and future datasets. All + // matching route_short_names between the datasets shall be considered same route. Any + // route_short_name in active data not present in the future will be appended to the + // future routes file. + if (keyField.equals("stop_code") || keyField.equals("route_short_name")) { + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + // If we encounter a route that shares its short name with a previous route, + // we need to remap its route_id field so that references point to the previous + // route_id. + String currentId = index == 0 ? val : rowValues[0]; + String key = String.join(":", table.name, idScope, currentId); + // Extract the route_id value used for the route with matching short name. + String[] strings = rowValuesForKeys.get(val); + String id = strings[0]; + if (!id.equals(currentId)) { + // Remap this row's route_id to ensure that referencing trips have their + // route_id updated. + mergeFeedsResult.remappedIds.put(key, id); + } + skipRecord = true; + } + } + // Next check for regular ID conflicts (e.g., on route_id or stop_id) because any + // conflicts here will actually break the feed. This essentially handles the case + // where two routes have different short_names, but share the same route_id. We want + // both of these routes two end up in the merged feed in this case because we're + // matching on short name, so we must modify the route_id. + if (!skipRecord && !referenceTracker.transitIds.contains(String.join(":", keyField, keyValue))) { + for (NewGTFSError error : primaryKeyErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + String key = String.join(":", table.name, idScope, val); + // Modify route_id and ensure that referencing trips have route_id updated. + val = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, val); + } + } + } + } else { + // Key field has defaulted to the standard primary key field (stop_id or route_id), + // which makes the check much simpler (just skip the duplicate record). + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + skipRecord = true; + } } - } catch (ArrayIndexOutOfBoundsException e) { - LOG.warn("Index {} out of bounds for file {} and feed {}", index, entry.getName(), fs.name); - continue; } - // Determine if field is GTFS identifier. - String fieldType = fieldNode.get("inputType").asText(); - // If field is a GTFS identifier (e.g., route_id, stop_id, etc.), add scoped prefix. - newValues[v] = fieldType.contains("GTFS") && !val.isEmpty() - ? String.join(":", idScope, val) - : val; + break; + case "transfers": + // For any other table, skip any duplicate record. + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + skipRecord = true; + } + } + break; + default: + // For any other table, skip any duplicate record. + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + skipRecord = true; + } + } + break; + } + String valueToWrite = val; + if (field.isForeignReference()) { + // If the field is a foreign reference, check to see whether the reference has been + // remapped due to a conflicting ID from another feed (e.g., calendar#service_id). + String key = String.join(":", field.referenceTable.name, idScope, val); + if (mergeFeedsResult.remappedIds.containsKey(key)) { + mergeFeedsResult.remappedReferences++; + // If the value has been remapped update the value to write. + valueToWrite = mergeFeedsResult.remappedIds.get(key); + } + // If the current foreign ref points to another record that has been skipped, skip this + // record and add its primary key to the list of skipped IDs (so that other references can + // be properly omitted). + if (mergeFeedsResult.skippedIds.contains(key)) { + String skippedKey = String.join(":", table.name, idScope, keyValue); + if (orderField != null) { + skippedKey = String.join(":", + skippedKey, + csvReader.get(getFieldIndex(fieldsFoundInZip, orderField)) + ); + } + mergeFeedsResult.skippedIds.add(skippedKey); + skipRecord = true; + continue; } - // Write line to table (plus new line char). - String newLine = String.join(",", newValues); - tableOut.write(newLine.getBytes()); - tableOut.write("\n".getBytes()); } + if (this.mergeType.equals(REGIONAL) && isKeyField && !val.isEmpty()) { + // For regional merge, if field is a GTFS identifier (e.g., route_id, stop_id, etc.), + // add scoped prefix. + valueToWrite = String.join(":", idScope, val); + } + + rowValues[v] = valueToWrite; + } + if (table.name.equals("routes") && rowValues[0].contains("BART")) { + LOG.info("Route record: {}", rowValues[0]); + } + // Do not write rows that are designated to be skipped. + if (skipRecord && this.mergeType.equals(MTC)) { + mergeFeedsResult.recordsSkipCount++; + continue; } + String newLine = String.join(",", rowValues); + if (!rowStrings.add(newLine)) { + // The line already exists in the output file, do not append it again. This prevents duplicate + // entries for certain files that do not contain primary keys (e.g., fare_rules and transfers) and + // do not otherwise have convenient ways to track uniqueness (like an order field). + // FIXME: add ordinal field/compound keys for transfers (from/to_stop_id) and fare_rules (?). + // Perhaps it makes sense to include all unique fare rules rows, but transfers that share the + // same from/to stop IDs but different transfer times or other values should not both be + // included in the merged feed (yet this strategy would fail to filter those out). + mergeFeedsResult.recordsSkipCount++; + continue; + } + // FIXME: This should be revised for tables with order fields, but it should work fine for its + // primary purposes: to detect exact copy rows and to temporarily hold the data in case a reference + // needs to be looked up in order to remap an entity to that key. + rowValuesForKeys.put(rowValues[keyFieldIndex], rowValues); + if (mergedLineNumber == 0) { + // Write headers to table. + String headers = specFields.stream().map(field -> field.name).collect(Collectors.joining(",")); + tableOut.write(headers.getBytes()); + tableOut.write("\n".getBytes()); + } + // Write line to table (plus new line char). + tableOut.write(newLine.getBytes()); + tableOut.write("\n".getBytes()); + lineNumber++; + mergedLineNumber++; } } - } catch (IOException e) { + } catch (Exception e) { LOG.error( "Error merging feed sources: {}", - zipFilesForVersions.keySet().stream().map(fs -> fs.name).collect(Collectors.toList()).toString() + feedVersions.stream() + .map(version -> version.parentFeedSource().name) + .collect(Collectors.toList()) + .toString() ); throw e; } + // If no rows were ever written, return null (there is no need to generate the empty file). + if (tableOut.size() == 0) return null; + // Track the number of lines in the merged table. + mergeFeedsResult.linesPerTable.put(table.name, mergedLineNumber); + // Otherwise, return the output stream as a byte array. return tableOut.toByteArray(); } + + /** + * Helper class that collects the feed version and its zip file. Note: this class helps with sorting versions to + * merge in a list collection. + */ + private class FeedToMerge { + public FeedVersion version; + public ZipFile zipFile; + FeedToMerge (FeedVersion version) throws IOException { + this.version = version; + this.zipFile = new ZipFile(version.retrieveGtfsFile()); + } + } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java index 263bac4bf..dee10059d 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java @@ -1,15 +1,34 @@ package com.conveyal.datatools.manager.jobs; import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; public class MergeFeedsResult { public int feedCount; - public int errors; + public int errorCount; + public MergeFeedsType type; + public Set idConflicts = new HashSet<>(); + public Set skippedIds = new HashSet<>(); + public Map remappedIds = new HashMap<>(); + public Map linesPerTable = new HashMap<>(); + public int remappedReferences; + public int recordsSkipCount; public Date startTime; public boolean failed; + public Set failureReasons = new HashSet<>(); - public MergeFeedsResult () { - startTime = new Date(); + public MergeFeedsResult (MergeFeedsType type) { + this.type = type; + this.startTime = new Date(); + } + + public void addIdConflict (String id) { + idConflicts.add(id); + errorCount++; + failed = true; } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsType.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsType.java new file mode 100644 index 000000000..f827c7f96 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsType.java @@ -0,0 +1,6 @@ +package com.conveyal.datatools.manager.jobs; + +public enum MergeFeedsType { + REGIONAL, + MTC +} diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java deleted file mode 100644 index 745dbca79..000000000 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeProjectFeedsJob.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.conveyal.datatools.manager.jobs; - -import com.conveyal.datatools.common.status.MonitorableJob; -import com.conveyal.datatools.common.utils.Consts; -import com.conveyal.datatools.manager.DataManager; -import com.conveyal.datatools.manager.models.FeedSource; -import com.conveyal.datatools.manager.models.FeedVersion; -import com.conveyal.datatools.manager.models.Project; -import com.conveyal.datatools.manager.persistence.FeedStore; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.node.ArrayNode; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.BufferedReader; -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; -import java.util.zip.ZipOutputStream; - -/** - * Created by landon on 9/19/17. - */ -public class MergeProjectFeedsJob extends MonitorableJob { - - private static final Logger LOG = LoggerFactory.getLogger(MergeProjectFeedsJob.class); - public final Project project; - - public MergeProjectFeedsJob(Project project, String owner) { - super(owner, "Merging project feeds for " + project.name, JobType.MERGE_PROJECT_FEEDS); - this.project = project; - status.message = "Merging feeds..."; - } - - @Override - public void jobLogic () { - Set feedVersions = new HashSet<>(); - // Get latest version for each feed source in project - Collection feedSources = project.retrieveProjectFeedSources(); - for (FeedSource fs : feedSources) { - // check if feed version exists - FeedVersion version = fs.retrieveLatest(); - if (version == null) { - LOG.warn("Skipping {} because it has no feed versions", fs.name); - continue; - } - // modify feed version to use prepended feed id - LOG.info("Adding {} feed to merged zip", fs.name); - feedVersions.add(version); - } - addNextJob(new MergeFeedsJob(owner, feedVersions, String.format("%s.zip", project.id), MergeFeedsJob.MergeType.REGIONAL)); - - } -} From 2fc62d1a0507828967184d0139ef42147ac1d0e2 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 15 Feb 2019 15:04:26 -0500 Subject: [PATCH 08/83] refactor(job): remove unused job type --- .../com/conveyal/datatools/common/status/MonitorableJob.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java index e4c226943..0d401b2f2 100644 --- a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java +++ b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java @@ -57,7 +57,6 @@ public enum JobType { EXPORT_SNAPSHOT_TO_GTFS, CONVERT_EDITOR_MAPDB_TO_SQL, VALIDATE_ALL_FEEDS, - MERGE_PROJECT_FEEDS, MERGE_FEED_VERSIONS } From 1e7014b9abdf203ea4c20b80fa51a5cf0e5a24a8 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 15 Feb 2019 16:13:35 -0500 Subject: [PATCH 09/83] refactor(merge-feeds): improve comments, add job#validationResult --- .../api/FeedVersionController.java | 22 +++++++++- .../controllers/api/ProjectController.java | 2 +- .../datatools/manager/jobs/MergeFeedsJob.java | 43 ++++++++++++++----- .../manager/jobs/ValidateFeedJob.java | 11 +++++ 4 files changed, 64 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index 3f9b3e379..b53dcd888 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -5,6 +5,7 @@ import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.jobs.CreateFeedVersionFromSnapshotJob; import com.conveyal.datatools.manager.jobs.MergeFeedsJob; +import com.conveyal.datatools.manager.jobs.MergeFeedsType; import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; import com.conveyal.datatools.manager.models.FeedDownloadToken; import com.conveyal.datatools.manager.models.FeedSource; @@ -36,6 +37,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.controllers.api.FeedSourceController.checkFeedSourcePermissions; import static com.conveyal.datatools.manager.jobs.MergeFeedsType.MTC; +import static com.conveyal.datatools.manager.jobs.MergeFeedsType.REGIONAL; import static spark.Spark.delete; import static spark.Spark.get; import static spark.Spark.post; @@ -268,9 +270,23 @@ private static FeedVersion publishToExternalResource (Request req, Response res) } } + /** + * HTTP controller that handles merging multiple feed versions for a given feed source, with version IDs specified + * in a comma-separated string in the feedVersionIds query parameter and merge type specified in mergeType query + * parameter. NOTE: REGIONAL merge type should only be handled through {@link ProjectController#downloadMergedFeed(Request, Response)}. + */ private static String mergeFeedVersions(Request req, Response res) { String[] versionIds = req.queryParams("feedVersionIds").split(","); - Auth0UserProfile userProfile = req.attribute("user"); + // Try to parse merge type (null or bad value throws IllegalArgumentException). + MergeFeedsType mergeType; + try { + mergeType = MergeFeedsType.valueOf(req.queryParams("mergeType")); + if (mergeType.equals(REGIONAL)) throw new IllegalArgumentException(); + } catch (IllegalArgumentException e) { + logMessageAndHalt(req, 400, "Must provide valid merge type.", e); + return null; + } + // Collect versions to merge (must belong to same feed source). Set versions = new HashSet<>(); String feedSourceId = null; for (String id : versionIds) { @@ -288,7 +304,9 @@ else if (!v.feedSourceId.equals(feedSourceId)) { if (versionIds.length != 2) { logMessageAndHalt(req, 400, "Merging more than two versions is not currently supported."); } - MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), versions, "merged", MTC); + // Kick off merge feeds job. + Auth0UserProfile userProfile = req.attribute("user"); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob(userProfile.getUser_id(), versions, "merged", mergeType); DataManager.heavyExecutor.execute(mergeFeedsJob); return SparkUtils.formatJobMessage(mergeFeedsJob.jobId, "Merging feed versions..."); } diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java index 6df416e19..dcafea22d 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java @@ -220,7 +220,7 @@ private static Project checkProjectPermissions(Request req, Project project, Str * to getFeedDownloadCredentials with the project ID to obtain either temporary S3 credentials or a download token * (depending on application configuration "application.data.use_s3_storage") to download the zip file. */ - private static String downloadMergedFeed(Request req, Response res) { + static String downloadMergedFeed(Request req, Response res) { Project project = requestProjectById(req, "view"); Auth0UserProfile userProfile = req.attribute("user"); // TODO: make this an authenticated call? diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 30b3a40f0..700a5f797 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -69,33 +69,53 @@ public class MergeFeedsJob extends MonitorableJob { private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJob.class); public static final ObjectMapper mapper = new ObjectMapper(); private final Set feedVersions; + private final FeedSource feedSource; private final ReferenceTracker referenceTracker = new ReferenceTracker(); public MergeFeedsResult mergeFeedsResult; private final String filename; public final String projectId; public final MergeFeedsType mergeType; private File mergedTempFile = null; + private final FeedVersion mergedVersion; public MergeFeedsJob(String owner, Set feedVersions, String file, MergeFeedsType mergeType) { super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; + // Grab parent feed source if performing non-regional merge (each version should share the same feed source). + this.feedSource = mergeType.equals(REGIONAL) ? null : feedVersions.iterator().next().parentFeedSource(); // Construct full filename with extension this.filename = String.format("%s.zip", file); // If the merge type is regional, the file string should be equivalent to projectId, which is used by the client // to download the merged feed upon job completion. this.projectId = mergeType.equals(REGIONAL) ? file : null; this.mergeType = mergeType; + // Assuming job is successful, mergedVersion will contain the resulting feed version. + this.mergedVersion = mergeType.equals(REGIONAL) ? null : new FeedVersion(this.feedSource); this.mergeFeedsResult = new MergeFeedsResult(mergeType); } + /** + * The final stage handles clean up (deleting temp file) and adding the next job to process the new merged version + * (assuming the merge did not fail). + */ public void jobFinished() { - // Delete temp file to ensure it does not cause storage bloat. + // Delete temp file to ensure it does not cause storage bloat. Note: merged file has already been stored + // permanently. if (!mergedTempFile.delete()) { // FIXME: send to bugsnag? LOG.error("Merged feed file {} not deleted. This may contribute to storage space shortages.", mergedTempFile.getAbsolutePath()); } + if (!mergeType.equals(REGIONAL) && !status.error && !mergeFeedsResult.failed) { + // Handle the processing of the new version for non-regional merges (note: s3 upload is handled within this job). + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); + addNextJob(processSingleFeedJob); + } } + /** + * Primary job logic handles collecting and sorting versions, creating a merged table for all versions, and writing + * the resulting zip file to storage. + */ @Override public void jobLogic() throws IOException { // Create temp zip file to add merged feed content to. @@ -144,8 +164,11 @@ public void jobLogic() throws IOException { // Close output stream for zip file. out.close(); // Handle writing file to storage (local or s3). - storeMergedFeed(); - status.update(false, "Merged feed created successfully.", 100, true); + if (mergeFeedsResult.failed) status.fail("Merging feed versions failed."); + else { + storeMergedFeed(); + status.update(false, "Merged feed created successfully.", 100, true); + } } /** @@ -171,6 +194,10 @@ private List collectAndSortFeeds(Set feedVersions) { .collect(Collectors.toList()); } + /** + * Handles writing the GTFS zip file to disk. For REGIONAL merges, this will end up in a project subdirectory on s3. + * Otherwise, it will write to a new version. + */ private void storeMergedFeed() throws IOException { if (mergeType.equals(REGIONAL)) { status.update(false, "Saving merged feed.", 95); @@ -189,19 +216,13 @@ private void storeMergedFeed() throws IOException { } } } else { - // Create a new feed version from the file. - // Feed source should be the same for each version if using the MTC merge type. - FeedSource source = feedVersions.iterator().next().parentFeedSource(); - FeedVersion mergedVersion = new FeedVersion(source); + // Store the zip file for the merged feed version. try { - FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), null); + FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), feedSource); } catch (IOException e) { LOG.error("Could not store merged feed for new version"); throw e; } - // Handle the processing of the new merged version (note: s3 upload is handled within this job. - ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); - addNextJob(processSingleFeedJob); } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/ValidateFeedJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/ValidateFeedJob.java index 25d5091fd..a48876acd 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/ValidateFeedJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/ValidateFeedJob.java @@ -4,6 +4,7 @@ import com.conveyal.datatools.common.utils.Scheduler; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.persistence.Persistence; +import com.conveyal.gtfs.validator.ValidationResult; import com.fasterxml.jackson.annotation.JsonProperty; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -73,4 +74,14 @@ public String getFeedSourceId () { return feedVersion.parentFeedSource().id; } + /** + * Getter that returns the validationResult so that once the job finishes, the client can optionally provide + * directions to users based on the success of the validation or other validation data (e.g., "The feed you have + * loaded is only valid for future dates."). + */ + @JsonProperty + public ValidationResult getValidationResult () { + return feedVersion.validationResult; + } + } From 3b14e94eff295f24b76f82fe94847779aff375be Mon Sep 17 00:00:00 2001 From: evansiroky Date: Fri, 15 Feb 2019 21:59:25 -0800 Subject: [PATCH 10/83] fix(users): pass through relevant auth0 failures to user API responses --- .../controllers/api/UserController.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java index b0757b360..5ede2b644 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java @@ -151,8 +151,6 @@ private static String createPublicUser(Request req, Response res) { /** * HTTP endpoint to create new Auth0 user for the application. - * - * FIXME: This endpoint fails if the user's email already exists in the Auth0 tenant. */ private static String createUser(Request req, Response res) { HttpPost request = new HttpPost(baseUsersUrl); @@ -174,6 +172,10 @@ private static String updateUser(Request req, Response res) { String userId = req.params("id"); Auth0UserProfile user = getUserById(userId); + if (user == null) { + logMessageAndHalt(req, 404, "User not found"); + } + LOG.info("Updating user {}", user.getEmail()); HttpPatch request = new HttpPatch(getUserIdUrl(req)); @@ -400,7 +402,21 @@ private static String executeRequestAndGetResult(HttpRequestBase httpRequest, Re httpRequest.toString(), result != null ? result : "" ); - logMessageAndHalt(req, statusCode, response.toString()); + // attempt to parse auth0 response to respond with an error message + String auth0Message = "An Auth0 error occurred"; + JsonNode jsonResponse = null; + try { + jsonResponse = mapper.readTree(result); + } catch (IOException e) { + LOG.warn("Could not parse json from auth0 error message. Body: {}", result != null ? result : ""); + e.printStackTrace(); + } + + if (jsonResponse != null && jsonResponse.has("message")) { + auth0Message = String.format("%s: %s", auth0Message, jsonResponse.get("message").asText()); + } + + logMessageAndHalt(req, statusCode, auth0Message); } LOG.info("Successfully made request: ({})", httpRequest.toString()); From 551a684c3656339d1f610ca74e9d6dcfe14e4841 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Fri, 15 Feb 2019 22:03:22 -0800 Subject: [PATCH 11/83] test(user): add CRUD tests for UserController --- configurations/default/env.yml.test | 18 ++ pom.xml | 44 ++-- .../manager/auth/Auth0Connection.java | 11 +- .../datatools/manager/auth/Auth0Users.java | 72 ++++-- .../controllers/api/UserController.java | 10 +- .../com/conveyal/datatools/DatatoolsTest.java | 6 +- .../com/conveyal/datatools/LoadFeedTest.java | 4 +- .../com/conveyal/datatools/TestUtils.java | 16 ++ .../api/AppInfoControllerTest.java | 8 +- .../controllers/api/UserControllerTest.java | 235 ++++++++++++++++++ .../manager/persistence/PersistenceTest.java | 8 +- .../__files/createExistingUserResponse.json | 6 + .../__files/createNewUserResponse.json | 24 ++ .../__files/getExistingUserResponse.json | 24 ++ .../__files/getFirstTenUsers.json | 66 +++++ .../__files/package-info.java | 7 + .../__files/updateExistingUserResponse.json | 26 ++ .../api/UserControllerTest/canCreateUser.json | 24 ++ .../api/UserControllerTest/canDeleteUser.json | 1 + .../canListFirstTenUsers.json | 66 +++++ .../canReturnMeaningfulAuth0Error.json | 6 + .../api/UserControllerTest/canUpdateUser.json | 26 ++ .../resources/snapshots/package-info.java | 7 + 23 files changed, 647 insertions(+), 68 deletions(-) create mode 100644 configurations/default/env.yml.test create mode 100644 src/test/java/com/conveyal/datatools/TestUtils.java create mode 100644 src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createExistingUserResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/package-info.java create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json create mode 100644 src/test/resources/snapshots/package-info.java diff --git a/configurations/default/env.yml.test b/configurations/default/env.yml.test new file mode 100644 index 000000000..1c9be292a --- /dev/null +++ b/configurations/default/env.yml.test @@ -0,0 +1,18 @@ +####### +### This is a file that is used during junit tests of this library +####### + +# This client id is used to simulate a successful validation of a user on secure endpoints. +AUTH0_CLIENT_ID: testing-client-id +# This domain is used so that http mocking of the Auth0 API is possible during testing +AUTH0_DOMAIN: localhost:8089 +AUTH0_TOKEN: test-token +DISABLE_AUTH: true +OSM_VEX: http://localhost:1000 +SPARKPOST_KEY: test-sparkpost-key +SPARKPOST_EMAIL: email@example.com +GTFS_DATABASE_URL: jdbc:postgresql://localhost/catalogue-test +# GTFS_DATABASE_USER: +# GTFS_DATABASE_PASSWORD: +#MONGO_URI: mongodb://mongo-host:27017 +MONGO_DB_NAME: catalogue-test diff --git a/pom.xml b/pom.xml index 18b06a86a..a4937a3b4 100644 --- a/pom.xml +++ b/pom.xml @@ -158,23 +158,6 @@ - - - maven-surefire-plugin - 2.22.0 - - - org.junit.platform - junit-platform-surefire-provider - 1.3.1 - - - org.junit.jupiter - junit-jupiter-engine - 5.3.1 - - - @@ -218,6 +201,11 @@ always + + + jitpack.io + https://jitpack.io + @@ -327,9 +315,9 @@ - org.junit.jupiter - junit-jupiter-api - 5.3.1 + junit + junit + 4.12 test @@ -359,8 +347,22 @@ org.hamcrest java-hamcrest 2.0.0.0 + test + + + + com.github.conveyal + java-snapshot-matcher + e6a78d3af9d67f6f6240261fcba497d3b50f9399 + test + + + + com.github.tomakehurst + wiremock-standalone + 2.14.0 + test - diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java index 560ddd458..32d03149a 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java @@ -33,6 +33,8 @@ public class Auth0Connection { public static final String SCOPE = "http://datatools"; public static final String SCOPED_APP_METADATA = String.join("/", SCOPE, APP_METADATA); public static final String SCOPED_USER_METADATA = String.join("/", SCOPE, USER_METADATA); + private static final boolean IN_TESTING_ENVIRONMENT = DataManager + .getConfigPropertyAsText("AUTH0_CLIENT_ID").equals("testing-client-id"); private static final ObjectMapper MAPPER = new ObjectMapper(); private static final Logger LOG = LoggerFactory.getLogger(Auth0Connection.class); private static JWTVerifier verifier; @@ -43,8 +45,9 @@ public class Auth0Connection { * @param req Spark request object */ public static void checkUser(Request req) { - if (authDisabled()) { - // If in a development environment, assign a mock profile to request attribute and skip authentication. + if (authDisabled() || IN_TESTING_ENVIRONMENT) { + // If in a development or testing environment, assign a mock profile to request attribute and skip + // authentication. req.attribute("user", new Auth0UserProfile("mock@example.com", "user_id:string")); return; } @@ -132,8 +135,8 @@ private static void remapTokenValues(Map jwt) { * tables in the database. */ public static void checkEditPrivileges(Request request) { - if (authDisabled()) { - // If in a development environment, skip privileges check. + if (authDisabled() || IN_TESTING_ENVIRONMENT) { + // If in a development or testing environment, skip privileges check. return; } Auth0UserProfile userProfile = request.attribute("user"); diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index 43f0ef54d..ad076a2d6 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -1,7 +1,6 @@ package com.conveyal.datatools.manager.auth; import com.conveyal.datatools.manager.DataManager; -import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.http.HttpResponse; @@ -16,7 +15,6 @@ import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; -import java.util.Collection; import java.util.HashSet; import java.util.Set; @@ -43,7 +41,8 @@ private static URI getUrl(String searchQuery, int page, int perPage, boolean inc // always filter users by datatools client_id String defaultQuery = "app_metadata.datatools.client_id:" + clientId; URIBuilder builder = new URIBuilder(); - builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users"); + setSchemePortAndHost(builder); + builder.setPath("/api/v2/users"); builder.setParameter("sort", "email:1"); builder.setParameter("per_page", Integer.toString(perPage)); builder.setParameter("page", Integer.toString(page)); @@ -84,20 +83,39 @@ private static String doRequest(URI uri) { request.setHeader("Accept-Charset", charset); HttpResponse response = null; + LOG.info("Making request: ({})", request.toString()); + try { response = client.execute(request); } catch (IOException e) { + LOG.error("An exception occurred while making a request to Auth0"); e.printStackTrace(); } String result = null; - try { - result = EntityUtils.toString(response.getEntity()); - } catch (IOException e) { - e.printStackTrace(); + if (response.getEntity() != null) { + try { + result = EntityUtils.toString(response.getEntity()); + } catch (IOException e) { + LOG.error("An exception occurred while making a request to Auth0"); + e.printStackTrace(); + } + } else { + LOG.warn("No response body available to parse from Auth0 request"); + } + + int statusCode = response.getStatusLine().getStatusCode(); + if(statusCode >= 300) { + LOG.warn( + "HTTP request to Auth0 returned error code >= 300: ({}). Body: {}", + request.toString(), + result != null ? result : "" + ); } + LOG.info("Successfully made request: ({})", request.toString()); + return result; } @@ -118,35 +136,18 @@ public static String getAuth0Users(String queryString) { return getAuth0Users(queryString, 0); } - /** - * Get all users for this application (using the default search). - */ - public static Collection getAll () { - Collection users = new HashSet<>(); - - // limited to the first 100 - URI uri = getUrl(null, 0, 100, false); - String response = doRequest(uri); - try { - users = mapper.readValue(response, new TypeReference>(){}); - } catch (IOException e) { - e.printStackTrace(); - } - return users; - } - /** * Get a single Auth0 user for the specified ID. */ public static Auth0UserProfile getUserById(String id) { - URIBuilder builder = new URIBuilder(); - builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users/" + id); + setSchemePortAndHost(builder); + builder.setPath("/api/v2/users/" + id); URI uri = null; try { uri = builder.build(); - } catch (URISyntaxException e) { + LOG.error("Unable to build URI to getUserById"); e.printStackTrace(); return null; } @@ -155,11 +156,28 @@ public static Auth0UserProfile getUserById(String id) { try { user = mapper.readValue(response, Auth0UserProfile.class); } catch (IOException e) { + LOG.error("Unable to parse user profile response from Auth0! Response: {}", response); e.printStackTrace(); } return user; } + /** + * Sets uri builder scheme port and host according to whether a test environment is in effect + */ + private static void setSchemePortAndHost(URIBuilder builder) { + if (AUTH0_DOMAIN.equals("localhost:8089")) { + // set items for testing purposes assuming use of a Wiremock server + builder.setScheme("http"); + builder.setPort(8089); + builder.setHost("localhost"); + } else { + // use live Auth0 domain + builder.setScheme("https"); + builder.setHost(AUTH0_DOMAIN); + } + } + /** * Get users subscribed to a given target ID. */ diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java index 5ede2b644..5ad245063 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java @@ -59,9 +59,13 @@ public class UserController { private static Logger LOG = LoggerFactory.getLogger(UserController.class); private static ObjectMapper mapper = new ObjectMapper(); private static final String charset = "UTF-8"; - private static String baseUsersUrl = "https://" + AUTH0_DOMAIN + "/api/v2/users"; - public static JsonManager json = - new JsonManager<>(Project.class, JsonViews.UserInterface.class); + // set the base users URL based on whether the domain is the test environment + private static String baseUsersUrl = ( + AUTH0_DOMAIN.equals("localhost:8089") + ? "http://localhost:8089" + : "https://" + AUTH0_DOMAIN + ) + "/api/v2/users"; + public static JsonManager json = new JsonManager<>(Project.class, JsonViews.UserInterface.class); /** * HTTP endpoint to get a single Auth0 user for the application (by specified ID param). Note, this uses a different diff --git a/src/test/java/com/conveyal/datatools/DatatoolsTest.java b/src/test/java/com/conveyal/datatools/DatatoolsTest.java index 51caf6afc..e223a7415 100644 --- a/src/test/java/com/conveyal/datatools/DatatoolsTest.java +++ b/src/test/java/com/conveyal/datatools/DatatoolsTest.java @@ -1,7 +1,7 @@ package com.conveyal.datatools; import com.conveyal.datatools.manager.DataManager; -import org.junit.jupiter.api.BeforeAll; +import org.junit.BeforeClass; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -14,13 +14,13 @@ public abstract class DatatoolsTest { private static final Logger LOG = LoggerFactory.getLogger(DatatoolsTest.class); private static boolean setUpIsDone = false; - @BeforeAll + @BeforeClass public static void setUp() { if (setUpIsDone) { return; } LOG.info("DatatoolsTest setup"); - String[] args = {"configurations/default/env.yml.tmp", "configurations/default/server.yml.tmp"}; + String[] args = {"configurations/default/env.yml.test", "configurations/default/server.yml.tmp"}; try { DataManager.main(args); setUpIsDone = true; diff --git a/src/test/java/com/conveyal/datatools/LoadFeedTest.java b/src/test/java/com/conveyal/datatools/LoadFeedTest.java index 60e28aaad..e3878088b 100644 --- a/src/test/java/com/conveyal/datatools/LoadFeedTest.java +++ b/src/test/java/com/conveyal/datatools/LoadFeedTest.java @@ -2,7 +2,7 @@ import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; -import org.junit.jupiter.api.BeforeAll; +import org.junit.BeforeClass; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -14,7 +14,7 @@ public abstract class LoadFeedTest { public static FeedSource source; public static FeedVersion version; - @BeforeAll + @BeforeClass public void setUp() { DatatoolsTest.setUp(); LOG.info("ProcessGtfsSnapshotMergeTest setup"); diff --git a/src/test/java/com/conveyal/datatools/TestUtils.java b/src/test/java/com/conveyal/datatools/TestUtils.java new file mode 100644 index 000000000..3ae664478 --- /dev/null +++ b/src/test/java/com/conveyal/datatools/TestUtils.java @@ -0,0 +1,16 @@ +package com.conveyal.datatools; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.IOException; + +public class TestUtils { + /** + * Parse a json string into an unmapped JsonNode object + */ + public static JsonNode parseJson(String jsonString) throws IOException { + ObjectMapper mapper = new ObjectMapper(); + return mapper.readTree(jsonString); + } +} diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java index 6e9231290..582369bfc 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java @@ -3,8 +3,8 @@ import com.conveyal.datatools.DatatoolsTest; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; +import org.junit.BeforeClass; +import org.junit.Test; import java.io.IOException; @@ -16,7 +16,7 @@ public class AppInfoControllerTest { /** * Prepare and start a testing-specific web server */ - @BeforeAll + @BeforeClass public static void setUp() { // start server if it isn't already running DatatoolsTest.setUp(); @@ -26,7 +26,7 @@ public static void setUp() { * Make sure the app info endpoint can load and return expected data. */ @Test - public void canReturnApprInfo() throws IOException { + public void canReturnAppInfo() throws IOException { String jsonString = given() .port(4000) .get("/api/manager/public/appinfo") diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java new file mode 100644 index 000000000..a2aa0adf8 --- /dev/null +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -0,0 +1,235 @@ +package com.conveyal.datatools.manager.controllers.api; + +import com.conveyal.datatools.DatatoolsTest; +import com.fasterxml.jackson.databind.JsonNode; +import com.github.tomakehurst.wiremock.junit.WireMockRule; +import org.junit.BeforeClass; +import org.junit.Rule; +import org.junit.Test; + +import java.io.IOException; + +import static com.conveyal.datatools.TestUtils.parseJson; +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.delete; +import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.matchingJsonPath; +import static com.github.tomakehurst.wiremock.client.WireMock.patch; +import static com.github.tomakehurst.wiremock.client.WireMock.post; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; +import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options; +import static com.zenika.snapshotmatcher.SnapshotMatcher.matchesSnapshot; +import static io.restassured.RestAssured.given; +import static org.hamcrest.MatcherAssert.assertThat; + +/** + * These tests verify the + */ +public class UserControllerTest { + /** + * This sets up a mock server that accepts requests and sends predefined responses to mock an Auth0 server. + */ + @Rule + public WireMockRule wireMockRule = new WireMockRule( + options() + .port(8089) + .usingFilesUnderDirectory("src/test/resources/com/conveyal/datatools/auth0-mock-responses/") + ); + + /** + * Prepare and start a testing-specific web server + */ + @BeforeClass + public static void setUp() { + // start server if it isn't already running + DatatoolsTest.setUp(); + } + + /** + * Make sure the user endpoint can return a list of users + */ + @Test + public void canListFirstTenUsers() throws IOException { + // create wiremock stub for get users endpoint + stubFor( + get(urlPathEqualTo("/api/v2/users")) + .withQueryParam("page", equalTo("1")) + .willReturn( + aResponse() + .withBodyFile("getFirstTenUsers.json") + ) + ); + + + // make request and parse the json response + JsonNode userResponse = parseJson( + given() + .port(4000) + .get("/api/manager/secure/user?page=1") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(userResponse, matchesSnapshot()); + } + + /** + * Make sure a user can be created + */ + @Test + public void canCreateUser() throws IOException { + // create wiremock stub for create users endpoint + stubFor( + post(urlPathEqualTo("/api/v2/users")) + .withRequestBody(matchingJsonPath("$.email", equalTo("test-new-user@test.com"))) + .willReturn( + aResponse() + .withBodyFile("createNewUserResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode createUserResponse = parseJson( + given() + .port(4000) + .body("{\n" + + " \"email\" : \"test-new-user@test.com\",\n" + + " \"password\" : \"password\",\n" + + " \"permissions\" : {}\n" + + "}") + .post("/api/manager/secure/user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(createUserResponse, matchesSnapshot()); + } + + /** + * Make sure a meaningful Auth0 error can be returned when a duplicate user is being created + */ + @Test + public void canReturnMeaningfulAuth0Error() throws IOException { + // create wiremock stub for create users endpoint that responds with a message saying a user with the email + // already exists + stubFor( + post(urlPathEqualTo("/api/v2/users")) + .withRequestBody(matchingJsonPath("$.email", equalTo("test-existing-user@test.com"))) + .willReturn( + aResponse() + .withStatus(409) + .withBodyFile("createExistingUserResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode createUserResponse = parseJson( + given() + .port(4000) + .body("{\n" + + " \"email\" : \"test-existing-user@test.com\",\n" + + " \"password\" : \"password\",\n" + + " \"permissions\" : {}\n" + + "}") + .post("/api/manager/secure/user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(createUserResponse, matchesSnapshot()); + } + + /** + * Make sure a user can be updated + */ + @Test + public void canUpdateUser() throws IOException { + // create wiremock stub for update users endpoint + stubFor( + patch(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .withRequestBody( + matchingJsonPath( + "$.app_metadata.datatools[0].permissions[0].type", + equalTo("administer-application") + ) + ) + .willReturn( + aResponse() + .withBodyFile("updateExistingUserResponse.json") + ) + ); + + // create wiremock stub for get user by id endpoint + stubFor( + get(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .willReturn( + aResponse() + .withBodyFile("getExistingUserResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode createUserResponse = parseJson( + given() + .port(4000) + .body("{" + + "\"user_id\": \"auth0|test-existing-user\"" + + ",\"data\": [{" + + "\"permissions\": [{\"type\": \"administer-application\"}]," + + "\"projects\": []," + + "\"organizations\": []," + + "\"client_id\":\"testing-client-id\"" + + "}]" + + "}") + .put("/api/manager/secure/user/auth0|test-existing-user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(createUserResponse, matchesSnapshot()); + } + + /** + * Make sure a user can be deleted + */ + @Test + public void canDeleteUser() throws IOException { + // create wiremock stub for the delate users endpoint + stubFor( + delete(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .willReturn(aResponse()) + ); + + + // make request and parse the json response + JsonNode deleteUserResponse = parseJson( + given() + .port(4000) + .delete("/api/manager/secure/user/auth0|test-existing-user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(deleteUserResponse, matchesSnapshot()); + } +} diff --git a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java index 7eb62c77d..0456feb6e 100644 --- a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java +++ b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java @@ -3,12 +3,12 @@ import com.conveyal.datatools.DatatoolsTest; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.Project; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; +import org.junit.BeforeClass; +import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; /** * Created by landon on 9/6/17. @@ -16,7 +16,7 @@ public class PersistenceTest { private static final Logger LOG = LoggerFactory.getLogger(PersistenceTest.class); - @BeforeAll + @BeforeClass public static void setUp() { DatatoolsTest.setUp(); LOG.info("{} setup", PersistenceTest.class.getSimpleName()); diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createExistingUserResponse.json new file mode 100644 index 000000000..f1beb7703 --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createExistingUserResponse.json @@ -0,0 +1,6 @@ +{ + "statusCode": 409, + "error": "Conflict", + "message": "The user already exists.", + "errorCode": "auth0_idp_error" +} \ No newline at end of file diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json new file mode 100644 index 000000000..6cf399343 --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json @@ -0,0 +1,24 @@ +{ + "email": "test-new-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-new-user", + "name": "test-new-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-new-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-new-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json new file mode 100644 index 000000000..fdf863e3b --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json @@ -0,0 +1,24 @@ +{ + "email": "test-existing-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-existing-user", + "name": "test-existing-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-existing-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-existing-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json new file mode 100644 index 000000000..f16ec1b83 --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json @@ -0,0 +1,66 @@ +[{ + "email": "test1@test.com", + "email_verified": true, + "user_id": "auth0|test1", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test1", + "identities": [{ + "user_id": "test1", + "provider": "auth0", + "connection": "Username-Password-Authentication", + "isSocial": false + }], + "updated_at": "2017-07-12T19:16:11.699Z", + "created_at": "2017-06-22T19:19:41.404Z", + "last_password_reset": "2017-07-12T19:08:52.507Z", + "name": "test1", + "last_login": "2017-07-12T19:09:28.400Z", + "last_ip": "1.1.1.1", + "logins_count": 1, + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [{ + "project_id": "test-project-id", + "permissions": [{ + "type": "view-feed", + "feeds": ["*"] + }], + "defaultFeeds": [] + }], + "organizations": [], + "client_id": "your-auth0-client-id", + "subscriptions": [{ + "type": "feed-updated", + "target": ["test-feed-id"] + }] + }] + } +}, { + "email": "test2@test.com", + "email_verified": true, + "updated_at": "2019-02-10T18:24:03.719Z", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "user_id": "auth0|test2", + "nickname": "test2", + "identities": [{ + "user_id": "test2", + "provider": "auth0", + "connection": "Username-Password-Authentication", + "isSocial": false + }], + "created_at": "2018-12-27T16:46:32.864Z", + "name": "test2", + "last_login": "2019-02-10T18:24:03.719Z", + "last_ip": "1.1.1.1", + "logins_count": 49, + "app_metadata": { + "datatools": [{ + "permissions": [{ + "type": "administer-application" + }], + "projects": [], + "client_id": "your-auth0-client-id" + }] + } +}] diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/package-info.java b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/package-info.java new file mode 100644 index 000000000..5404ae3cd --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/package-info.java @@ -0,0 +1,7 @@ +/** + * All of the files in this directory (aside from this one) are mock responses used by a Wiremock server. The Wiremock + * server is used to emulate a 3rd party API (in this case Auth0) and it makes things less cluttered to store the json + * files in here instead of in the test class code. + */ + +package com.conveyal.datatools.auth0-mock-respones.__files; diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json new file mode 100644 index 000000000..5aa89171b --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json @@ -0,0 +1,26 @@ +{ + "email": "test-existing-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-existing-user", + "name": "test-existing-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-existing-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-existing-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [{ + "type": "administer-application" + }], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json new file mode 100644 index 000000000..2c1f8cb12 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json @@ -0,0 +1,24 @@ +{ + "email" : "test-new-user@test.com", + "email_verified" : false, + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-new-user", + "name" : "test-new-user@test.com", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test-new-user", + "identities" : [ { + "connection" : "Username-Password-Authentication", + "user_id" : "test-new-user", + "provider" : "auth0", + "isSocial" : false + } ], + "created_at" : "2019-02-16T01:27:19.810Z", + "app_metadata" : { + "datatools" : [ { + "permissions" : [ ], + "projects" : [ ], + "organizations" : [ ], + "client_id" : "testing-client-id" + } ] + } +} \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json new file mode 100644 index 000000000..f32a5804e --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json @@ -0,0 +1 @@ +true \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json new file mode 100644 index 000000000..a8f90cea5 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json @@ -0,0 +1,66 @@ +[ { + "email" : "test1@test.com", + "email_verified" : true, + "user_id" : "auth0|test1", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test1", + "identities" : [ { + "user_id" : "test1", + "provider" : "auth0", + "connection" : "Username-Password-Authentication", + "isSocial" : false + } ], + "updated_at" : "2017-07-12T19:16:11.699Z", + "created_at" : "2017-06-22T19:19:41.404Z", + "last_password_reset" : "2017-07-12T19:08:52.507Z", + "name" : "test1", + "last_login" : "2017-07-12T19:09:28.400Z", + "last_ip" : "1.1.1.1", + "logins_count" : 1, + "app_metadata" : { + "datatools" : [ { + "permissions" : [ ], + "projects" : [ { + "project_id" : "test-project-id", + "permissions" : [ { + "type" : "view-feed", + "feeds" : [ "*" ] + } ], + "defaultFeeds" : [ ] + } ], + "organizations" : [ ], + "client_id" : "your-auth0-client-id", + "subscriptions" : [ { + "type" : "feed-updated", + "target" : [ "test-feed-id" ] + } ] + } ] + } +}, { + "email" : "test2@test.com", + "email_verified" : true, + "updated_at" : "2019-02-10T18:24:03.719Z", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "user_id" : "auth0|test2", + "nickname" : "test2", + "identities" : [ { + "user_id" : "test2", + "provider" : "auth0", + "connection" : "Username-Password-Authentication", + "isSocial" : false + } ], + "created_at" : "2018-12-27T16:46:32.864Z", + "name" : "test2", + "last_login" : "2019-02-10T18:24:03.719Z", + "last_ip" : "1.1.1.1", + "logins_count" : 49, + "app_metadata" : { + "datatools" : [ { + "permissions" : [ { + "type" : "administer-application" + } ], + "projects" : [ ], + "client_id" : "your-auth0-client-id" + } ] + } +} ] \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json new file mode 100644 index 000000000..8bbc1a81e --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json @@ -0,0 +1,6 @@ +{ + "result" : "ERR", + "message" : "An Auth0 error occurred: The user already exists.", + "code" : 409, + "detail" : null +} \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json new file mode 100644 index 000000000..e635e58f0 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json @@ -0,0 +1,26 @@ +{ + "email" : "test-existing-user@test.com", + "email_verified" : false, + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-existing-user", + "name" : "test-existing-user@test.com", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test-existing-user", + "identities" : [ { + "connection" : "Username-Password-Authentication", + "user_id" : "test-existing-user", + "provider" : "auth0", + "isSocial" : false + } ], + "created_at" : "2019-02-16T01:27:19.810Z", + "app_metadata" : { + "datatools" : [ { + "permissions" : [ { + "type" : "administer-application" + } ], + "projects" : [ ], + "organizations" : [ ], + "client_id" : "testing-client-id" + } ] + } +} \ No newline at end of file diff --git a/src/test/resources/snapshots/package-info.java b/src/test/resources/snapshots/package-info.java new file mode 100644 index 000000000..c3dc9dc3a --- /dev/null +++ b/src/test/resources/snapshots/package-info.java @@ -0,0 +1,7 @@ +/** + * All of the files in the folders within here are snapshot files used to perform assertions on data responses. Each + * file is initially auto-generated, but manually verified for correctness. The snapshot library used is a Conveyal + * fork of an open-source java snapshotting library: https://github.com/conveyal/java-snapshot-matcher. + */ + +package com.conveyal.datatools.snapshots; \ No newline at end of file From e174aa39fabe4bc1bf4c1a644a7b7c1551e9309d Mon Sep 17 00:00:00 2001 From: evansiroky Date: Fri, 15 Feb 2019 22:20:21 -0800 Subject: [PATCH 12/83] refactor(test): change argument order for junit v4 compatibility --- .../datatools/manager/persistence/PersistenceTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java index 0456feb6e..846fe77bb 100644 --- a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java +++ b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java @@ -30,7 +30,7 @@ public void createFeedSource() { String id = feedSource.id; Persistence.feedSources.create(feedSource); String retrievedId = Persistence.feedSources.getById(id).id; - assertEquals(retrievedId, id, "Found FeedSource ID should equal inserted ID."); + assertEquals("Found FeedSource ID should equal inserted ID.", retrievedId, id); } // @Test @@ -59,7 +59,7 @@ public void createProject() { String id = project.id; Persistence.projects.create(project); String retrievedId = Persistence.projects.getById(id).id; - assertEquals(retrievedId, id, "Found Project ID should equal inserted ID."); + assertEquals("Found Project ID should equal inserted ID.", retrievedId, id); } // // @Test From c4109c48a2c5deac9d2eda9a974ee3add0075683 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 18 Feb 2019 17:13:46 -0500 Subject: [PATCH 13/83] refactor: address PR comments --- .../api/FeedVersionController.java | 8 ++-- .../controllers/api/ProjectController.java | 4 +- .../datatools/manager/jobs/MergeFeedsJob.java | 37 ++++++++++--------- 3 files changed, 26 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index b53dcd888..e6edde333 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -36,7 +36,6 @@ import static com.conveyal.datatools.common.utils.SparkUtils.formatJobMessage; import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.controllers.api.FeedSourceController.checkFeedSourcePermissions; -import static com.conveyal.datatools.manager.jobs.MergeFeedsType.MTC; import static com.conveyal.datatools.manager.jobs.MergeFeedsType.REGIONAL; import static spark.Spark.delete; import static spark.Spark.get; @@ -273,7 +272,7 @@ private static FeedVersion publishToExternalResource (Request req, Response res) /** * HTTP controller that handles merging multiple feed versions for a given feed source, with version IDs specified * in a comma-separated string in the feedVersionIds query parameter and merge type specified in mergeType query - * parameter. NOTE: REGIONAL merge type should only be handled through {@link ProjectController#downloadMergedFeed(Request, Response)}. + * parameter. NOTE: REGIONAL merge type should only be handled through {@link ProjectController#mergeProjectFeeds(Request, Response)}. */ private static String mergeFeedVersions(Request req, Response res) { String[] versionIds = req.queryParams("feedVersionIds").split(","); @@ -292,7 +291,10 @@ private static String mergeFeedVersions(Request req, Response res) { for (String id : versionIds) { FeedVersion v = Persistence.feedVersions.getById(id); if (v == null) { - logMessageAndHalt(req, 400, "Must provide valid version ID"); + logMessageAndHalt(req, + 400, + String.format("Must provide valid version ID. (No version exists for id=%s.)", id) + ); } // Store feed source id and check other versions for matching. if (feedSourceId == null) feedSourceId = v.feedSourceId; diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java index dcafea22d..cc4db1c1c 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/ProjectController.java @@ -220,7 +220,7 @@ private static Project checkProjectPermissions(Request req, Project project, Str * to getFeedDownloadCredentials with the project ID to obtain either temporary S3 credentials or a download token * (depending on application configuration "application.data.use_s3_storage") to download the zip file. */ - static String downloadMergedFeed(Request req, Response res) { + static String mergeProjectFeeds(Request req, Response res) { Project project = requestProjectById(req, "view"); Auth0UserProfile userProfile = req.attribute("user"); // TODO: make this an authenticated call? @@ -328,7 +328,7 @@ public static void register (String apiPrefix) { post(apiPrefix + "secure/project/:id/fetch", ProjectController::fetch, json::write); post(apiPrefix + "secure/project/:id/deployPublic", ProjectController::publishPublicFeeds, json::write); - get(apiPrefix + "secure/project/:id/download", ProjectController::downloadMergedFeed); + get(apiPrefix + "secure/project/:id/download", ProjectController::mergeProjectFeeds); get(apiPrefix + "secure/project/:id/downloadtoken", ProjectController::getFeedDownloadCredentials, json::write); get(apiPrefix + "public/project/:id", ProjectController::getProject, json::write); diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 700a5f797..ffbbadb3d 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -9,7 +9,6 @@ import com.conveyal.gtfs.error.NewGTFSError; import com.conveyal.gtfs.error.NewGTFSErrorType; import com.conveyal.gtfs.loader.Field; -import com.conveyal.gtfs.loader.JdbcGtfsLoader; import com.conveyal.gtfs.loader.ReferenceTracker; import com.conveyal.gtfs.loader.Table; import com.csvreader.CsvReader; @@ -41,8 +40,7 @@ import static com.conveyal.datatools.manager.jobs.MergeFeedsType.REGIONAL; import static com.conveyal.datatools.manager.utils.StringUtils.getCleanName; import static com.conveyal.gtfs.loader.DateField.GTFS_DATE_FORMATTER; -import static com.conveyal.gtfs.loader.JdbcGtfsLoader.getFieldIndex; -import static com.conveyal.gtfs.loader.JdbcGtfsLoader.getKeyFieldIndex; +import static com.conveyal.gtfs.loader.Field.getFieldIndex; /** * This job handles merging two or more feed versions according to logic specific to the specified merge type. @@ -259,29 +257,32 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) boolean stopCodeMissingFromFirstTable = false; try { // Iterate over each zip file. - for (int f = 0; f < feedsToMerge.size(); f++) { + for (int feedIndex = 0; feedIndex < feedsToMerge.size(); feedIndex++) { mergeFeedsResult.feedCount++; // FIXME add check for merge type. - if (f > 0 && (table.name.equals("agency") || table.name.equals("feed_info")) && mergeType.equals(MTC)) { + if (feedIndex > 0 && (table.name.equals("agency") || table.name.equals("feed_info")) && mergeType.equals(MTC)) { // Always prefer future file for agency and feed_info tables, which means that we can skip // iterations following the first one. // FIXME: This could cause issues with routes or fares that reference an agency_id that no longer // exists. - LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, f, feedsToMerge.size()); + LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, feedIndex, feedsToMerge.size()); continue; } - FeedToMerge feed = feedsToMerge.get(f); + FeedToMerge feed = feedsToMerge.get(feedIndex); FeedVersion version = feed.version; FeedSource feedSource = version.parentFeedSource(); // Generate ID prefix to scope GTFS identifiers to avoid conflicts. String idScope = getCleanName(feedSource.name) + version.version; - CsvReader csvReader = JdbcGtfsLoader.getCsvReader(feed.zipFile, table, null); + CsvReader csvReader = table.getCsvReader(feed.zipFile, null); // If csv reader is null, the table was not found in the zip file. There is no need to handle merging // this table for the current zip file. - if (csvReader == null) continue; + if (csvReader == null) { + LOG.warn("Table {} not found in the zip file for {}{}", table.name, feedSource.name, version.version); + continue; + } LOG.info("Adding {} table for {}{}", table.name, feedSource.name, version.version); - Field[] fieldsFoundInZip = JdbcGtfsLoader.getFieldsFromFieldHeaders(csvReader.getHeaders(), table, null); + Field[] fieldsFoundInZip = table.getFieldsFromFieldHeaders(csvReader.getHeaders(), null); List fieldsFoundList = Arrays.asList(fieldsFoundInZip); // Determine the index of the key field for this version's table. int keyFieldIndex = getFieldIndex(fieldsFoundInZip, keyField); @@ -293,13 +294,13 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) if (mergeType.equals(MTC) && lineNumber == 0 && table.name.equals("stops")) { // For the first line of the stops table, check that the alt. key // field (stop_code) is present. If it is not, revert to the original key field. - if (f == 0) { + if (feedIndex == 0) { // Check that the first file contains stop_code values. if ("".equals(keyValue)) { - LOG.warn("stop_code is not present in file {}/{}. Reverting to stop_id", f, feedsToMerge.size()); + LOG.warn("stop_code is not present in file {}/{}. Reverting to stop_id", feedIndex, feedsToMerge.size()); // If the key value for stop_code is not present, revert to stop_id. keyField = table.getKeyFieldName(); - keyFieldIndex = JdbcGtfsLoader.getKeyFieldIndex(table, fieldsFoundInZip); + keyFieldIndex = table.getKeyFieldIndex(fieldsFoundInZip); keyValue = csvReader.get(keyFieldIndex); stopCodeMissingFromFirstTable = true; } @@ -326,8 +327,8 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) } // Piece together the row to write, which should look practically identical to the original // row except for the identifiers receiving a prefix to avoid ID conflicts. - for (int v = 0; v < specFields.size(); v++) { - Field field = specFields.get(v); + for (int specFieldIndex = 0; specFieldIndex < specFields.size(); specFieldIndex++) { + Field field = specFields.get(specFieldIndex); // Get index of field from GTFS spec as it appears in feed int index = fieldsFoundList.indexOf(field); String val = csvReader.get(index); @@ -356,7 +357,7 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) // future, the service will be excluded from the merged file. Records in trips, // calendar_dates, and calendar_attributes referencing this service_id shall also be // removed/ignored. Stop_time records for the ignored trips shall also be removed. - if (f > 0) { + if (feedIndex > 0) { int startDateIndex = getFieldIndex(fieldsFoundInZip, "start_date"); LocalDate startDate = LocalDate.parse(csvReader.get(startDateIndex), GTFS_DATE_FORMATTER); if (startDate.isAfter(LocalDate.now())) { @@ -400,7 +401,7 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) // the user with suggestion that the feed with missing stop_code must be fixed with // stop_code. case "routes": - String primaryKeyValue = csvReader.get(getKeyFieldIndex(table, fieldsFoundInZip)); + String primaryKeyValue = csvReader.get(table.getKeyFieldIndex(fieldsFoundInZip)); Set primaryKeyErrors = table.checkReferencesAndUniqueness(primaryKeyValue, lineNumber, field, val, referenceTracker); // Merging will be based on route_short_name in the current and future datasets. All // matching route_short_names between the datasets shall be considered same route. Any @@ -499,7 +500,7 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) valueToWrite = String.join(":", idScope, val); } - rowValues[v] = valueToWrite; + rowValues[specFieldIndex] = valueToWrite; } if (table.name.equals("routes") && rowValues[0].contains("BART")) { LOG.info("Route record: {}", rowValues[0]); From f84dd4c98467d64672fe948092d63aa666ed940a Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Tue, 19 Feb 2019 14:28:56 -0500 Subject: [PATCH 14/83] build(pom): update gtfs-lib to snapshot version for testing --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index edcf5377b..c67e40760 100644 --- a/pom.xml +++ b/pom.xml @@ -259,7 +259,7 @@ com.conveyal gtfs-lib - 4.2.4 + 4.2.6-SNAPSHOT From 114fc65bff989920856f674749576d201f40cdba Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 21 Feb 2019 09:50:02 -0800 Subject: [PATCH 15/83] refactor: isolate Auth0 error handling changes --- .../datatools/manager/auth/Auth0Users.java | 72 +++----- .../controllers/api/UserControllerTest.java | 154 +----------------- .../__files/createNewUserResponse.json | 24 --- .../__files/getExistingUserResponse.json | 24 --- .../__files/getFirstTenUsers.json | 66 -------- .../__files/updateExistingUserResponse.json | 26 --- .../api/UserControllerTest/canCreateUser.json | 24 --- .../api/UserControllerTest/canDeleteUser.json | 1 - .../canListFirstTenUsers.json | 66 -------- .../api/UserControllerTest/canUpdateUser.json | 26 --- 10 files changed, 29 insertions(+), 454 deletions(-) delete mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json delete mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json delete mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json delete mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json delete mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json delete mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json delete mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json delete mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index ad076a2d6..43f0ef54d 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -1,6 +1,7 @@ package com.conveyal.datatools.manager.auth; import com.conveyal.datatools.manager.DataManager; +import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.http.HttpResponse; @@ -15,6 +16,7 @@ import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; +import java.util.Collection; import java.util.HashSet; import java.util.Set; @@ -41,8 +43,7 @@ private static URI getUrl(String searchQuery, int page, int perPage, boolean inc // always filter users by datatools client_id String defaultQuery = "app_metadata.datatools.client_id:" + clientId; URIBuilder builder = new URIBuilder(); - setSchemePortAndHost(builder); - builder.setPath("/api/v2/users"); + builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users"); builder.setParameter("sort", "email:1"); builder.setParameter("per_page", Integer.toString(perPage)); builder.setParameter("page", Integer.toString(page)); @@ -83,39 +84,20 @@ private static String doRequest(URI uri) { request.setHeader("Accept-Charset", charset); HttpResponse response = null; - LOG.info("Making request: ({})", request.toString()); - try { response = client.execute(request); } catch (IOException e) { - LOG.error("An exception occurred while making a request to Auth0"); e.printStackTrace(); } String result = null; - if (response.getEntity() != null) { - try { - result = EntityUtils.toString(response.getEntity()); - } catch (IOException e) { - LOG.error("An exception occurred while making a request to Auth0"); - e.printStackTrace(); - } - } else { - LOG.warn("No response body available to parse from Auth0 request"); - } - - int statusCode = response.getStatusLine().getStatusCode(); - if(statusCode >= 300) { - LOG.warn( - "HTTP request to Auth0 returned error code >= 300: ({}). Body: {}", - request.toString(), - result != null ? result : "" - ); + try { + result = EntityUtils.toString(response.getEntity()); + } catch (IOException e) { + e.printStackTrace(); } - LOG.info("Successfully made request: ({})", request.toString()); - return result; } @@ -136,18 +118,35 @@ public static String getAuth0Users(String queryString) { return getAuth0Users(queryString, 0); } + /** + * Get all users for this application (using the default search). + */ + public static Collection getAll () { + Collection users = new HashSet<>(); + + // limited to the first 100 + URI uri = getUrl(null, 0, 100, false); + String response = doRequest(uri); + try { + users = mapper.readValue(response, new TypeReference>(){}); + } catch (IOException e) { + e.printStackTrace(); + } + return users; + } + /** * Get a single Auth0 user for the specified ID. */ public static Auth0UserProfile getUserById(String id) { + URIBuilder builder = new URIBuilder(); - setSchemePortAndHost(builder); - builder.setPath("/api/v2/users/" + id); + builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users/" + id); URI uri = null; try { uri = builder.build(); + } catch (URISyntaxException e) { - LOG.error("Unable to build URI to getUserById"); e.printStackTrace(); return null; } @@ -156,28 +155,11 @@ public static Auth0UserProfile getUserById(String id) { try { user = mapper.readValue(response, Auth0UserProfile.class); } catch (IOException e) { - LOG.error("Unable to parse user profile response from Auth0! Response: {}", response); e.printStackTrace(); } return user; } - /** - * Sets uri builder scheme port and host according to whether a test environment is in effect - */ - private static void setSchemePortAndHost(URIBuilder builder) { - if (AUTH0_DOMAIN.equals("localhost:8089")) { - // set items for testing purposes assuming use of a Wiremock server - builder.setScheme("http"); - builder.setPort(8089); - builder.setHost("localhost"); - } else { - // use live Auth0 domain - builder.setScheme("https"); - builder.setHost(AUTH0_DOMAIN); - } - } - /** * Get users subscribed to a given target ID. */ diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java index a2aa0adf8..9423e675e 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -11,11 +11,8 @@ import static com.conveyal.datatools.TestUtils.parseJson; import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; -import static com.github.tomakehurst.wiremock.client.WireMock.delete; import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; -import static com.github.tomakehurst.wiremock.client.WireMock.get; import static com.github.tomakehurst.wiremock.client.WireMock.matchingJsonPath; -import static com.github.tomakehurst.wiremock.client.WireMock.patch; import static com.github.tomakehurst.wiremock.client.WireMock.post; import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; @@ -25,7 +22,8 @@ import static org.hamcrest.MatcherAssert.assertThat; /** - * These tests verify the + * These tests verify that various Auth0 API calls behave as expected. The Auth0 server is mocked in order to return + * certain responses needed to verify functionality. */ public class UserControllerTest { /** @@ -47,73 +45,6 @@ public static void setUp() { DatatoolsTest.setUp(); } - /** - * Make sure the user endpoint can return a list of users - */ - @Test - public void canListFirstTenUsers() throws IOException { - // create wiremock stub for get users endpoint - stubFor( - get(urlPathEqualTo("/api/v2/users")) - .withQueryParam("page", equalTo("1")) - .willReturn( - aResponse() - .withBodyFile("getFirstTenUsers.json") - ) - ); - - - // make request and parse the json response - JsonNode userResponse = parseJson( - given() - .port(4000) - .get("/api/manager/secure/user?page=1") - .then() - .extract() - .response() - .asString() - ); - - // make sure the response matches the saved snapshot - assertThat(userResponse, matchesSnapshot()); - } - - /** - * Make sure a user can be created - */ - @Test - public void canCreateUser() throws IOException { - // create wiremock stub for create users endpoint - stubFor( - post(urlPathEqualTo("/api/v2/users")) - .withRequestBody(matchingJsonPath("$.email", equalTo("test-new-user@test.com"))) - .willReturn( - aResponse() - .withBodyFile("createNewUserResponse.json") - ) - ); - - - // make request and parse the json response - JsonNode createUserResponse = parseJson( - given() - .port(4000) - .body("{\n" + - " \"email\" : \"test-new-user@test.com\",\n" + - " \"password\" : \"password\",\n" + - " \"permissions\" : {}\n" + - "}") - .post("/api/manager/secure/user") - .then() - .extract() - .response() - .asString() - ); - - // make sure the response matches the saved snapshot - assertThat(createUserResponse, matchesSnapshot()); - } - /** * Make sure a meaningful Auth0 error can be returned when a duplicate user is being created */ @@ -151,85 +82,4 @@ public void canReturnMeaningfulAuth0Error() throws IOException { // make sure the response matches the saved snapshot assertThat(createUserResponse, matchesSnapshot()); } - - /** - * Make sure a user can be updated - */ - @Test - public void canUpdateUser() throws IOException { - // create wiremock stub for update users endpoint - stubFor( - patch(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) - .withRequestBody( - matchingJsonPath( - "$.app_metadata.datatools[0].permissions[0].type", - equalTo("administer-application") - ) - ) - .willReturn( - aResponse() - .withBodyFile("updateExistingUserResponse.json") - ) - ); - - // create wiremock stub for get user by id endpoint - stubFor( - get(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) - .willReturn( - aResponse() - .withBodyFile("getExistingUserResponse.json") - ) - ); - - - // make request and parse the json response - JsonNode createUserResponse = parseJson( - given() - .port(4000) - .body("{" + - "\"user_id\": \"auth0|test-existing-user\"" + - ",\"data\": [{" + - "\"permissions\": [{\"type\": \"administer-application\"}]," + - "\"projects\": []," + - "\"organizations\": []," + - "\"client_id\":\"testing-client-id\"" + - "}]" + - "}") - .put("/api/manager/secure/user/auth0|test-existing-user") - .then() - .extract() - .response() - .asString() - ); - - // make sure the response matches the saved snapshot - assertThat(createUserResponse, matchesSnapshot()); - } - - /** - * Make sure a user can be deleted - */ - @Test - public void canDeleteUser() throws IOException { - // create wiremock stub for the delate users endpoint - stubFor( - delete(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) - .willReturn(aResponse()) - ); - - - // make request and parse the json response - JsonNode deleteUserResponse = parseJson( - given() - .port(4000) - .delete("/api/manager/secure/user/auth0|test-existing-user") - .then() - .extract() - .response() - .asString() - ); - - // make sure the response matches the saved snapshot - assertThat(deleteUserResponse, matchesSnapshot()); - } } diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json deleted file mode 100644 index 6cf399343..000000000 --- a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "email": "test-new-user@test.com", - "email_verified": false, - "updated_at": "2019-02-16T01:27:19.810Z", - "user_id": "auth0|test-new-user", - "name": "test-new-user@test.com", - "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname": "test-new-user", - "identities": [{ - "connection": "Username-Password-Authentication", - "user_id": "test-new-user", - "provider": "auth0", - "isSocial": false - }], - "created_at": "2019-02-16T01:27:19.810Z", - "app_metadata": { - "datatools": [{ - "permissions": [], - "projects": [], - "organizations": [], - "client_id": "testing-client-id" - }] - } -} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json deleted file mode 100644 index fdf863e3b..000000000 --- a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "email": "test-existing-user@test.com", - "email_verified": false, - "updated_at": "2019-02-16T01:27:19.810Z", - "user_id": "auth0|test-existing-user", - "name": "test-existing-user@test.com", - "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname": "test-existing-user", - "identities": [{ - "connection": "Username-Password-Authentication", - "user_id": "test-existing-user", - "provider": "auth0", - "isSocial": false - }], - "created_at": "2019-02-16T01:27:19.810Z", - "app_metadata": { - "datatools": [{ - "permissions": [], - "projects": [], - "organizations": [], - "client_id": "testing-client-id" - }] - } -} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json deleted file mode 100644 index f16ec1b83..000000000 --- a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsers.json +++ /dev/null @@ -1,66 +0,0 @@ -[{ - "email": "test1@test.com", - "email_verified": true, - "user_id": "auth0|test1", - "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname": "test1", - "identities": [{ - "user_id": "test1", - "provider": "auth0", - "connection": "Username-Password-Authentication", - "isSocial": false - }], - "updated_at": "2017-07-12T19:16:11.699Z", - "created_at": "2017-06-22T19:19:41.404Z", - "last_password_reset": "2017-07-12T19:08:52.507Z", - "name": "test1", - "last_login": "2017-07-12T19:09:28.400Z", - "last_ip": "1.1.1.1", - "logins_count": 1, - "app_metadata": { - "datatools": [{ - "permissions": [], - "projects": [{ - "project_id": "test-project-id", - "permissions": [{ - "type": "view-feed", - "feeds": ["*"] - }], - "defaultFeeds": [] - }], - "organizations": [], - "client_id": "your-auth0-client-id", - "subscriptions": [{ - "type": "feed-updated", - "target": ["test-feed-id"] - }] - }] - } -}, { - "email": "test2@test.com", - "email_verified": true, - "updated_at": "2019-02-10T18:24:03.719Z", - "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "user_id": "auth0|test2", - "nickname": "test2", - "identities": [{ - "user_id": "test2", - "provider": "auth0", - "connection": "Username-Password-Authentication", - "isSocial": false - }], - "created_at": "2018-12-27T16:46:32.864Z", - "name": "test2", - "last_login": "2019-02-10T18:24:03.719Z", - "last_ip": "1.1.1.1", - "logins_count": 49, - "app_metadata": { - "datatools": [{ - "permissions": [{ - "type": "administer-application" - }], - "projects": [], - "client_id": "your-auth0-client-id" - }] - } -}] diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json deleted file mode 100644 index 5aa89171b..000000000 --- a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "email": "test-existing-user@test.com", - "email_verified": false, - "updated_at": "2019-02-16T01:27:19.810Z", - "user_id": "auth0|test-existing-user", - "name": "test-existing-user@test.com", - "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname": "test-existing-user", - "identities": [{ - "connection": "Username-Password-Authentication", - "user_id": "test-existing-user", - "provider": "auth0", - "isSocial": false - }], - "created_at": "2019-02-16T01:27:19.810Z", - "app_metadata": { - "datatools": [{ - "permissions": [{ - "type": "administer-application" - }], - "projects": [], - "organizations": [], - "client_id": "testing-client-id" - }] - } -} diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json deleted file mode 100644 index 2c1f8cb12..000000000 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "email" : "test-new-user@test.com", - "email_verified" : false, - "updated_at" : "2019-02-16T01:27:19.810Z", - "user_id" : "auth0|test-new-user", - "name" : "test-new-user@test.com", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test-new-user", - "identities" : [ { - "connection" : "Username-Password-Authentication", - "user_id" : "test-new-user", - "provider" : "auth0", - "isSocial" : false - } ], - "created_at" : "2019-02-16T01:27:19.810Z", - "app_metadata" : { - "datatools" : [ { - "permissions" : [ ], - "projects" : [ ], - "organizations" : [ ], - "client_id" : "testing-client-id" - } ] - } -} \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json deleted file mode 100644 index f32a5804e..000000000 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json +++ /dev/null @@ -1 +0,0 @@ -true \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json deleted file mode 100644 index a8f90cea5..000000000 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json +++ /dev/null @@ -1,66 +0,0 @@ -[ { - "email" : "test1@test.com", - "email_verified" : true, - "user_id" : "auth0|test1", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test1", - "identities" : [ { - "user_id" : "test1", - "provider" : "auth0", - "connection" : "Username-Password-Authentication", - "isSocial" : false - } ], - "updated_at" : "2017-07-12T19:16:11.699Z", - "created_at" : "2017-06-22T19:19:41.404Z", - "last_password_reset" : "2017-07-12T19:08:52.507Z", - "name" : "test1", - "last_login" : "2017-07-12T19:09:28.400Z", - "last_ip" : "1.1.1.1", - "logins_count" : 1, - "app_metadata" : { - "datatools" : [ { - "permissions" : [ ], - "projects" : [ { - "project_id" : "test-project-id", - "permissions" : [ { - "type" : "view-feed", - "feeds" : [ "*" ] - } ], - "defaultFeeds" : [ ] - } ], - "organizations" : [ ], - "client_id" : "your-auth0-client-id", - "subscriptions" : [ { - "type" : "feed-updated", - "target" : [ "test-feed-id" ] - } ] - } ] - } -}, { - "email" : "test2@test.com", - "email_verified" : true, - "updated_at" : "2019-02-10T18:24:03.719Z", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "user_id" : "auth0|test2", - "nickname" : "test2", - "identities" : [ { - "user_id" : "test2", - "provider" : "auth0", - "connection" : "Username-Password-Authentication", - "isSocial" : false - } ], - "created_at" : "2018-12-27T16:46:32.864Z", - "name" : "test2", - "last_login" : "2019-02-10T18:24:03.719Z", - "last_ip" : "1.1.1.1", - "logins_count" : 49, - "app_metadata" : { - "datatools" : [ { - "permissions" : [ { - "type" : "administer-application" - } ], - "projects" : [ ], - "client_id" : "your-auth0-client-id" - } ] - } -} ] \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json deleted file mode 100644 index e635e58f0..000000000 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "email" : "test-existing-user@test.com", - "email_verified" : false, - "updated_at" : "2019-02-16T01:27:19.810Z", - "user_id" : "auth0|test-existing-user", - "name" : "test-existing-user@test.com", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test-existing-user", - "identities" : [ { - "connection" : "Username-Password-Authentication", - "user_id" : "test-existing-user", - "provider" : "auth0", - "isSocial" : false - } ], - "created_at" : "2019-02-16T01:27:19.810Z", - "app_metadata" : { - "datatools" : [ { - "permissions" : [ { - "type" : "administer-application" - } ], - "projects" : [ ], - "organizations" : [ ], - "client_id" : "testing-client-id" - } ] - } -} \ No newline at end of file From 5943dfbe9e3acee0393c1e745a82f923a2483d2e Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 21 Feb 2019 10:51:44 -0800 Subject: [PATCH 16/83] test(user): add CRUD tests for auth0 endpoints Also, improve error handling of Auth0Users.java --- .../datatools/manager/auth/Auth0Users.java | 80 ++++++---- .../controllers/api/UserControllerTest.java | 151 ++++++++++++++++++ .../__files/createNewUserResponse.json | 24 +++ .../__files/getExistingUserResponse.json | 24 +++ .../__files/getFirstTenUsersResponse.json | 66 ++++++++ .../__files/updateExistingUserResponse.json | 26 +++ .../api/UserControllerTest/canCreateUser.json | 24 +++ .../api/UserControllerTest/canDeleteUser.json | 1 + .../canListFirstTenUsers.json | 66 ++++++++ .../api/UserControllerTest/canUpdateUser.json | 26 +++ 10 files changed, 454 insertions(+), 34 deletions(-) create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsersResponse.json create mode 100644 src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json create mode 100644 src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index 43f0ef54d..53b6430a2 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -1,7 +1,6 @@ package com.conveyal.datatools.manager.auth; import com.conveyal.datatools.manager.DataManager; -import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.http.HttpResponse; @@ -16,7 +15,6 @@ import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; -import java.util.Collection; import java.util.HashSet; import java.util.Set; @@ -43,7 +41,8 @@ private static URI getUrl(String searchQuery, int page, int perPage, boolean inc // always filter users by datatools client_id String defaultQuery = "app_metadata.datatools.client_id:" + clientId; URIBuilder builder = new URIBuilder(); - builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users"); + setSchemePortAndHost(builder); + builder.setPath("/api/v2/users"); builder.setParameter("sort", "email:1"); builder.setParameter("per_page", Integer.toString(perPage)); builder.setParameter("page", Integer.toString(page)); @@ -82,20 +81,40 @@ private static String doRequest(URI uri) { request.addHeader("Authorization", "Bearer " + AUTH0_API_TOKEN); request.setHeader("Accept-Charset", charset); - HttpResponse response = null; + HttpResponse response; + + LOG.info("Making request: ({})", request.toString()); try { response = client.execute(request); } catch (IOException e) { + LOG.error("An exception occurred while making a request to Auth0"); e.printStackTrace(); + return null; } String result = null; - try { - result = EntityUtils.toString(response.getEntity()); - } catch (IOException e) { - e.printStackTrace(); + if (response.getEntity() != null) { + try { + result = EntityUtils.toString(response.getEntity()); + } catch (IOException e) { + LOG.error("An exception occurred while parsing a response from Auth0"); + e.printStackTrace(); + } + } else { + LOG.warn("No response body available to parse from Auth0 request"); + } + + int statusCode = response.getStatusLine().getStatusCode(); + if(statusCode >= 300) { + LOG.warn( + "HTTP request to Auth0 returned error code >= 300: ({}). Body: {}", + request.toString(), + result != null ? result : "" + ); + } else { + LOG.info("Successfully made request: ({})", request.toString()); } return result; @@ -118,35 +137,18 @@ public static String getAuth0Users(String queryString) { return getAuth0Users(queryString, 0); } - /** - * Get all users for this application (using the default search). - */ - public static Collection getAll () { - Collection users = new HashSet<>(); - - // limited to the first 100 - URI uri = getUrl(null, 0, 100, false); - String response = doRequest(uri); - try { - users = mapper.readValue(response, new TypeReference>(){}); - } catch (IOException e) { - e.printStackTrace(); - } - return users; - } - /** * Get a single Auth0 user for the specified ID. */ public static Auth0UserProfile getUserById(String id) { - URIBuilder builder = new URIBuilder(); - builder.setScheme("https").setHost(AUTH0_DOMAIN).setPath("/api/v2/users/" + id); + setSchemePortAndHost(builder); + builder.setPath("/api/v2/users/" + id); URI uri = null; try { uri = builder.build(); - } catch (URISyntaxException e) { + LOG.error("Unable to build URI to getUserById"); e.printStackTrace(); return null; } @@ -155,23 +157,33 @@ public static Auth0UserProfile getUserById(String id) { try { user = mapper.readValue(response, Auth0UserProfile.class); } catch (IOException e) { + LOG.error("Unable to parse user profile response from Auth0! Response: {}", response); e.printStackTrace(); } return user; } /** - * Get users subscribed to a given target ID. + * Sets uri builder scheme port and host according to whether a test environment is in effect */ - public static String getUsersBySubscription(String subscriptionType, String target) { - return getAuth0Users("app_metadata.datatools.subscriptions.type:" + subscriptionType + " AND app_metadata.datatools.subscriptions.target:" + target); + private static void setSchemePortAndHost(URIBuilder builder) { + if (AUTH0_DOMAIN.equals("localhost:8089")) { + // set items for testing purposes assuming use of a Wiremock server + builder.setScheme("http"); + builder.setPort(8089); + builder.setHost("localhost"); + } else { + // use live Auth0 domain + builder.setScheme("https"); + builder.setHost(AUTH0_DOMAIN); + } } /** - * Get users belong to a specified organization. + * Get users subscribed to a given target ID. */ - public static String getUsersForOrganization(String organizationId) { - return getAuth0Users("app_metadata.datatools.organizations.organization_id:" + organizationId); + public static String getUsersBySubscription(String subscriptionType, String target) { + return getAuth0Users("app_metadata.datatools.subscriptions.type:" + subscriptionType + " AND app_metadata.datatools.subscriptions.target:" + target); } public static Set getVerifiedEmailsBySubscription(String subscriptionType, String target) { diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java index 9423e675e..3ae065a46 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -11,8 +11,11 @@ import static com.conveyal.datatools.TestUtils.parseJson; import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.delete; import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; +import static com.github.tomakehurst.wiremock.client.WireMock.get; import static com.github.tomakehurst.wiremock.client.WireMock.matchingJsonPath; +import static com.github.tomakehurst.wiremock.client.WireMock.patch; import static com.github.tomakehurst.wiremock.client.WireMock.post; import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; @@ -45,6 +48,73 @@ public static void setUp() { DatatoolsTest.setUp(); } + /** + * Make sure the user endpoint can return a list of users + */ + @Test + public void canListFirstTenUsers() throws IOException { + // create wiremock stub for get users endpoint + stubFor( + get(urlPathEqualTo("/api/v2/users")) + .withQueryParam("page", equalTo("1")) + .willReturn( + aResponse() + .withBodyFile("getFirstTenUsersResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode userResponse = parseJson( + given() + .port(4000) + .get("/api/manager/secure/user?page=1") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(userResponse, matchesSnapshot()); + } + + /** + * Make sure a user can be created + */ + @Test + public void canCreateUser() throws IOException { + // create wiremock stub for create users endpoint + stubFor( + post(urlPathEqualTo("/api/v2/users")) + .withRequestBody(matchingJsonPath("$.email", equalTo("test-new-user@test.com"))) + .willReturn( + aResponse() + .withBodyFile("createNewUserResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode createUserResponse = parseJson( + given() + .port(4000) + .body("{\n" + + " \"email\" : \"test-new-user@test.com\",\n" + + " \"password\" : \"password\",\n" + + " \"permissions\" : {}\n" + + "}") + .post("/api/manager/secure/user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(createUserResponse, matchesSnapshot()); + } + /** * Make sure a meaningful Auth0 error can be returned when a duplicate user is being created */ @@ -82,4 +152,85 @@ public void canReturnMeaningfulAuth0Error() throws IOException { // make sure the response matches the saved snapshot assertThat(createUserResponse, matchesSnapshot()); } + + /** + * Make sure a user can be updated + */ + @Test + public void canUpdateUser() throws IOException { + // create wiremock stub for update users endpoint + stubFor( + patch(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .withRequestBody( + matchingJsonPath( + "$.app_metadata.datatools[0].permissions[0].type", + equalTo("administer-application") + ) + ) + .willReturn( + aResponse() + .withBodyFile("updateExistingUserResponse.json") + ) + ); + + // create wiremock stub for get user by id endpoint + stubFor( + get(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .willReturn( + aResponse() + .withBodyFile("getExistingUserResponse.json") + ) + ); + + + // make request and parse the json response + JsonNode createUserResponse = parseJson( + given() + .port(4000) + .body("{" + + "\"user_id\": \"auth0|test-existing-user\"" + + ",\"data\": [{" + + "\"permissions\": [{\"type\": \"administer-application\"}]," + + "\"projects\": []," + + "\"organizations\": []," + + "\"client_id\":\"testing-client-id\"" + + "}]" + + "}") + .put("/api/manager/secure/user/auth0|test-existing-user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(createUserResponse, matchesSnapshot()); + } + + /** + * Make sure a user can be deleted + */ + @Test + public void canDeleteUser() throws IOException { + // create wiremock stub for the delate users endpoint + stubFor( + delete(urlPathEqualTo("/api/v2/users/auth0%7Ctest-existing-user")) + .willReturn(aResponse()) + ); + + + // make request and parse the json response + JsonNode deleteUserResponse = parseJson( + given() + .port(4000) + .delete("/api/manager/secure/user/auth0|test-existing-user") + .then() + .extract() + .response() + .asString() + ); + + // make sure the response matches the saved snapshot + assertThat(deleteUserResponse, matchesSnapshot()); + } } diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json new file mode 100644 index 000000000..6cf399343 --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/createNewUserResponse.json @@ -0,0 +1,24 @@ +{ + "email": "test-new-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-new-user", + "name": "test-new-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-new-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-new-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json new file mode 100644 index 000000000..fdf863e3b --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getExistingUserResponse.json @@ -0,0 +1,24 @@ +{ + "email": "test-existing-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-existing-user", + "name": "test-existing-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-existing-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-existing-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsersResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsersResponse.json new file mode 100644 index 000000000..f16ec1b83 --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/getFirstTenUsersResponse.json @@ -0,0 +1,66 @@ +[{ + "email": "test1@test.com", + "email_verified": true, + "user_id": "auth0|test1", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test1", + "identities": [{ + "user_id": "test1", + "provider": "auth0", + "connection": "Username-Password-Authentication", + "isSocial": false + }], + "updated_at": "2017-07-12T19:16:11.699Z", + "created_at": "2017-06-22T19:19:41.404Z", + "last_password_reset": "2017-07-12T19:08:52.507Z", + "name": "test1", + "last_login": "2017-07-12T19:09:28.400Z", + "last_ip": "1.1.1.1", + "logins_count": 1, + "app_metadata": { + "datatools": [{ + "permissions": [], + "projects": [{ + "project_id": "test-project-id", + "permissions": [{ + "type": "view-feed", + "feeds": ["*"] + }], + "defaultFeeds": [] + }], + "organizations": [], + "client_id": "your-auth0-client-id", + "subscriptions": [{ + "type": "feed-updated", + "target": ["test-feed-id"] + }] + }] + } +}, { + "email": "test2@test.com", + "email_verified": true, + "updated_at": "2019-02-10T18:24:03.719Z", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "user_id": "auth0|test2", + "nickname": "test2", + "identities": [{ + "user_id": "test2", + "provider": "auth0", + "connection": "Username-Password-Authentication", + "isSocial": false + }], + "created_at": "2018-12-27T16:46:32.864Z", + "name": "test2", + "last_login": "2019-02-10T18:24:03.719Z", + "last_ip": "1.1.1.1", + "logins_count": 49, + "app_metadata": { + "datatools": [{ + "permissions": [{ + "type": "administer-application" + }], + "projects": [], + "client_id": "your-auth0-client-id" + }] + } +}] diff --git a/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json new file mode 100644 index 000000000..c41d9087b --- /dev/null +++ b/src/test/resources/com/conveyal/datatools/auth0-mock-responses/__files/updateExistingUserResponse.json @@ -0,0 +1,26 @@ +{ + "email": "test-existing-user@test.com", + "email_verified": false, + "updated_at": "2019-02-16T01:27:19.810Z", + "user_id": "auth0|test-existing-user", + "name": "test-existing-user@test.com", + "picture": "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname": "test-existing-user", + "identities": [{ + "connection": "Username-Password-Authentication", + "user_id": "test-existing-user", + "provider": "auth0", + "isSocial": false + }], + "created_at": "2019-02-16T01:27:19.810Z", + "app_metadata": { + "datatools": [{ + "permissions": [{ + "type": "administer-application" + }], + "projects": [], + "organizations": [], + "client_id": "testing-client-id" + }] + } +} \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json new file mode 100644 index 000000000..2c1f8cb12 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json @@ -0,0 +1,24 @@ +{ + "email" : "test-new-user@test.com", + "email_verified" : false, + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-new-user", + "name" : "test-new-user@test.com", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test-new-user", + "identities" : [ { + "connection" : "Username-Password-Authentication", + "user_id" : "test-new-user", + "provider" : "auth0", + "isSocial" : false + } ], + "created_at" : "2019-02-16T01:27:19.810Z", + "app_metadata" : { + "datatools" : [ { + "permissions" : [ ], + "projects" : [ ], + "organizations" : [ ], + "client_id" : "testing-client-id" + } ] + } +} \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json new file mode 100644 index 000000000..f32a5804e --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json @@ -0,0 +1 @@ +true \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json new file mode 100644 index 000000000..a8f90cea5 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json @@ -0,0 +1,66 @@ +[ { + "email" : "test1@test.com", + "email_verified" : true, + "user_id" : "auth0|test1", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test1", + "identities" : [ { + "user_id" : "test1", + "provider" : "auth0", + "connection" : "Username-Password-Authentication", + "isSocial" : false + } ], + "updated_at" : "2017-07-12T19:16:11.699Z", + "created_at" : "2017-06-22T19:19:41.404Z", + "last_password_reset" : "2017-07-12T19:08:52.507Z", + "name" : "test1", + "last_login" : "2017-07-12T19:09:28.400Z", + "last_ip" : "1.1.1.1", + "logins_count" : 1, + "app_metadata" : { + "datatools" : [ { + "permissions" : [ ], + "projects" : [ { + "project_id" : "test-project-id", + "permissions" : [ { + "type" : "view-feed", + "feeds" : [ "*" ] + } ], + "defaultFeeds" : [ ] + } ], + "organizations" : [ ], + "client_id" : "your-auth0-client-id", + "subscriptions" : [ { + "type" : "feed-updated", + "target" : [ "test-feed-id" ] + } ] + } ] + } +}, { + "email" : "test2@test.com", + "email_verified" : true, + "updated_at" : "2019-02-10T18:24:03.719Z", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "user_id" : "auth0|test2", + "nickname" : "test2", + "identities" : [ { + "user_id" : "test2", + "provider" : "auth0", + "connection" : "Username-Password-Authentication", + "isSocial" : false + } ], + "created_at" : "2018-12-27T16:46:32.864Z", + "name" : "test2", + "last_login" : "2019-02-10T18:24:03.719Z", + "last_ip" : "1.1.1.1", + "logins_count" : 49, + "app_metadata" : { + "datatools" : [ { + "permissions" : [ { + "type" : "administer-application" + } ], + "projects" : [ ], + "client_id" : "your-auth0-client-id" + } ] + } +} ] \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json new file mode 100644 index 000000000..e635e58f0 --- /dev/null +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json @@ -0,0 +1,26 @@ +{ + "email" : "test-existing-user@test.com", + "email_verified" : false, + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-existing-user", + "name" : "test-existing-user@test.com", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "nickname" : "test-existing-user", + "identities" : [ { + "connection" : "Username-Password-Authentication", + "user_id" : "test-existing-user", + "provider" : "auth0", + "isSocial" : false + } ], + "created_at" : "2019-02-16T01:27:19.810Z", + "app_metadata" : { + "datatools" : [ { + "permissions" : [ { + "type" : "administer-application" + } ], + "projects" : [ ], + "organizations" : [ ], + "client_id" : "testing-client-id" + } ] + } +} \ No newline at end of file From c5950c1f930ce134130d195a427c7b55e40de88d Mon Sep 17 00:00:00 2001 From: evansiroky Date: Tue, 5 Mar 2019 16:29:06 -0800 Subject: [PATCH 17/83] refactor(user): create methods for enabling test behavior and address other PR comments --- configurations/default/env.yml.test | 18 ---------- .../datatools/manager/DataManager.java | 2 +- .../manager/auth/Auth0Connection.java | 20 ++++++++--- .../controllers/api/UserController.java | 21 +++++++---- .../com/conveyal/datatools/DatatoolsTest.java | 2 +- .../controllers/api/UserControllerTest.java | 35 +++++++++++++++---- 6 files changed, 60 insertions(+), 38 deletions(-) delete mode 100644 configurations/default/env.yml.test diff --git a/configurations/default/env.yml.test b/configurations/default/env.yml.test deleted file mode 100644 index 1c9be292a..000000000 --- a/configurations/default/env.yml.test +++ /dev/null @@ -1,18 +0,0 @@ -####### -### This is a file that is used during junit tests of this library -####### - -# This client id is used to simulate a successful validation of a user on secure endpoints. -AUTH0_CLIENT_ID: testing-client-id -# This domain is used so that http mocking of the Auth0 API is possible during testing -AUTH0_DOMAIN: localhost:8089 -AUTH0_TOKEN: test-token -DISABLE_AUTH: true -OSM_VEX: http://localhost:1000 -SPARKPOST_KEY: test-sparkpost-key -SPARKPOST_EMAIL: email@example.com -GTFS_DATABASE_URL: jdbc:postgresql://localhost/catalogue-test -# GTFS_DATABASE_USER: -# GTFS_DATABASE_PASSWORD: -#MONGO_URI: mongodb://mongo-host:27017 -MONGO_DB_NAME: catalogue-test diff --git a/src/main/java/com/conveyal/datatools/manager/DataManager.java b/src/main/java/com/conveyal/datatools/manager/DataManager.java index 97651d6d0..2c87bd237 100644 --- a/src/main/java/com/conveyal/datatools/manager/DataManager.java +++ b/src/main/java/com/conveyal/datatools/manager/DataManager.java @@ -104,7 +104,7 @@ public class DataManager { public static String commit = ""; public static boolean useS3; - private static final String API_PREFIX = "/api/manager/"; + public static final String API_PREFIX = "/api/manager/"; private static final String GTFS_API_PREFIX = API_PREFIX + "secure/gtfs/"; private static final String EDITOR_API_PREFIX = "/api/editor/"; public static final String publicPath = "(" + API_PREFIX + "|" + EDITOR_API_PREFIX + ")public/.*"; diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java index 32d03149a..4712986fc 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java @@ -33,10 +33,9 @@ public class Auth0Connection { public static final String SCOPE = "http://datatools"; public static final String SCOPED_APP_METADATA = String.join("/", SCOPE, APP_METADATA); public static final String SCOPED_USER_METADATA = String.join("/", SCOPE, USER_METADATA); - private static final boolean IN_TESTING_ENVIRONMENT = DataManager - .getConfigPropertyAsText("AUTH0_CLIENT_ID").equals("testing-client-id"); private static final ObjectMapper MAPPER = new ObjectMapper(); private static final Logger LOG = LoggerFactory.getLogger(Auth0Connection.class); + private static boolean inTestingEnvironment = false; private static JWTVerifier verifier; /** @@ -45,7 +44,7 @@ public class Auth0Connection { * @param req Spark request object */ public static void checkUser(Request req) { - if (authDisabled() || IN_TESTING_ENVIRONMENT) { + if (authDisabled() || inTestingEnvironment) { // If in a development or testing environment, assign a mock profile to request attribute and skip // authentication. req.attribute("user", new Auth0UserProfile("mock@example.com", "user_id:string")); @@ -135,8 +134,11 @@ private static void remapTokenValues(Map jwt) { * tables in the database. */ public static void checkEditPrivileges(Request request) { - if (authDisabled() || IN_TESTING_ENVIRONMENT) { - // If in a development or testing environment, skip privileges check. + if (authDisabled() || inTestingEnvironment) { + // If in a development or testing environment, skip privileges check. This is done so that basically any API + // endpoint can function. + // TODO: make unit tests of the below items or do some more stuff as mentioned in PR review here: + // https://github.com/conveyal/datatools-server/pull/187#discussion_r262714708 return; } Auth0UserProfile userProfile = request.attribute("user"); @@ -191,4 +193,12 @@ public static void checkGTFSPrivileges(Request request) { } } } + + /** + * This is used to activate behavior within this class that emulates a testing environment. Obviously, this is used + * and should only be used while running tests of this project. + */ + public static void setInTestingEnvironment (boolean inTestingEnvironment) { + Auth0Connection.inTestingEnvironment = inTestingEnvironment; + } } diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java index 5ad245063..5ea8153d4 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java @@ -60,11 +60,8 @@ public class UserController { private static ObjectMapper mapper = new ObjectMapper(); private static final String charset = "UTF-8"; // set the base users URL based on whether the domain is the test environment - private static String baseUsersUrl = ( - AUTH0_DOMAIN.equals("localhost:8089") - ? "http://localhost:8089" - : "https://" + AUTH0_DOMAIN - ) + "/api/v2/users"; + public static final String defaultBaseUsersUrl = "https://" + AUTH0_DOMAIN + "/api/v2/users"; + private static String baseUsersUrl = defaultBaseUsersUrl; public static JsonManager json = new JsonManager<>(Project.class, JsonViews.UserInterface.class); /** @@ -177,7 +174,11 @@ private static String updateUser(Request req, Response res) { Auth0UserProfile user = getUserById(userId); if (user == null) { - logMessageAndHalt(req, 404, "User not found"); + logMessageAndHalt( + req, + 404, + String.format("Could not update user: User with id %s not found", userId) + ); } LOG.info("Updating user {}", user.getEmail()); @@ -516,6 +517,14 @@ public FeedVersionCommentActivity(Note note, FeedSource feedSource, FeedVersion } } + /** + * Used to override the base url for making requests to Auth0. This is primarily used for testing purposes to set + * the url to something that is stubbed with WireMock. + */ + public static void setBaseUsersUrl (String url) { + baseUsersUrl = url; + } + public static void register (String apiPrefix) { get(apiPrefix + "secure/user/:id", UserController::getUser, json::write); get(apiPrefix + "secure/user/:id/recentactivity", UserController::getRecentActivity, json::write); diff --git a/src/test/java/com/conveyal/datatools/DatatoolsTest.java b/src/test/java/com/conveyal/datatools/DatatoolsTest.java index e223a7415..19e306dc5 100644 --- a/src/test/java/com/conveyal/datatools/DatatoolsTest.java +++ b/src/test/java/com/conveyal/datatools/DatatoolsTest.java @@ -20,7 +20,7 @@ public static void setUp() { return; } LOG.info("DatatoolsTest setup"); - String[] args = {"configurations/default/env.yml.test", "configurations/default/server.yml.tmp"}; + String[] args = {"configurations/default/env.yml.tmp", "configurations/default/server.yml.tmp"}; try { DataManager.main(args); setUpIsDone = true; diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java index 9423e675e..6f36a4a66 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -1,8 +1,13 @@ package com.conveyal.datatools.manager.controllers.api; import com.conveyal.datatools.DatatoolsTest; +import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.auth.Auth0Connection; import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; import com.github.tomakehurst.wiremock.junit.WireMockRule; +import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Rule; import org.junit.Test; @@ -43,6 +48,17 @@ public class UserControllerTest { public static void setUp() { // start server if it isn't already running DatatoolsTest.setUp(); + Auth0Connection.setInTestingEnvironment(true); + UserController.setBaseUsersUrl("http://localhost:8089/api/v2/users"); + } + + /** + * Reset some Auth0 stuff to non-testing values. + */ + @AfterClass + public static void tearDown() { + Auth0Connection.setInTestingEnvironment(false); + UserController.setBaseUsersUrl(UserController.defaultBaseUsersUrl); } /** @@ -50,11 +66,13 @@ public static void setUp() { */ @Test public void canReturnMeaningfulAuth0Error() throws IOException { + String emailForExistingAccount = "test-existing-user@test.com"; + // create wiremock stub for create users endpoint that responds with a message saying a user with the email // already exists stubFor( post(urlPathEqualTo("/api/v2/users")) - .withRequestBody(matchingJsonPath("$.email", equalTo("test-existing-user@test.com"))) + .withRequestBody(matchingJsonPath("$.email", equalTo(emailForExistingAccount))) .willReturn( aResponse() .withStatus(409) @@ -63,16 +81,19 @@ public void canReturnMeaningfulAuth0Error() throws IOException { ); + // create a request body of a user that the above stub will recognize as an existing user + ObjectMapper mapper = new ObjectMapper(); + ObjectNode requestJson = mapper.createObjectNode(); + requestJson.put("email", emailForExistingAccount); + requestJson.put("password", "password"); + requestJson.putObject("permissions"); + // make request and parse the json response JsonNode createUserResponse = parseJson( given() .port(4000) - .body("{\n" + - " \"email\" : \"test-existing-user@test.com\",\n" + - " \"password\" : \"password\",\n" + - " \"permissions\" : {}\n" + - "}") - .post("/api/manager/secure/user") + .body(requestJson) + .post(String.format("%ssecure/user", DataManager.API_PREFIX)) .then() .extract() .response() From 6919e1498e00b56bca8936fcd9c2d6f80cf71eb6 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 7 Mar 2019 09:41:35 -0500 Subject: [PATCH 18/83] refactor(auth0): move testing string literals into constants --- .../datatools/manager/DataManager.java | 8 +++-- .../manager/auth/Auth0Connection.java | 14 ++------- .../controllers/api/UserController.java | 31 +++++++++++++------ .../controllers/api/UserControllerTest.java | 19 ++++++------ 4 files changed, 40 insertions(+), 32 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/DataManager.java b/src/main/java/com/conveyal/datatools/manager/DataManager.java index 2c87bd237..c0d15f8d9 100644 --- a/src/main/java/com/conveyal/datatools/manager/DataManager.java +++ b/src/main/java/com/conveyal/datatools/manager/DataManager.java @@ -56,6 +56,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.common.utils.SparkUtils.logRequest; import static com.conveyal.datatools.common.utils.SparkUtils.logResponse; +import static spark.Service.SPARK_DEFAULT_PORT; import static spark.Spark.after; import static spark.Spark.before; import static spark.Spark.exception; @@ -105,6 +106,8 @@ public class DataManager { public static boolean useS3; public static final String API_PREFIX = "/api/manager/"; + // Application port defaults to Spark's default. + public static int PORT = SPARK_DEFAULT_PORT; private static final String GTFS_API_PREFIX = API_PREFIX + "secure/gtfs/"; private static final String EDITOR_API_PREFIX = "/api/editor/"; public static final String publicPath = "(" + API_PREFIX + "|" + EDITOR_API_PREFIX + ")public/.*"; @@ -132,8 +135,9 @@ static void initializeApplication(String[] args) throws IOException { LOG.info(FeedStore.class.getSimpleName()); // Optionally set port for server. Otherwise, Spark defaults to 4567. - if (getConfigProperty("application.port") != null) { - port(Integer.parseInt(getConfigPropertyAsText("application.port"))); + if (hasConfigProperty("application.port")) { + PORT = Integer.parseInt(getConfigPropertyAsText("application.port")); + port(PORT); } useS3 = "true".equals(getConfigPropertyAsText("application.data.use_s3_storage")); diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java index 4712986fc..11de08bf0 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java @@ -20,6 +20,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.DataManager.getConfigPropertyAsText; import static com.conveyal.datatools.manager.DataManager.hasConfigProperty; +import static com.conveyal.datatools.manager.controllers.api.UserController.inTestingEnvironment; /** * This handles verifying the Auth0 token passed in the Auth header of Spark HTTP requests. @@ -35,7 +36,6 @@ public class Auth0Connection { public static final String SCOPED_USER_METADATA = String.join("/", SCOPE, USER_METADATA); private static final ObjectMapper MAPPER = new ObjectMapper(); private static final Logger LOG = LoggerFactory.getLogger(Auth0Connection.class); - private static boolean inTestingEnvironment = false; private static JWTVerifier verifier; /** @@ -44,7 +44,7 @@ public class Auth0Connection { * @param req Spark request object */ public static void checkUser(Request req) { - if (authDisabled() || inTestingEnvironment) { + if (authDisabled() || inTestingEnvironment()) { // If in a development or testing environment, assign a mock profile to request attribute and skip // authentication. req.attribute("user", new Auth0UserProfile("mock@example.com", "user_id:string")); @@ -134,7 +134,7 @@ private static void remapTokenValues(Map jwt) { * tables in the database. */ public static void checkEditPrivileges(Request request) { - if (authDisabled() || inTestingEnvironment) { + if (authDisabled() || inTestingEnvironment()) { // If in a development or testing environment, skip privileges check. This is done so that basically any API // endpoint can function. // TODO: make unit tests of the below items or do some more stuff as mentioned in PR review here: @@ -193,12 +193,4 @@ public static void checkGTFSPrivileges(Request request) { } } } - - /** - * This is used to activate behavior within this class that emulates a testing environment. Obviously, this is used - * and should only be used while running tests of this project. - */ - public static void setInTestingEnvironment (boolean inTestingEnvironment) { - Auth0Connection.inTestingEnvironment = inTestingEnvironment; - } } diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java index 5ea8153d4..fbb49f823 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/UserController.java @@ -53,16 +53,19 @@ */ public class UserController { - private static String AUTH0_DOMAIN = DataManager.getConfigPropertyAsText("AUTH0_DOMAIN"); - private static String AUTH0_CLIENT_ID = DataManager.getConfigPropertyAsText("AUTH0_CLIENT_ID"); - private static String AUTH0_API_TOKEN = DataManager.getConfigPropertyAsText("AUTH0_TOKEN"); + private static final String AUTH0_DOMAIN = DataManager.getConfigPropertyAsText("AUTH0_DOMAIN"); + private static final String AUTH0_CLIENT_ID = DataManager.getConfigPropertyAsText("AUTH0_CLIENT_ID"); + private static final String AUTH0_API_TOKEN = DataManager.getConfigPropertyAsText("AUTH0_TOKEN"); + static final int TEST_AUTH0_PORT = 8089; + static final String TEST_AUTH0_DOMAIN = String.format("localhost:%d", TEST_AUTH0_PORT); private static Logger LOG = LoggerFactory.getLogger(UserController.class); private static ObjectMapper mapper = new ObjectMapper(); - private static final String charset = "UTF-8"; - // set the base users URL based on whether the domain is the test environment - public static final String defaultBaseUsersUrl = "https://" + AUTH0_DOMAIN + "/api/v2/users"; - private static String baseUsersUrl = defaultBaseUsersUrl; - public static JsonManager json = new JsonManager<>(Project.class, JsonViews.UserInterface.class); + private static final String UTF_8 = "UTF-8"; + static final String USERS_PATH = "/api/v2/users"; + static final String DEFAULT_BASE_USERS_URL = "https://" + AUTH0_DOMAIN + USERS_PATH; + /** Users URL uses Auth0 domain by default, but can be overridden with {@link #setBaseUsersUrl(String)} for testing. */ + private static String baseUsersUrl = DEFAULT_BASE_USERS_URL; + private static final JsonManager json = new JsonManager<>(Project.class, JsonViews.UserInterface.class); /** * HTTP endpoint to get a single Auth0 user for the application (by specified ID param). Note, this uses a different @@ -74,6 +77,14 @@ private static String getUser(Request req, Response res) { return executeRequestAndGetResult(request, req); } + /** + * Determines whether the user controller is being run in a testing environment by checking if the users URL contains + * the {@link #TEST_AUTH0_DOMAIN}. + */ + public static boolean inTestingEnvironment() { + return baseUsersUrl.contains(TEST_AUTH0_DOMAIN); + } + /** * HTTP endpoint to get all users for the application (using a filtered search on all users for the Auth0 tenant). */ @@ -294,7 +305,7 @@ private static Object getRecentActivity(Request req, Response res) { */ private static void setHeaders(HttpRequestBase request) { request.addHeader("Authorization", "Bearer " + AUTH0_API_TOKEN); - request.setHeader("Accept-Charset", charset); + request.setHeader("Accept-Charset", UTF_8); request.setHeader("Content-Type", "application/json"); } @@ -345,7 +356,7 @@ private static JsonNode parseJsonFromBody(Request req) { private static void setRequestEntityUsingJson(HttpEntityEnclosingRequestBase request, String json, Request req) { HttpEntity entity = null; try { - entity = new ByteArrayEntity(json.getBytes(charset)); + entity = new ByteArrayEntity(json.getBytes(UTF_8)); } catch (UnsupportedEncodingException e) { logMessageAndHalt( req, diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java index 6f36a4a66..be3774632 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -2,7 +2,6 @@ import com.conveyal.datatools.DatatoolsTest; import com.conveyal.datatools.manager.DataManager; -import com.conveyal.datatools.manager.auth.Auth0Connection; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; @@ -15,6 +14,9 @@ import java.io.IOException; import static com.conveyal.datatools.TestUtils.parseJson; +import static com.conveyal.datatools.manager.controllers.api.UserController.TEST_AUTH0_DOMAIN; +import static com.conveyal.datatools.manager.controllers.api.UserController.TEST_AUTH0_PORT; +import static com.conveyal.datatools.manager.controllers.api.UserController.USERS_PATH; import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; import static com.github.tomakehurst.wiremock.client.WireMock.matchingJsonPath; @@ -37,7 +39,7 @@ public class UserControllerTest { @Rule public WireMockRule wireMockRule = new WireMockRule( options() - .port(8089) + .port(TEST_AUTH0_PORT) .usingFilesUnderDirectory("src/test/resources/com/conveyal/datatools/auth0-mock-responses/") ); @@ -48,8 +50,8 @@ public class UserControllerTest { public static void setUp() { // start server if it isn't already running DatatoolsTest.setUp(); - Auth0Connection.setInTestingEnvironment(true); - UserController.setBaseUsersUrl("http://localhost:8089/api/v2/users"); + // Set users URL to test domain used by wiremock. + UserController.setBaseUsersUrl("http://" + TEST_AUTH0_DOMAIN + USERS_PATH); } /** @@ -57,8 +59,7 @@ public static void setUp() { */ @AfterClass public static void tearDown() { - Auth0Connection.setInTestingEnvironment(false); - UserController.setBaseUsersUrl(UserController.defaultBaseUsersUrl); + UserController.setBaseUsersUrl(UserController.DEFAULT_BASE_USERS_URL); } /** @@ -71,7 +72,7 @@ public void canReturnMeaningfulAuth0Error() throws IOException { // create wiremock stub for create users endpoint that responds with a message saying a user with the email // already exists stubFor( - post(urlPathEqualTo("/api/v2/users")) + post(urlPathEqualTo(USERS_PATH)) .withRequestBody(matchingJsonPath("$.email", equalTo(emailForExistingAccount))) .willReturn( aResponse() @@ -91,9 +92,9 @@ public void canReturnMeaningfulAuth0Error() throws IOException { // make request and parse the json response JsonNode createUserResponse = parseJson( given() - .port(4000) + .port(DataManager.PORT) .body(requestJson) - .post(String.format("%ssecure/user", DataManager.API_PREFIX)) + .post(DataManager.API_PREFIX + "secure/user") .then() .extract() .response() From e4bfe79b7fbcbc1cb39bd13078d2ae5291742a60 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 7 Mar 2019 11:15:56 -0500 Subject: [PATCH 19/83] refactor(test): use PORT constant --- .../manager/controllers/api/AppInfoControllerTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java index 582369bfc..cfbfa3a70 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/AppInfoControllerTest.java @@ -1,6 +1,7 @@ package com.conveyal.datatools.manager.controllers.api; import com.conveyal.datatools.DatatoolsTest; +import com.conveyal.datatools.manager.DataManager; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.BeforeClass; @@ -28,7 +29,7 @@ public static void setUp() { @Test public void canReturnAppInfo() throws IOException { String jsonString = given() - .port(4000) + .port(DataManager.PORT) .get("/api/manager/public/appinfo") .then() // make sure the repoUrl matches what is found in the pom.xml From c60b5a05640a16dea3d83a981487d5ceba8ff71c Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 21 Mar 2019 21:49:39 -0700 Subject: [PATCH 20/83] feat(project): add pinned deployments to projects --- .../java/com/conveyal/datatools/manager/models/Project.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/conveyal/datatools/manager/models/Project.java b/src/main/java/com/conveyal/datatools/manager/models/Project.java index dd65d9850..7295bef65 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Project.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Project.java @@ -63,6 +63,8 @@ public OtpServer retrieveServer(String name) { // and/or for applying a geographic filter when syncing with external feed registries. public Bounds bounds; + public String pinnedDeploymentId; + public Project() { this.buildConfig = new OtpBuildConfig(); this.routerConfig = new OtpRouterConfig(); From f5ae65a4cd35366d37b4cb074fd98c476e0a9638 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 21 Mar 2019 23:17:57 -0700 Subject: [PATCH 21/83] refactor(project): add comments about pinned deployment --- src/main/java/com/conveyal/datatools/manager/models/Project.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/conveyal/datatools/manager/models/Project.java b/src/main/java/com/conveyal/datatools/manager/models/Project.java index 7295bef65..47d34b293 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Project.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Project.java @@ -63,6 +63,7 @@ public OtpServer retrieveServer(String name) { // and/or for applying a geographic filter when syncing with external feed registries. public Bounds bounds; + // used to identify a specific deployment. A bunch of UI things depend on this. public String pinnedDeploymentId; public Project() { From 85661e4c7aee12e32ad5a277d0a104fd4df68e7a Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 28 Mar 2019 12:38:42 -0400 Subject: [PATCH 22/83] feat(editor): add normalize stop times API endpoint --- .../controllers/api/EditorController.java | 46 +++++++++++++------ 1 file changed, 32 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorController.java b/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorController.java index 0d488b603..fc84d4d6b 100644 --- a/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorController.java +++ b/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorController.java @@ -1,6 +1,7 @@ package com.conveyal.datatools.editor.controllers.api; import com.conveyal.datatools.common.utils.S3Utils; +import com.conveyal.datatools.common.utils.SparkUtils; import com.conveyal.datatools.editor.controllers.EditorLockController; import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.models.FeedSource; @@ -86,6 +87,7 @@ private void registerRoutes() { // Handle update useFrequency field. Hitting this endpoint will delete all trips for a pattern and update the // useFrequency field. if ("pattern".equals(classToLowercase)) { + put(ROOT_ROUTE + ID_PARAM + "/stop_times", this::updateStopTimesFromPatternStops, json::write); delete(ROOT_ROUTE + ID_PARAM + "/trips", this::deleteTripsForPattern, json::write); } } @@ -112,7 +114,7 @@ private String deleteTripsForPattern(Request req, Response res) { logMessageAndHalt(req, 500, "Error deleting entity", e); return null; } finally { - LOG.info("Delete operation took {} msec", System.currentTimeMillis() - startTime); + LOG.info("Delete trips for pattern operation took {} msec", System.currentTimeMillis() - startTime); } } @@ -124,8 +126,9 @@ private String deleteMultipleTrips(Request req, Response res) { long startTime = System.currentTimeMillis(); String namespace = getNamespaceAndValidateSession(req); String[] tripIds = req.queryParams("tripIds").split(","); + JdbcTableWriter tableWriter = null; try { - JdbcTableWriter tableWriter = new JdbcTableWriter(table, datasource, namespace); + tableWriter = new JdbcTableWriter(table, datasource, namespace); for (String tripId: tripIds) { // Delete each trip ID found in query param WITHOUT auto-committing. int result = tableWriter.delete(Integer.parseInt(tripId), false); @@ -135,7 +138,7 @@ private String deleteMultipleTrips(Request req, Response res) { throw new SQLException(message); } } - // Commit the transaction after iterating over trip IDs (because the deletes where made without autocommit). + // Commit the transaction after iterating over trip IDs (because the deletes were made without autocommit). tableWriter.commit(); LOG.info("Deleted {} trips", tripIds.length); } catch (InvalidNamespaceException e) { @@ -143,6 +146,7 @@ private String deleteMultipleTrips(Request req, Response res) { } catch (Exception e) { logMessageAndHalt(req, 500, "Error deleting entity", e); } finally { + if (tableWriter != null) tableWriter.close(); LOG.info("Delete operation took {} msec", System.currentTimeMillis() - startTime); } return formatJSON(String.format("Deleted %d.", tripIds.length), 200); @@ -159,7 +163,7 @@ private String deleteOne(Request req, Response res) { JdbcTableWriter tableWriter = new JdbcTableWriter(table, datasource, namespace); if (tableWriter.delete(id, true) == 1) { // FIXME: change return message based on result value - return formatJSON(String.valueOf("Deleted one."), 200); + return formatJSON("Deleted one.", 200); } } catch (Exception e) { logMessageAndHalt(req, 400, "Error deleting entity", e); @@ -169,17 +173,37 @@ private String deleteOne(Request req, Response res) { return null; } + /** + * For a given pattern ID, update all its trips' stop times to conform to the default travel and dwell times. This + * is used, for instance, when a new pattern stop is added or inserted into an existing pattern that has trips which + * need the updated travel times applied in bulk. + */ + private String updateStopTimesFromPatternStops (Request req, Response res) { + long startTime = System.currentTimeMillis(); + String namespace = getNamespaceAndValidateSession(req); + int patternId = getIdFromRequest(req); + try { + int beginStopSequence = Integer.parseInt(req.queryParams("stopSequence")); + JdbcTableWriter tableWriter = new JdbcTableWriter(table, datasource, namespace); + int stopTimesUpdated = tableWriter.normalizeStopTimesForPattern(patternId, beginStopSequence); + return SparkUtils.formatJSON("updateResult", stopTimesUpdated + " stop times updated."); + } catch (Exception e) { + logMessageAndHalt(req, 400, "Error normalizing stop times", e); + return null; + } finally { + LOG.info("Normalize stop times operation took {} msec", System.currentTimeMillis() - startTime); + } + } + /** * HTTP endpoint to upload branding image to S3 for either agency or route entities. The endpoint also handles * updating the branding URL field to match the S3 URL. */ private String uploadEntityBranding (Request req, Response res) { int id = getIdFromRequest(req); - String url = null; + String url; try { - // FIXME: remove cast to string. - String idAsString = String.valueOf(id); - url = S3Utils.uploadBranding(req, String.join("_", classToLowercase, idAsString)); + url = S3Utils.uploadBranding(req, String.format("%s_%d", classToLowercase, id)); } catch (HaltException e) { // Do not re-catch halts thrown for exceptions that have already been caught. throw e; @@ -300,10 +324,4 @@ private Integer getIdFromRequest(Request req) { } return id; } - - // TODO add hooks - abstract void getEntityHook(T entity); - abstract void createEntityHook(T entity); - abstract void updateEntityHook(T entity); - abstract void deleteEntityHook(T entity); } From bc0b45047d641d20806c40ed69ca9c495fe1a659 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 28 Mar 2019 18:35:26 -0400 Subject: [PATCH 23/83] test(merge-feeds): add tests for MTC and REGIONAL merge types --- .../datatools/manager/jobs/MergeFeedsJob.java | 26 ++- .../manager/jobs/MergeFeedsResult.java | 6 - .../datatools/manager/models/Model.java | 9 +- .../manager/jobs/MergeFeedsJobTest.java | 169 ++++++++++++++++++ .../com/conveyal/datatools/bart_new.zip | Bin 0 -> 427758 bytes .../com/conveyal/datatools/bart_old.zip | Bin 0 -> 382464 bytes 6 files changed, 196 insertions(+), 14 deletions(-) create mode 100644 src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java create mode 100644 src/test/resources/com/conveyal/datatools/bart_new.zip create mode 100644 src/test/resources/com/conveyal/datatools/bart_old.zip diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index ffbbadb3d..15b9d9d3b 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -74,8 +74,15 @@ public class MergeFeedsJob extends MonitorableJob { public final String projectId; public final MergeFeedsType mergeType; private File mergedTempFile = null; - private final FeedVersion mergedVersion; + final FeedVersion mergedVersion; + public boolean failOnDuplicateTripId = true; + /** + * @param owner user ID that initiated job + * @param feedVersions set of feed versions to merge + * @param file resulting merge filename (without .zip) + * @param mergeType the type of merge to perform (@link MergeFeedsType) + */ public MergeFeedsJob(String owner, Set feedVersions, String file, MergeFeedsType mergeType) { super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; @@ -103,11 +110,6 @@ public void jobFinished() { // FIXME: send to bugsnag? LOG.error("Merged feed file {} not deleted. This may contribute to storage space shortages.", mergedTempFile.getAbsolutePath()); } - if (!mergeType.equals(REGIONAL) && !status.error && !mergeFeedsResult.failed) { - // Handle the processing of the new version for non-regional merges (note: s3 upload is handled within this job). - ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); - addNextJob(processSingleFeedJob); - } } /** @@ -167,6 +169,14 @@ public void jobLogic() throws IOException { storeMergedFeed(); status.update(false, "Merged feed created successfully.", 100, true); } + LOG.info("Feed merge is complete."); + if (!mergeType.equals(REGIONAL) && !status.error && !mergeFeedsResult.failed) { + // Handle the processing of the new version for non-regional merges (note: s3 upload is handled within this job). + // We must add this job in jobLogic (rather than jobFinished) because jobFinished is called after this job's + // subJobs are run. + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); + addNextJob(processSingleFeedJob); + } } /** @@ -388,7 +398,9 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) for (NewGTFSError error : idErrors) { if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { mergeFeedsResult.failureReasons.add("Trip ID conflict caused merge failure."); - mergeFeedsResult.addIdConflict(error.badValue); + mergeFeedsResult.idConflicts.add(error.badValue); + mergeFeedsResult.errorCount++; + if (failOnDuplicateTripId) mergeFeedsResult.failed = true; skipRecord = true; } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java index dee10059d..c01fd6b89 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java @@ -25,10 +25,4 @@ public MergeFeedsResult (MergeFeedsType type) { this.type = type; this.startTime = new Date(); } - - public void addIdConflict (String id) { - idConflicts.add(id); - errorCount++; - failed = true; - } } diff --git a/src/main/java/com/conveyal/datatools/manager/models/Model.java b/src/main/java/com/conveyal/datatools/manager/models/Model.java index d9e073c60..509ed9ad9 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Model.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Model.java @@ -96,7 +96,14 @@ public void storeUser(Auth0UserProfile profile) { public void storeUser(String id) { userId = id; if (!Auth0Connection.authDisabled()) { - Auth0UserProfile profile = Auth0Users.getUserById(userId); + Auth0UserProfile profile = null; + // Try to fetch Auth0 user to store email address. This is surrounded by a try/catch because in the event of + // a failure we do not want to cause issues from this low-level operation. + try { + profile = Auth0Users.getUserById(userId); + } catch (Exception e) { + e.printStackTrace(); + } userEmail = profile != null ? profile.getEmail() : null; } else { userEmail = "no_auth@conveyal.com"; diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java new file mode 100644 index 000000000..cf20493e4 --- /dev/null +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -0,0 +1,169 @@ +package com.conveyal.datatools.manager.jobs; + +import com.conveyal.datatools.DatatoolsTest; +import com.conveyal.datatools.LoadFeedTest; +import com.conveyal.datatools.manager.models.FeedSource; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.models.Project; +import com.conveyal.datatools.manager.persistence.Persistence; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * Tests for the various {@link MergeFeedsJob} merge types. + */ +public class MergeFeedsJobTest { + private static FeedVersion bartVersion1; + private static FeedVersion bartVersion2; + private static FeedVersion calTrainVersion; + private static Project project; + /** + * Prepare and start a testing-specific web server + */ + @BeforeAll + public static void setUp() { + // start server if it isn't already running + DatatoolsTest.setUp(); + // Create a project, feed sources, and feed versions to merge. + project = new Project(); + project.name = String.format("Test %s", new Date().toString()); + Persistence.projects.create(project); + FeedSource bart = new FeedSource("BART"); + bart.projectId = project.id; + Persistence.feedSources.create(bart); + bartVersion1 = createFeedVersion(bart, "bart_old.zip"); + bartVersion2 = createFeedVersion(bart, "bart_new.zip"); + FeedSource caltrain = new FeedSource("Caltrain"); + caltrain.projectId = project.id; + Persistence.feedSources.create(caltrain); + calTrainVersion = createFeedVersion(caltrain, "caltrain_gtfs.zip"); + } + + /** + * Ensures that a regional feed merge will produce a feed that includes all entities from each feed. + */ + @Test + public void canMergeRegional() { + Set versions = new HashSet<>(); + versions.add(bartVersion1); + versions.add(calTrainVersion); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob("test", versions, project.id, MergeFeedsType.REGIONAL); + // Run the job in this thread (we're not concerned about concurrency here). + mergeFeedsJob.run(); + // Create a new feed source/version for the merged feed, so we can easily analyze its contents. + FeedSource source = new FeedSource("Merged feed"); + source.projectId = project.id; + Persistence.feedSources.create(source); + File feed = FeedVersion.feedStore.getFeed(project.id + ".zip"); + FeedVersion mergedVersion = createFeedVersion(source, feed); + // Ensure the feed has the row counts we expect. + assertEquals( + mergedVersion.feedLoadResult.trips.rowCount, + bartVersion1.feedLoadResult.trips.rowCount + calTrainVersion.feedLoadResult.trips.rowCount, + "trips count for merged feed should equal sum of trips for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.routes.rowCount, + bartVersion1.feedLoadResult.routes.rowCount + calTrainVersion.feedLoadResult.routes.rowCount, + "routes count for merged feed should equal sum of routes for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.stops.rowCount, + bartVersion1.feedLoadResult.stops.rowCount + calTrainVersion.feedLoadResult.stops.rowCount, + "stops count for merged feed should equal sum of stops for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.agency.rowCount, + bartVersion1.feedLoadResult.agency.rowCount + calTrainVersion.feedLoadResult.agency.rowCount, + "agency count for merged feed should equal sum of agency for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.stopTimes.rowCount, + bartVersion1.feedLoadResult.stopTimes.rowCount + calTrainVersion.feedLoadResult.stopTimes.rowCount, + "stopTimes count for merged feed should equal sum of stopTimes for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.calendar.rowCount, + bartVersion1.feedLoadResult.calendar.rowCount + calTrainVersion.feedLoadResult.calendar.rowCount, + "calendar count for merged feed should equal sum of calendar for versions merged." + ); + assertEquals( + mergedVersion.feedLoadResult.calendarDates.rowCount, + bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount, + "calendarDates count for merged feed should equal sum of calendarDates for versions merged." + ); + } + + /** + * Ensures that an MTC merge of feeds with duplicate trip IDs will fail. + */ + @Test + public void mergeMTCShouldFailOnDuplicateTrip() { + Set versions = new HashSet<>(); + versions.add(bartVersion1); + versions.add(bartVersion2); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob("test", versions, "merged_output", MergeFeedsType.MTC); + // Run the job in this thread (we're not concerned about concurrency here). + mergeFeedsJob.run(); + // Result should fail. + assertEquals(mergeFeedsJob.mergeFeedsResult.failed, true, "Merge feeds job should fail due to duplicate trip IDs."); + } + + /** + * Tests that the MTC merge strategy will successfully merge BART feeds. Note: this test turns off + * {@link MergeFeedsJob#failOnDuplicateTripId} in order to force the merge to succeed even though there are duplicate + * trips contained within. + */ + @Test + public void canMergeBARTFeeds() { + Set versions = new HashSet<>(); + versions.add(bartVersion1); + versions.add(bartVersion2); + MergeFeedsJob mergeFeedsJob = new MergeFeedsJob("test", versions, "merged_output", MergeFeedsType.MTC); + // This time, turn off the failOnDuplicateTripId flag. + mergeFeedsJob.failOnDuplicateTripId = false; + mergeFeedsJob.run(); + // Result should succeed this time. + assertEquals(mergeFeedsJob.mergedVersion.feedLoadResult.trips.rowCount, 4552, "Merged feed trip count should equal expected value."); + assertEquals(mergeFeedsJob.mergedVersion.feedLoadResult.routes.rowCount, 9, "Merged feed route count should equal expected value."); + } + + /** + * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, + * so that tasks can run synchronously. + */ + public static FeedVersion createFeedVersion(FeedSource source, String gtfsFileName) { + File gtfsFile = new File(LoadFeedTest.class.getResource(gtfsFileName).getFile()); + return createFeedVersion(source, gtfsFile); + } + + /** + * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, + * so that tasks can run synchronously. + */ + public static FeedVersion createFeedVersion(FeedSource source, File gtfsFile) { + FeedVersion version = new FeedVersion(source); + InputStream is; + try { + is = new FileInputStream(gtfsFile); + version.newGtfsFile(is); + } catch (IOException e) { + e.printStackTrace(); + } + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(version, "test", true); + // Run in same thread. + processSingleFeedJob.run(); + return version; + } + +} diff --git a/src/test/resources/com/conveyal/datatools/bart_new.zip b/src/test/resources/com/conveyal/datatools/bart_new.zip new file mode 100644 index 0000000000000000000000000000000000000000..917d60d913781be4511b5df4892c70ffdad5dce7 GIT binary patch literal 427758 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

JWtxKqsr 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%0A&;%pB7dXE1)JLkDM3>W^EYYRXls(MsH-%Tv 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 z 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%0Dj0VK*O^^cUYN)ire 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 YzE(e=j~$0Pkr4cCKMHP(c>)dpA20bQ=l}o! literal 0 HcmV?d00001 diff --git a/src/test/resources/com/conveyal/datatools/bart_old.zip b/src/test/resources/com/conveyal/datatools/bart_old.zip new file mode 100644 index 0000000000000000000000000000000000000000..6f4af8fcdaf5e0ceeffe360f1049faf336eacedd GIT binary patch literal 382464 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

N4zEv0Zeq7#sLs=m|K}mli@pGpZzil-R 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%0Dc%~CIV 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 literal 0 HcmV?d00001 From 9969a5659aa42caae91442d0d96affc27f40d3cc Mon Sep 17 00:00:00 2001 From: evansiroky Date: Thu, 28 Mar 2019 16:40:41 -0700 Subject: [PATCH 24/83] refactor(project): improve comment about pinned deployments --- .../java/com/conveyal/datatools/manager/models/Project.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/conveyal/datatools/manager/models/Project.java b/src/main/java/com/conveyal/datatools/manager/models/Project.java index 47d34b293..e3b849db1 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Project.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Project.java @@ -63,7 +63,10 @@ public OtpServer retrieveServer(String name) { // and/or for applying a geographic filter when syncing with external feed registries. public Bounds bounds; - // used to identify a specific deployment. A bunch of UI things depend on this. + // Identifies a specific "pinned" deployment for the project. This is used in datatools-ui in 2 places: + // 1. In the list of project deployments, a "pinned" deployment is shown first and highlighted. + // 2. In the project feed source table, if a "pinned" deployment exists, the status of the versions that were in + // the "pinned" deployment are shown and compared to the most recent version in the feed sources. public String pinnedDeploymentId; public Project() { From d5e4e4958f6ecd4c3ba5a8d18a286a3497b27ee5 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 15:52:18 -0400 Subject: [PATCH 25/83] chore(pom): update gtfs-lib to 4.3.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 18b06a86a..37888a479 100644 --- a/pom.xml +++ b/pom.xml @@ -259,7 +259,7 @@ com.conveyal gtfs-lib - 4.2.5 + 4.3.0 From e4f089ef964ee87e49884cde4e3b3ac2408772df Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 16:15:04 -0400 Subject: [PATCH 26/83] refactor(editor): remove unused editor controller hooks --- .../controllers/api/EditorControllerImpl.java | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorControllerImpl.java b/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorControllerImpl.java index fa796e887..e25e29601 100644 --- a/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorControllerImpl.java +++ b/src/main/java/com/conveyal/datatools/editor/controllers/api/EditorControllerImpl.java @@ -9,24 +9,4 @@ public class EditorControllerImpl extends EditorController { public EditorControllerImpl(String apiPrefix, Table table, DataSource dataSource){ super(apiPrefix, table, dataSource); } - - @Override - void getEntityHook(Entity entity) { - - } - - @Override - void createEntityHook(Entity entity) { - - } - - @Override - void updateEntityHook(Entity entity) { - - } - - @Override - void deleteEntityHook(Entity entity) { - - } } From a90940ed8c90d0e67b519f1cc0e25fd563c809b1 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 15:52:18 -0400 Subject: [PATCH 27/83] chore(pom): update gtfs-lib to 4.3.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a4937a3b4..7ba9e9977 100644 --- a/pom.xml +++ b/pom.xml @@ -247,7 +247,7 @@ com.conveyal gtfs-lib - 4.2.5 + 4.3.0 From fb3a2d83365914721a705a880eb380ff22011c95 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 17:00:03 -0400 Subject: [PATCH 28/83] refactor(junit): refactor tests to use junit4 --- pom.xml | 14 ++--- .../manager/jobs/MergeFeedsJobTest.java | 56 +++++++++++-------- .../manager/persistence/PersistenceTest.java | 4 +- 3 files changed, 41 insertions(+), 33 deletions(-) diff --git a/pom.xml b/pom.xml index 7ba9e9977..8862b186d 100644 --- a/pom.xml +++ b/pom.xml @@ -243,7 +243,11 @@ 2.1.0 - + com.conveyal gtfs-lib @@ -313,14 +317,6 @@ 19.2 - - - junit - junit - 4.12 - test - - com.bugsnag diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java index cf20493e4..c404690b9 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -6,8 +6,8 @@ import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.models.Project; import com.conveyal.datatools.manager.persistence.Persistence; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; +import org.junit.BeforeClass; +import org.junit.Test; import java.io.File; import java.io.FileInputStream; @@ -17,7 +17,7 @@ import java.util.HashSet; import java.util.Set; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; /** * Tests for the various {@link MergeFeedsJob} merge types. @@ -30,7 +30,7 @@ public class MergeFeedsJobTest { /** * Prepare and start a testing-specific web server */ - @BeforeAll + @BeforeClass public static void setUp() { // start server if it isn't already running DatatoolsTest.setUp(); @@ -68,39 +68,39 @@ public void canMergeRegional() { FeedVersion mergedVersion = createFeedVersion(source, feed); // Ensure the feed has the row counts we expect. assertEquals( - mergedVersion.feedLoadResult.trips.rowCount, + "trips count for merged feed should equal sum of trips for versions merged.", bartVersion1.feedLoadResult.trips.rowCount + calTrainVersion.feedLoadResult.trips.rowCount, - "trips count for merged feed should equal sum of trips for versions merged." + mergedVersion.feedLoadResult.trips.rowCount ); assertEquals( - mergedVersion.feedLoadResult.routes.rowCount, + "routes count for merged feed should equal sum of routes for versions merged.", bartVersion1.feedLoadResult.routes.rowCount + calTrainVersion.feedLoadResult.routes.rowCount, - "routes count for merged feed should equal sum of routes for versions merged." - ); + mergedVersion.feedLoadResult.routes.rowCount + ); assertEquals( + "stops count for merged feed should equal sum of stops for versions merged.", mergedVersion.feedLoadResult.stops.rowCount, - bartVersion1.feedLoadResult.stops.rowCount + calTrainVersion.feedLoadResult.stops.rowCount, - "stops count for merged feed should equal sum of stops for versions merged." + bartVersion1.feedLoadResult.stops.rowCount + calTrainVersion.feedLoadResult.stops.rowCount ); assertEquals( + "agency count for merged feed should equal sum of agency for versions merged.", mergedVersion.feedLoadResult.agency.rowCount, - bartVersion1.feedLoadResult.agency.rowCount + calTrainVersion.feedLoadResult.agency.rowCount, - "agency count for merged feed should equal sum of agency for versions merged." + bartVersion1.feedLoadResult.agency.rowCount + calTrainVersion.feedLoadResult.agency.rowCount ); assertEquals( + "stopTimes count for merged feed should equal sum of stopTimes for versions merged.", mergedVersion.feedLoadResult.stopTimes.rowCount, - bartVersion1.feedLoadResult.stopTimes.rowCount + calTrainVersion.feedLoadResult.stopTimes.rowCount, - "stopTimes count for merged feed should equal sum of stopTimes for versions merged." + bartVersion1.feedLoadResult.stopTimes.rowCount + calTrainVersion.feedLoadResult.stopTimes.rowCount ); assertEquals( + "calendar count for merged feed should equal sum of calendar for versions merged.", mergedVersion.feedLoadResult.calendar.rowCount, - bartVersion1.feedLoadResult.calendar.rowCount + calTrainVersion.feedLoadResult.calendar.rowCount, - "calendar count for merged feed should equal sum of calendar for versions merged." + bartVersion1.feedLoadResult.calendar.rowCount + calTrainVersion.feedLoadResult.calendar.rowCount ); assertEquals( + "calendarDates count for merged feed should equal sum of calendarDates for versions merged.", mergedVersion.feedLoadResult.calendarDates.rowCount, - bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount, - "calendarDates count for merged feed should equal sum of calendarDates for versions merged." + bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount ); } @@ -116,7 +116,11 @@ public void mergeMTCShouldFailOnDuplicateTrip() { // Run the job in this thread (we're not concerned about concurrency here). mergeFeedsJob.run(); // Result should fail. - assertEquals(mergeFeedsJob.mergeFeedsResult.failed, true, "Merge feeds job should fail due to duplicate trip IDs."); + assertEquals( + "Merge feeds job should fail due to duplicate trip IDs.", + true, + mergeFeedsJob.mergeFeedsResult.failed + ); } /** @@ -134,8 +138,16 @@ public void canMergeBARTFeeds() { mergeFeedsJob.failOnDuplicateTripId = false; mergeFeedsJob.run(); // Result should succeed this time. - assertEquals(mergeFeedsJob.mergedVersion.feedLoadResult.trips.rowCount, 4552, "Merged feed trip count should equal expected value."); - assertEquals(mergeFeedsJob.mergedVersion.feedLoadResult.routes.rowCount, 9, "Merged feed route count should equal expected value."); + assertEquals( + "Merged feed trip count should equal expected value.", + 4552, + mergeFeedsJob.mergedVersion.feedLoadResult.trips.rowCount + ); + assertEquals( + "Merged feed route count should equal expected value.", + 9, + mergeFeedsJob.mergedVersion.feedLoadResult.routes.rowCount + ); } /** diff --git a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java index 846fe77bb..143aa261d 100644 --- a/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java +++ b/src/test/java/com/conveyal/datatools/manager/persistence/PersistenceTest.java @@ -30,7 +30,7 @@ public void createFeedSource() { String id = feedSource.id; Persistence.feedSources.create(feedSource); String retrievedId = Persistence.feedSources.getById(id).id; - assertEquals("Found FeedSource ID should equal inserted ID.", retrievedId, id); + assertEquals("Found FeedSource ID should equal inserted ID.", id, retrievedId); } // @Test @@ -59,7 +59,7 @@ public void createProject() { String id = project.id; Persistence.projects.create(project); String retrievedId = Persistence.projects.getById(id).id; - assertEquals("Found Project ID should equal inserted ID.", retrievedId, id); + assertEquals("Found Project ID should equal inserted ID.", id, retrievedId); } // // @Test From 72c57f6fb9958d64d6b785a26d27e01d9b5f1734 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 17:10:31 -0400 Subject: [PATCH 29/83] build(pom): add junit 4 --- pom.xml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8862b186d..4734d4954 100644 --- a/pom.xml +++ b/pom.xml @@ -243,9 +243,16 @@ 2.1.0 + + + junit + junit + 4.12 + test + + From 6b06107bbdd14577cd8def339107d070df98a261 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 17:33:54 -0400 Subject: [PATCH 30/83] test: create database if not exists --- .../com/conveyal/datatools/DatatoolsTest.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/test/java/com/conveyal/datatools/DatatoolsTest.java b/src/test/java/com/conveyal/datatools/DatatoolsTest.java index 19e306dc5..1f5bf0954 100644 --- a/src/test/java/com/conveyal/datatools/DatatoolsTest.java +++ b/src/test/java/com/conveyal/datatools/DatatoolsTest.java @@ -6,6 +6,8 @@ import org.slf4j.LoggerFactory; import java.io.IOException; +import java.sql.Connection; +import java.sql.SQLException; /** * Created by landon on 2/24/17. @@ -23,6 +25,19 @@ public static void setUp() { String[] args = {"configurations/default/env.yml.tmp", "configurations/default/server.yml.tmp"}; try { DataManager.main(args); + // Attempt to create database for testing. + String databaseUrl = DataManager.getConfigPropertyAsText("GTFS_DATABASE_URL"); + String databaseName = databaseUrl.split("/")[3]; + try { + Connection connection = DataManager.GTFS_DATA_SOURCE.getConnection(); + // Auto-commit must be enabled for a create database command. + connection.setAutoCommit(true); + connection.prepareStatement(String.format("CREATE DATABASE %s", databaseName)) + .execute(); + } catch (SQLException e) { + // Catch already exists error. + e.printStackTrace(); + } setUpIsDone = true; } catch (IOException e) { e.printStackTrace(); From c3b9c9e7b208f18181c540b5a167b40c85ffc682 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 17:42:55 -0400 Subject: [PATCH 31/83] test: add log --- src/test/java/com/conveyal/datatools/DatatoolsTest.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/conveyal/datatools/DatatoolsTest.java b/src/test/java/com/conveyal/datatools/DatatoolsTest.java index 1f5bf0954..95601b458 100644 --- a/src/test/java/com/conveyal/datatools/DatatoolsTest.java +++ b/src/test/java/com/conveyal/datatools/DatatoolsTest.java @@ -32,7 +32,10 @@ public static void setUp() { Connection connection = DataManager.GTFS_DATA_SOURCE.getConnection(); // Auto-commit must be enabled for a create database command. connection.setAutoCommit(true); - connection.prepareStatement(String.format("CREATE DATABASE %s", databaseName)) + String createDBSql = String.format("CREATE DATABASE %s", databaseName); + LOG.info(createDBSql); + connection + .prepareStatement(createDBSql) .execute(); } catch (SQLException e) { // Catch already exists error. From b0f02608dbe6045ce18c25593ff073f43ac0f3e2 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 1 Apr 2019 18:05:29 -0400 Subject: [PATCH 32/83] test(ci): create database using travis --- .travis.yml | 15 +++++++++++---- .../com/conveyal/datatools/DatatoolsTest.java | 16 ---------------- 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6eaec67d4..0903f7043 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,14 +1,19 @@ language: java +language: java jdk: -- oraclejdk8 + - oraclejdk8 install: true sudo: false # Install mongoDB to perform persistence tests -services: mongodb +services: + - mongodb + - postgresql +addons: + postgresql: 9.6 cache: directories: - - "$HOME/.m2" - - "$HOME/.cache/yarn" + - $HOME/.m2 + - $HOME/.cache/yarn # Install semantic-release before_script: - yarn global add @conveyal/maven-semantic-release semantic-release@15 @@ -17,6 +22,8 @@ before_install: # set region in AWS config for S3 setup - mkdir ~/.aws && printf '%s\n' '[default]' 'aws_access_key_id=foo' 'aws_secret_access_key=bar' 'region=us-east-1' > ~/.aws/config - cp configurations/default/server.yml.tmp configurations/default/server.yml +# create database for tests +- if [ "$SHOULD_RUN_E2E" = "true" ]; then psql -U postgres -c 'CREATE DATABASE catalogue;'; fi script: # package jar - mvn package diff --git a/src/test/java/com/conveyal/datatools/DatatoolsTest.java b/src/test/java/com/conveyal/datatools/DatatoolsTest.java index 95601b458..a62475e2c 100644 --- a/src/test/java/com/conveyal/datatools/DatatoolsTest.java +++ b/src/test/java/com/conveyal/datatools/DatatoolsTest.java @@ -25,22 +25,6 @@ public static void setUp() { String[] args = {"configurations/default/env.yml.tmp", "configurations/default/server.yml.tmp"}; try { DataManager.main(args); - // Attempt to create database for testing. - String databaseUrl = DataManager.getConfigPropertyAsText("GTFS_DATABASE_URL"); - String databaseName = databaseUrl.split("/")[3]; - try { - Connection connection = DataManager.GTFS_DATA_SOURCE.getConnection(); - // Auto-commit must be enabled for a create database command. - connection.setAutoCommit(true); - String createDBSql = String.format("CREATE DATABASE %s", databaseName); - LOG.info(createDBSql); - connection - .prepareStatement(createDBSql) - .execute(); - } catch (SQLException e) { - // Catch already exists error. - e.printStackTrace(); - } setUpIsDone = true; } catch (IOException e) { e.printStackTrace(); From 97e742fc1b941322b60b100e64a70d4d905489af Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Wed, 3 Apr 2019 14:01:02 -0400 Subject: [PATCH 33/83] build(travis): always create postgres db for tests --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 0903f7043..b4d0bc5e7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,7 +23,7 @@ before_install: - mkdir ~/.aws && printf '%s\n' '[default]' 'aws_access_key_id=foo' 'aws_secret_access_key=bar' 'region=us-east-1' > ~/.aws/config - cp configurations/default/server.yml.tmp configurations/default/server.yml # create database for tests -- if [ "$SHOULD_RUN_E2E" = "true" ]; then psql -U postgres -c 'CREATE DATABASE catalogue;'; fi +- psql -U postgres -c 'CREATE DATABASE catalogue;' script: # package jar - mvn package From 026f5777b2d75ca809c43854eb441779e3ee2b9d Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Wed, 3 Apr 2019 17:15:01 -0400 Subject: [PATCH 34/83] build(pom): bump gtfs-lib to 4.3.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7ba9e9977..7cf29c2ba 100644 --- a/pom.xml +++ b/pom.xml @@ -247,7 +247,7 @@ com.conveyal gtfs-lib - 4.3.0 + 4.3.1 From 97dffeaf2bfe8ab4faf5701718cb4f4b941d625d Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 4 Apr 2019 12:20:40 -0400 Subject: [PATCH 35/83] refactor(feedValidationResultSummary): add FeedSource#publishedValidation and add IDs to summary --- .../datatools/manager/models/Deployment.java | 2 +- .../datatools/manager/models/FeedSource.java | 23 ++++++++++- .../models/FeedValidationResultSummary.java | 41 +++++++++++-------- .../datatools/manager/models/FeedVersion.java | 2 +- 4 files changed, 46 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/models/Deployment.java b/src/main/java/com/conveyal/datatools/manager/models/Deployment.java index 312046628..94156e21f 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Deployment.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Deployment.java @@ -448,7 +448,7 @@ public static class SummarizedFeedVersion { public int version; public SummarizedFeedVersion (FeedVersion version) { - this.validationResult = new FeedValidationResultSummary(version.validationResult, version.feedLoadResult); + this.validationResult = new FeedValidationResultSummary(version); this.feedSource = version.parentFeedSource(); this.updated = version.updated; this.id = version.id; diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java index 8eb2e8d68..508156cd0 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java @@ -304,6 +304,26 @@ public FeedVersion retrieveLatest() { return newestVersion; } + public FeedVersion retrievePublished() { + if (this.publishedVersionId == null) return null; + FeedVersion publishedVersion = Persistence.feedVersions + // Sort is unnecessary here. + .getOneFiltered(eq("namespace", this.publishedVersionId), Sorts.descending("version")); + if (publishedVersion == null) { + // Is this what happens if there are none? + return null; + } + return publishedVersion; + } + + @JsonInclude(JsonInclude.Include.NON_NULL) + @JsonView(JsonViews.UserInterface.class) + @JsonProperty("publishedValidation") + private FeedValidationResultSummary publishedValidation() { + FeedVersion publishedVersion = retrievePublished(); + return publishedVersion != null ? new FeedValidationResultSummary(publishedVersion) : null; + } + @JsonInclude(JsonInclude.Include.NON_NULL) @JsonView(JsonViews.UserInterface.class) @JsonProperty("latestVersionId") @@ -332,8 +352,7 @@ public Date lastUpdated() { @JsonProperty("latestValidation") public FeedValidationResultSummary latestValidation() { FeedVersion latest = retrieveLatest(); - ValidationResult result = latest != null ? latest.validationResult : null; - return result != null ?new FeedValidationResultSummary(result, latest.feedLoadResult) : null; + return latest != null ? new FeedValidationResultSummary(latest) : null; } // TODO: figure out some way to indicate whether feed has been edited since last snapshot (i.e, there exist changes) diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedValidationResultSummary.java b/src/main/java/com/conveyal/datatools/manager/models/FeedValidationResultSummary.java index a85fd2590..1862efa9f 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedValidationResultSummary.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedValidationResultSummary.java @@ -15,7 +15,10 @@ */ public class FeedValidationResultSummary implements Serializable { private static final long serialVersionUID = 1L; - + // Include feed ID and namespace here so the client can trace back to the full feed version if this is nested under + // a feed source. + public String feedVersionId; + public String namespace; public LoadStatus loadStatus; @JsonInclude(Include.ALWAYS) @@ -45,27 +48,29 @@ public class FeedValidationResultSummary implements Serializable { /** * Construct a summarized version of the given FeedValidationResult. - * @param validationResult */ - public FeedValidationResultSummary (ValidationResult validationResult, FeedLoadResult feedLoadResult) { - if (validationResult != null) { - this.loadStatus = validationResult.fatalException == null + public FeedValidationResultSummary (FeedVersion version) { + this.feedVersionId = version.id; + this.namespace = version.namespace; + // If feed load failed (and is null), construct an empty result to avoid NPEs. + if (version.feedLoadResult == null) { + version.feedLoadResult = new FeedLoadResult(true); + } + if (version.validationResult != null) { + this.loadStatus = version.validationResult.fatalException == null ? LoadStatus.SUCCESS : LoadStatus.OTHER_FAILURE; - this.loadFailureReason = validationResult.fatalException; + this.loadFailureReason = version.validationResult.fatalException; if (loadStatus == LoadStatus.SUCCESS) { - if (feedLoadResult == null) { - feedLoadResult = new FeedLoadResult(true); - } - this.errorCount = validationResult.errorCount; - this.agencyCount = feedLoadResult.agency.rowCount; - this.routeCount = feedLoadResult.routes.rowCount; - this.stopCount = feedLoadResult.stops.rowCount; - this.tripCount = feedLoadResult.trips.rowCount; - this.stopTimesCount = feedLoadResult.stopTimes.rowCount; - this.startDate = validationResult.firstCalendarDate; - this.endDate = validationResult.lastCalendarDate; - this.bounds = boundsFromValidationResult(validationResult); + this.errorCount = version.validationResult.errorCount; + this.agencyCount = version.feedLoadResult.agency.rowCount; + this.routeCount = version.feedLoadResult.routes.rowCount; + this.stopCount = version.feedLoadResult.stops.rowCount; + this.tripCount = version.feedLoadResult.trips.rowCount; + this.stopTimesCount = version.feedLoadResult.stopTimes.rowCount; + this.startDate = version.validationResult.firstCalendarDate; + this.endDate = version.validationResult.lastCalendarDate; + this.bounds = boundsFromValidationResult(version.validationResult); // FIXME: compute avg revenue time // this.avgDailyRevenueTime = validationResult.avgDailyRevenueTime; } diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedVersion.java b/src/main/java/com/conveyal/datatools/manager/models/FeedVersion.java index f40711036..d4879056d 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedVersion.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedVersion.java @@ -168,7 +168,7 @@ public Feed retrieveFeed() { @JsonView(JsonViews.UserInterface.class) @BsonProperty("validationSummary") public FeedValidationResultSummary validationSummary() { - return new FeedValidationResultSummary(validationResult, feedLoadResult); + return new FeedValidationResultSummary(this); } From 4d2d0e4275a7265df960ad88df97925b25802dc7 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 4 Apr 2019 12:55:05 -0400 Subject: [PATCH 36/83] refactor(feedsource): publishedValidation -> publishedValidationSummary --- .../com/conveyal/datatools/manager/models/FeedSource.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java index 508156cd0..21705fb6e 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java @@ -318,8 +318,8 @@ public FeedVersion retrievePublished() { @JsonInclude(JsonInclude.Include.NON_NULL) @JsonView(JsonViews.UserInterface.class) - @JsonProperty("publishedValidation") - private FeedValidationResultSummary publishedValidation() { + @JsonProperty("publishedValidationSummary") + private FeedValidationResultSummary publishedValidationSummary() { FeedVersion publishedVersion = retrievePublished(); return publishedVersion != null ? new FeedValidationResultSummary(publishedVersion) : null; } From f5c677836ad255649e17bde8861071fd3bdc461a Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 8 Apr 2019 09:59:13 -0400 Subject: [PATCH 37/83] refactor(FeedSource): retrievePublished --> retrievePublishedVersion --- .../com/conveyal/datatools/manager/models/FeedSource.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java index 21705fb6e..997435345 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java @@ -9,7 +9,6 @@ import com.conveyal.datatools.manager.persistence.FeedStore; import com.conveyal.datatools.manager.persistence.Persistence; import com.conveyal.datatools.manager.utils.HashUtils; -import com.conveyal.gtfs.validator.ValidationResult; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; @@ -304,7 +303,7 @@ public FeedVersion retrieveLatest() { return newestVersion; } - public FeedVersion retrievePublished() { + public FeedVersion retrievePublishedVersion() { if (this.publishedVersionId == null) return null; FeedVersion publishedVersion = Persistence.feedVersions // Sort is unnecessary here. @@ -320,7 +319,7 @@ public FeedVersion retrievePublished() { @JsonView(JsonViews.UserInterface.class) @JsonProperty("publishedValidationSummary") private FeedValidationResultSummary publishedValidationSummary() { - FeedVersion publishedVersion = retrievePublished(); + FeedVersion publishedVersion = retrievePublishedVersion(); return publishedVersion != null ? new FeedValidationResultSummary(publishedVersion) : null; } From f7eb459569243a66ee27d51479fac2186ae71db8 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 8 Apr 2019 10:06:13 -0400 Subject: [PATCH 38/83] refactor(FeedSource): add clarifying comments --- .../datatools/manager/models/FeedSource.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java index 997435345..3f428a0b0 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java @@ -110,6 +110,15 @@ public String organizationId () { */ public String snapshotVersion; + /** + * The SQL namespace for the most recently verified published {@link FeedVersion}. + * + * FIXME During migration to RDBMS for GTFS data, this field changed to map to the SQL unique ID, + * however the name of the field suggests it maps to the feed version ID stored in MongoDB. Now + * that both published namespace/version ID are available in {@link #publishedValidationSummary()} + * it might make sense to migrate this field back to the versionID for MTC (or rename it to + * publishedNamespace). Both efforts would require some level of db migration + code changes. + */ public String publishedVersionId; public String editorNamespace; @@ -303,6 +312,10 @@ public FeedVersion retrieveLatest() { return newestVersion; } + /** + * Fetches the published {@link FeedVersion} for this feed source according to the + * {@link #publishedVersionId} field (which currently maps to {@link FeedVersion#namespace}. + */ public FeedVersion retrievePublishedVersion() { if (this.publishedVersionId == null) return null; FeedVersion publishedVersion = Persistence.feedVersions From 99e7f775df7ef195b76da71def6b7dd921815cb5 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 8 Apr 2019 11:57:31 -0400 Subject: [PATCH 39/83] build(pom): bump gtfs-lib to 4.3.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7cf29c2ba..6aeb0d5f4 100644 --- a/pom.xml +++ b/pom.xml @@ -247,7 +247,7 @@ com.conveyal gtfs-lib - 4.3.1 + 4.3.2 From c639c366487d77cb8639bee06444217a0a741c56 Mon Sep 17 00:00:00 2001 From: robbi5 Date: Sat, 13 Apr 2019 20:46:19 +0200 Subject: [PATCH 40/83] fix(users): update auth0 search engine to v3 As documented in https://auth0.com/docs/users/search/v2: > User search v2 has been deprecated as of June 6th 2018. Tenants created after this date will not have the option of using it. We recommend that you use User Search v3 instead. The used query works with v2 and v3 and doesn't need to be adjusted. See also: https://github.com/conveyal/datatools-ui/issues/406 --- .../java/com/conveyal/datatools/manager/auth/Auth0Users.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index 43f0ef54d..aa1226777 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -49,11 +49,11 @@ private static URI getUrl(String searchQuery, int page, int perPage, boolean inc builder.setParameter("page", Integer.toString(page)); builder.setParameter("include_totals", Boolean.toString(includeTotals)); if (searchQuery != null) { - builder.setParameter("search_engine", "v2"); + builder.setParameter("search_engine", "v3"); builder.setParameter("q", searchQuery + " AND " + defaultQuery); } else { - builder.setParameter("search_engine", "v2"); + builder.setParameter("search_engine", "v3"); builder.setParameter("q", defaultQuery); } From d94f40e9948e08e302eec86c311d96495872a637 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Tue, 23 Apr 2019 18:39:04 -0400 Subject: [PATCH 41/83] refactor(merge-feeds): address PR comments --- .../manager/gtfsplus/CalendarAttribute.java | 8 +- .../datatools/manager/gtfsplus/Direction.java | 4 +- .../manager/gtfsplus/FareRiderCategory.java | 4 +- .../manager/gtfsplus/FareZoneAttribute.java | 4 +- .../manager/gtfsplus/GtfsPlusTable.java | 10 + .../manager/gtfsplus/RealtimeRoute.java | 4 +- .../manager/gtfsplus/RealtimeStop.java | 4 +- .../manager/gtfsplus/RealtimeTrip.java | 4 +- .../manager/gtfsplus/RiderCategory.java | 4 +- .../manager/gtfsplus/StopAttribute.java | 4 +- .../datatools/manager/gtfsplus/TimePoint.java | 4 +- .../manager/gtfsplus/package-info.java | 16 + .../datatools/manager/jobs/MergeFeedsJob.java | 705 +++++++++++------- .../manager/jobs/MergeFeedsResult.java | 14 +- .../datatools/manager/models/Model.java | 6 + .../manager/jobs/MergeFeedsJobTest.java | 30 +- .../conveyal/datatools/napa-no-agency-id.zip | Bin 0 -> 314463 bytes 17 files changed, 524 insertions(+), 301 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java create mode 100644 src/test/resources/com/conveyal/datatools/napa-no-agency-id.zip diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java index ad16d471e..10cea50c0 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java @@ -2,6 +2,7 @@ import com.conveyal.gtfs.model.Entity; +import javax.naming.OperationNotSupportedException; import java.sql.PreparedStatement; import java.sql.SQLException; @@ -12,9 +13,8 @@ public class CalendarAttribute extends Entity { public String service_id; public String service_description; - // TODO - @Override - public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) { + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java index 9e5666d0a..4d618a12a 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java @@ -14,9 +14,9 @@ public class Direction extends Entity { public String direction; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java index 000632b56..6d759c062 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java @@ -16,9 +16,9 @@ public class FareRiderCategory extends Entity { public LocalDate expiration_date; public LocalDate commencement_date; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java index 780ec62be..099f81b33 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java @@ -12,9 +12,9 @@ public class FareZoneAttribute extends Entity { public String zone_id; public String zone_name; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java index 062aa5664..2255e36d6 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java @@ -11,6 +11,12 @@ import static com.conveyal.gtfs.loader.Requirement.PROPRIETARY; import static com.conveyal.gtfs.loader.Requirement.REQUIRED; +/** + * This class contains GTFS+ table definitions that are based on gtfs-lib's {@link Table} constants. + * Currently, these are only used when operating on tables being merged within + * {@link com.conveyal.datatools.manager.jobs.MergeFeedsJob}. The definition of these tables can be + * found at https://www.transitwiki.org/TransitWiki/images/e/e7/GTFS%2B_Additional_Files_Format_Ver_1.7.pdf. + */ public class GtfsPlusTable { public static final Table REALTIME_ROUTES = new Table("realtime_routes", RealtimeRoute.class, PROPRIETARY, new StringField("route_id", REQUIRED).isReferenceTo(Table.ROUTES), @@ -72,6 +78,10 @@ public class GtfsPlusTable { new StringField("zone_name", REQUIRED) ); + /** + * List of tables in the order such that internal references can be appropriately checked as + * tables are loaded/encountered. + */ public static final Table[] tables = new Table[] { REALTIME_ROUTES, REALTIME_STOPS, diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java index 93d33d9c3..e6c996aa5 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java @@ -13,9 +13,9 @@ public class RealtimeRoute extends Entity { public String realtime_routename; public String realtime_routecode; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java index 94033fa76..51a9f3551 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java @@ -13,9 +13,9 @@ public class RealtimeStop extends Entity { public String stop_id; public String realtime_stop_id; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java index d2acbf42f..133990209 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java @@ -12,9 +12,9 @@ public class RealtimeTrip extends Entity { public String trip_id; public String realtime_trip_id; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java index 3b44b487c..82442b13b 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java @@ -12,9 +12,9 @@ public class RiderCategory extends Entity { public int rider_category_id; public String rider_category_description; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java index 84b19e834..e2c0ba8f8 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java @@ -15,9 +15,9 @@ public class StopAttribute extends Entity { public String relative_position; public String stop_city; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java index 8e2c83af1..458ba86e3 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java @@ -12,9 +12,9 @@ public class TimePoint extends Entity { public String trip_id; public String stop_id; - // TODO @Override public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException { - + throw new UnsupportedOperationException( + "Cannot call setStatementParameters because loading a GTFS+ table into RDBMS is unsupported."); } } diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java new file mode 100644 index 000000000..03845bbea --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java @@ -0,0 +1,16 @@ +/** + * This package contains classes that correspond to those found for GTFS entity types in + * {@link com.conveyal.gtfs.model}, but for GTFS+ entity types. It also contains + * {@link com.conveyal.datatools.manager.gtfsplus.GtfsPlusTable}, which extends the + * {@link com.conveyal.gtfs.loader.Table} in order to define a table specification for this set of + * extension tables. + * + * Note: these classes are primarily used for the MTC merge type in + * {@link com.conveyal.datatools.manager.jobs.MergeFeedsJob}. There may be an opportunity to also use + * these classes in the GTFS+ validation code path found in + * {@link com.conveyal.datatools.manager.controllers.api.GtfsPlusController}; however, + * TODO a way to define an enum set for string field values would need to first be added to support + * fields such as {@link com.conveyal.datatools.manager.gtfsplus.StopAttribute#cardinal_direction}. + */ +package com.conveyal.datatools.manager.gtfsplus; + diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 15b9d9d3b..753c51edf 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -16,13 +16,13 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.time.LocalDate; import java.time.temporal.ChronoUnit; +import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.HashMap; @@ -31,6 +31,7 @@ import java.util.Map; import java.util.Objects; import java.util.Set; +import java.util.UUID; import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; @@ -46,21 +47,70 @@ * This job handles merging two or more feed versions according to logic specific to the specified merge type. * The current merge types handled here are: * - {@link MergeFeedsType#REGIONAL}: this is essentially a "dumb" merge. For each feed version, each primary key is - * scoped so that there is no possibility that it will conflict with other IDs - * found in any other feed version. Note: There is absoluately no attempt to merge - * entities based on either expected shared IDs or entity location (e.g., stop - * coordinates). + * scoped so that there is no possibility that it will conflict with other IDs + * found in any other feed version. Note: There is absolutely no attempt to merge + * entities based on either expected shared IDs or entity location (e.g., stop + * coordinates). * - {@link MergeFeedsType#MTC}: this strategy is defined in detail at https://github.com/conveyal/datatools-server/issues/185, - * but in essence, this strategy attempts to merge a current and future feed into - * a combined file. For certain entities (specifically stops and routes) it uses - * alternate fields as primary keys (stop_code and route_short_name) if they are - * available. There is some complexity related to this in {@link #constructMergedTable(Table, List)}. - * Another defining characteristic is to prefer entities defined in the "future" - * file if there are matching entities in the current file. + * but in essence, this strategy attempts to merge a current and future feed into + * a combined file. For certain entities (specifically stops and routes) it uses + * alternate fields as primary keys (stop_code and route_short_name) if they are + * available. There is some complexity related to this in {@link #constructMergedTable(Table, List, ZipOutputStream)}. + * Another defining characteristic is to prefer entities defined in the "future" + * file if there are matching entities in the current file. * Future merge strategies could be added here. For example, some potential customers have mentioned a desire to * prefer entities from the "current" version, so that entities edited in Data Tools would override the values found * in the "future" file, which may have limited data attributes due to being exported from scheduling software with * limited GTFS support. + * + * Reproduced from https://github.com/conveyal/datatools-server/issues/185 on 2019/04/23: + * + * 1. When a new GTFS+ feed is loaded in TDM, check as part of the loading and validation process if + * the dataset is for a future date. (If all services start in the future, consider the dataset + * to be for the future). + * 2. If it is a future dataset, automatically notify the user that the feed needs to be merged with + * most recent active version or a selected one in order to further process the feed. + * 3. Use the chosen version to merge the future feed. The merging process needs to be efficient so + * that the user doesn’t need to wait more than a tolerable time. + * 4. The merge process shall compare the current and future datasets, validate the following rules + * and generate the Merge Validation Report: + * i. Merging will be based on route_short_name in the current and future datasets. All matching + * route_short_names between the datasets shall be considered same route. Any route_short_name + * in active data not present in the future will be appended to the future routes file. + * ii. Future feed_info.txt file should get priority over active feed file when difference is + * identified. + * iii. When difference is found in agency.txt file between active and future feeds, the future + * agency.txt file data should be used. Possible issue with missing agency_id referenced by routes + * iv. When stop_code is included, stop merging will be based on that. If stop_code is not + * included, it will be based on stop_id. All stops in future data will be carried forward and + * any stops found in active data that are not in the future data shall be appended. If one + * of the feed is missing stop_code, merge fails with a notification to the user with + * suggestion that the feed with missing stop_code must be fixed with stop_code. + * v. If any service_id in the active feed matches with the future feed, it should be modified + * and all associated trip records must also be changed with the modified service_id. + * If a service_id from the active calendar has both the start_date and end_date in the + * future, the service shall not be appended to the merged file. Records in trips, + * calendar_dates, and calendar_attributes referencing this service_id shall also be + * removed/ignored. Stop_time records for the ignored trips shall also be removed. + * If a service_id from the active calendar has only the end_date in the future, the end_date + * shall be set to one day prior to the earliest start_date in future dataset before appending + * the calendar record to the merged file. + * trip_ids between active and future datasets must not match. If any trip_id is found to be + * matching, the merge should fail with appropriate notification to user with the cause of the + * failure. Notification should include all matched trip_ids. + * vi. New shape_ids in the future datasets should be appended in the merged feed. + * vii. Merging fare_attributes will be based on fare_id in the current and future datasets. All + * matching fare_ids between the datasets shall be considered same fare. Any fare_id in active + * data not present in the future will be appended to the future fare_attributes file. + * viii. All fare rules from the future dataset will be included. Any identical fare rules from + * the current dataset will be discarded. Any fare rules unique to the current dataset will be + * appended to the future file. + * ix. All transfers.txt entries with unique stop pairs (from - to) from both the future and + * current datasets will be included in the merged file. Entries with duplicate stop pairs from + * the current dataset will be discarded. + * x. All GTFS+ files should be merged based on how the associated base GTFS file is merged. For + * example, directions for routes that are not in the future routes.txt file should be appended + * to the future directions.txt file in the merged feed. */ public class MergeFeedsJob extends MonitorableJob { @@ -78,16 +128,19 @@ public class MergeFeedsJob extends MonitorableJob { public boolean failOnDuplicateTripId = true; /** - * @param owner user ID that initiated job - * @param feedVersions set of feed versions to merge - * @param file resulting merge filename (without .zip) - * @param mergeType the type of merge to perform (@link MergeFeedsType) + * @param owner user ID that initiated job + * @param feedVersions set of feed versions to merge + * @param file resulting merge filename (without .zip) + * @param mergeType the type of merge to perform (@link MergeFeedsType) */ - public MergeFeedsJob(String owner, Set feedVersions, String file, MergeFeedsType mergeType) { - super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); + public MergeFeedsJob(String owner, Set feedVersions, String file, + MergeFeedsType mergeType) { + super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", + JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; // Grab parent feed source if performing non-regional merge (each version should share the same feed source). - this.feedSource = mergeType.equals(REGIONAL) ? null : feedVersions.iterator().next().parentFeedSource(); + this.feedSource = + mergeType.equals(REGIONAL) ? null : feedVersions.iterator().next().parentFeedSource(); // Construct full filename with extension this.filename = String.format("%s.zip", file); // If the merge type is regional, the file string should be equivalent to projectId, which is used by the client @@ -108,7 +161,9 @@ public void jobFinished() { // permanently. if (!mergedTempFile.delete()) { // FIXME: send to bugsnag? - LOG.error("Merged feed file {} not deleted. This may contribute to storage space shortages.", mergedTempFile.getAbsolutePath()); + LOG.error( + "Merged feed file {} not deleted. This may contribute to storage space shortages.", + mergedTempFile.getAbsolutePath()); } } @@ -116,8 +171,7 @@ public void jobFinished() { * Primary job logic handles collecting and sorting versions, creating a merged table for all versions, and writing * the resulting zip file to storage. */ - @Override - public void jobLogic() throws IOException { + @Override public void jobLogic() throws IOException { // Create temp zip file to add merged feed content to. mergedTempFile = File.createTempFile(filename, null); mergedTempFile.deleteOnExit(); @@ -127,9 +181,9 @@ public void jobLogic() throws IOException { List feedsToMerge = collectAndSortFeeds(feedVersions); // Determine which tables to merge (only merge GTFS+ tables for MTC extension). - final List

tablesToMerge = Arrays.stream(Table.tablesInOrder) - .filter(Table::isSpecTable) - .collect(Collectors.toList()); + final List
tablesToMerge = + Arrays.stream(Table.tablesInOrder).filter(Table::isSpecTable) + .collect(Collectors.toList()); if (DataManager.isExtensionEnabled("mtc")) { // Merge GTFS+ tables only if MTC extension is enabled. We should do this for both regional and MTC merge // strategies. @@ -140,31 +194,21 @@ public void jobLogic() throws IOException { for (int i = 0; i < numberOfTables; i++) { Table table = tablesToMerge.get(i); double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; - status.update( "Merging " + table.name, percentComplete); + status.update("Merging " + table.name, percentComplete); // Perform the merge. - byte[] tableOut = constructMergedTable(table, feedsToMerge); - // If at least one feed has the table (i.e., tableOut is not null), include it in the merged feed. - if (tableOut != null) { - // Create entry for zip file. - ZipEntry tableEntry = new ZipEntry(table.name + ".txt"); - LOG.info("Writing {} to merged feed", table.name); - try { - out.putNextEntry(tableEntry); - out.write(tableOut); - out.closeEntry(); - } catch (IOException e) { - String message = String.format("Error writing to table %s", table.name); - LOG.error(message, e); - status.fail(message, e); - } - } else { + LOG.info("Writing {} to merged feed", table.name); + int mergedLineNumber = constructMergedTable(table, feedsToMerge, out); + if (mergedLineNumber == 0) { LOG.info("Skipping {} table. No entries found in zip files.", table.name); + } else if (mergedLineNumber == -1) { + LOG.error("Merge {} table failed!", table.name); } } // Close output stream for zip file. out.close(); // Handle writing file to storage (local or s3). - if (mergeFeedsResult.failed) status.fail("Merging feed versions failed."); + if (mergeFeedsResult.failed) + status.fail("Merging feed versions failed."); else { storeMergedFeed(); status.update(false, "Merged feed created successfully.", 100, true); @@ -174,7 +218,8 @@ public void jobLogic() throws IOException { // Handle the processing of the new version for non-regional merges (note: s3 upload is handled within this job). // We must add this job in jobLogic (rather than jobFinished) because jobFinished is called after this job's // subJobs are run. - ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(mergedVersion, owner, true); + ProcessSingleFeedJob processSingleFeedJob = + new ProcessSingleFeedJob(mergedVersion, owner, true); addNextJob(processSingleFeedJob); } } @@ -185,21 +230,20 @@ public void jobLogic() throws IOException { * required for the MTC merge strategy which prefers entities from the future dataset over past entities. */ private List collectAndSortFeeds(Set feedVersions) { - return feedVersions - .stream() - .map(version -> { - try { - return new FeedToMerge(version); - } catch (Exception e) { - LOG.error("Could not create zip file for version {}:", version.parentFeedSource(), version.version); - return null; - } - }) - .filter(Objects::nonNull) + return feedVersions.stream().map(version -> { + try { + return new FeedToMerge(version); + } catch (Exception e) { + LOG.error("Could not create zip file for version {}:", version.parentFeedSource(), + version.version); + return null; + } + }).filter(Objects::nonNull).filter(entry -> entry.version.validationResult != null + && entry.version.validationResult.firstCalendarDate != null) // MTC-specific sort mentioned in above comment. // TODO: If another merge strategy requires a different sort order, a merge type check should be added. - .sorted(Comparator.comparing(entry -> entry.version.validationResult.firstCalendarDate, Comparator.reverseOrder())) - .collect(Collectors.toList()); + .sorted(Comparator.comparing(entry -> entry.version.validationResult.firstCalendarDate, + Comparator.reverseOrder())).collect(Collectors.toList()); } /** @@ -213,10 +257,12 @@ private void storeMergedFeed() throws IOException { if (DataManager.useS3) { String s3Key = String.join("/", "project", filename); FeedStore.s3Client.putObject(DataManager.feedBucket, s3Key, mergedTempFile); - LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, s3Key); + LOG.info("Storing merged project feed at s3://{}/{}", DataManager.feedBucket, + s3Key); } else { try { - FeedVersion.feedStore.newFeed(filename, new FileInputStream(mergedTempFile), null); + FeedVersion.feedStore + .newFeed(filename, new FileInputStream(mergedTempFile), null); } catch (IOException e) { e.printStackTrace(); LOG.error("Could not store feed for project {}", filename); @@ -226,7 +272,8 @@ private void storeMergedFeed() throws IOException { } else { // Store the zip file for the merged feed version. try { - FeedVersion.feedStore.newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), feedSource); + FeedVersion.feedStore + .newFeed(mergedVersion.id, new FileInputStream(mergedTempFile), feedSource); } catch (IOException e) { LOG.error("Could not store merged feed for new version"); throw e; @@ -236,11 +283,14 @@ private void storeMergedFeed() throws IOException { /** * Merge the specified table for multiple GTFS feeds. - * @param table table to merge + * + * @param table table to merge * @param feedsToMerge map of feedSources to zipFiles from which to extract the .txt tables - * @return single merged table for feeds or null if the table did not exist for any feed + * @param out output stream to write table into + * @return number of lines in merged table */ - private byte[] constructMergedTable(Table table, List feedsToMerge) throws IOException { + private int constructMergedTable(Table table, List feedsToMerge, + ZipOutputStream out) throws IOException { String keyField = table.getKeyFieldName(); String orderField = table.getOrderFieldName(); if (mergeType.equals(MTC)) { @@ -257,9 +307,8 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) break; } } - // Set up objects for outputting the data and tracking the rows encountered - ByteArrayOutputStream tableOut = new ByteArrayOutputStream(); - Map rowValuesForKeys = new HashMap<>(); + // Set up objects for tracking the rows encountered + Map rowValuesForStopOrRouteId = new HashMap<>(); Set rowStrings = new HashSet<>(); int mergedLineNumber = 0; // Get the spec fields to export @@ -268,14 +317,22 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) try { // Iterate over each zip file. for (int feedIndex = 0; feedIndex < feedsToMerge.size(); feedIndex++) { + boolean keyFieldMissing = false; + // Use for a new agency ID for use if the feed does not contain one. Initialize to + // null. If the value becomes non-null, the agency_id is missing and needs to be + // replaced with the generated value stored in this variable. + String newAgencyId = null; mergeFeedsResult.feedCount++; - // FIXME add check for merge type. - if (feedIndex > 0 && (table.name.equals("agency") || table.name.equals("feed_info")) && mergeType.equals(MTC)) { - // Always prefer future file for agency and feed_info tables, which means that we can skip - // iterations following the first one. - // FIXME: This could cause issues with routes or fares that reference an agency_id that no longer - // exists. - LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, feedIndex, feedsToMerge.size()); + if (feedIndex > 0 && (table.name.equals("feed_info") || + (mergeType.equals(MTC) && table.name.equals("agency")))) { + // Always prefer the "future" file for the feed_info table, which means + // we can skip any iterations following the first one. If merging the agency + // table, we should only skip the following feeds if performing an MTC merge + // because that logic assumes the two feeds share the same agency (or agencies). + // FIXME: This could cause issues with routes or fares that reference an + // agency_id that no longer exists. + LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, + feedIndex, feedsToMerge.size()); continue; } FeedToMerge feed = feedsToMerge.get(feedIndex); @@ -284,47 +341,78 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) // Generate ID prefix to scope GTFS identifiers to avoid conflicts. String idScope = getCleanName(feedSource.name) + version.version; CsvReader csvReader = table.getCsvReader(feed.zipFile, null); - // If csv reader is null, the table was not found in the zip file. There is no need to handle merging - // this table for the current zip file. + // If csv reader is null, the table was not found in the zip file. There is no need + // to handle merging this table for the current zip file. if (csvReader == null) { - LOG.warn("Table {} not found in the zip file for {}{}", table.name, feedSource.name, version.version); + LOG.warn("Table {} not found in the zip file for {}{}", table.name, + feedSource.name, version.version); continue; } LOG.info("Adding {} table for {}{}", table.name, feedSource.name, version.version); - Field[] fieldsFoundInZip = table.getFieldsFromFieldHeaders(csvReader.getHeaders(), null); + Field[] fieldsFoundInZip = + table.getFieldsFromFieldHeaders(csvReader.getHeaders(), null); List fieldsFoundList = Arrays.asList(fieldsFoundInZip); // Determine the index of the key field for this version's table. int keyFieldIndex = getFieldIndex(fieldsFoundInZip, keyField); + if (keyFieldIndex == -1) { + LOG.error("No {} field exists for {} table (feed={})", keyField, table.name, + feed.version.id); + keyFieldMissing = true; + // If there is no agency_id for agency table, create one and ensure that + // route#agency_id gets set. + } int lineNumber = 0; // Iterate over rows in table, writing them to the out file. while (csvReader.readRecord()) { String keyValue = csvReader.get(keyFieldIndex); - // FIXME add check for merge type? - if (mergeType.equals(MTC) && lineNumber == 0 && table.name.equals("stops")) { - // For the first line of the stops table, check that the alt. key - // field (stop_code) is present. If it is not, revert to the original key field. - if (feedIndex == 0) { - // Check that the first file contains stop_code values. - if ("".equals(keyValue)) { - LOG.warn("stop_code is not present in file {}/{}. Reverting to stop_id", feedIndex, feedsToMerge.size()); - // If the key value for stop_code is not present, revert to stop_id. - keyField = table.getKeyFieldName(); - keyFieldIndex = table.getKeyFieldIndex(fieldsFoundInZip); - keyValue = csvReader.get(keyFieldIndex); - stopCodeMissingFromFirstTable = true; + // Check certain initial conditions on the first line of the file. + if (lineNumber == 0) { + if (table.name.equals(Table.AGENCY.name) && (keyFieldMissing || keyValue + .equals(""))) { + // agency_id is optional if only one agency is present, but that will + // cause issues for the feed merge, so we need to insert an agency_id + // for the single entry. + newAgencyId = UUID.randomUUID().toString(); + if (keyFieldMissing) { + + // Only add agency_id field if it is missing in table. + List fieldsList = + new ArrayList<>(Arrays.asList(fieldsFoundInZip)); + fieldsList.add(Table.AGENCY.fields[0]); + fieldsFoundInZip = fieldsList.toArray(fieldsFoundInZip); } - } else { - // Check whether stop_code exists for the subsequent files. - String firstStopCodeValue = csvReader.get(getFieldIndex(fieldsFoundInZip, "stop_code")); - if (stopCodeMissingFromFirstTable && !"".equals(firstStopCodeValue)) { - // If stop_code was missing from the first file and exists for the second, we consider - // that a failing error. - mergeFeedsResult.failed = true; - mergeFeedsResult.errorCount++; - mergeFeedsResult.failureReasons.add( - "If one stops.txt file contains stop_codes, both feed versions must stop_codes." - ); + fieldsFoundList = Arrays.asList(fieldsFoundInZip); + } + if (mergeType.equals(MTC) && table.name.equals("stops")) { + // For the first line of the stops table, check that the alt. key + // field (stop_code) is present. If it is not, revert to the original + // key field. This is only pertinent for the MTC merge type. + if (feedIndex == 0) { + // Check that the first file contains stop_code values. + if ("".equals(keyValue)) { + LOG.warn( + "stop_code is not present in file {}/{}. Reverting to stop_id", + feedIndex, feedsToMerge.size()); + // If the key value for stop_code is not present, revert to stop_id. + keyField = table.getKeyFieldName(); + keyFieldIndex = table.getKeyFieldIndex(fieldsFoundInZip); + keyValue = csvReader.get(keyFieldIndex); + stopCodeMissingFromFirstTable = true; + } + } else { + // Check whether stop_code exists for the subsequent files. + String firstStopCodeValue = + csvReader.get(getFieldIndex(fieldsFoundInZip, "stop_code")); + if (stopCodeMissingFromFirstTable && !"" + .equals(firstStopCodeValue)) { + // If stop_code was missing from the first file and exists for + // the second, we consider that a failing error. + mergeFeedsResult.failed = true; + mergeFeedsResult.errorCount++; + mergeFeedsResult.failureReasons.add( + "If one stops.txt file contains stop_codes, both feed versions must stop_codes."); + } } } } @@ -337,154 +425,225 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) } // Piece together the row to write, which should look practically identical to the original // row except for the identifiers receiving a prefix to avoid ID conflicts. - for (int specFieldIndex = 0; specFieldIndex < specFields.size(); specFieldIndex++) { + for (int specFieldIndex = 0; + specFieldIndex < specFields.size(); specFieldIndex++) { Field field = specFields.get(specFieldIndex); // Get index of field from GTFS spec as it appears in feed int index = fieldsFoundList.indexOf(field); String val = csvReader.get(index); + // Default value to write is unchanged from value found in csv. + String valueToWrite = val; + // Handle filling in agency_id if missing when merging regional feeds. + if (newAgencyId != null && field.name.equals("agency_id") && mergeType + .equals(REGIONAL)) { + if (val.equals("") && table.name.equals("agency") && lineNumber > 0) { + // If there is no agency_id value for a second (or greater) agency + // record, fail the merge feed job. + String message = String.format( + "Feed %s has multiple agency records but no agency_id values.", + feed.version.id); + mergeFeedsResult.failed = true; + mergeFeedsResult.failureReasons.add(message); + LOG.error(message); + return -1; + } + LOG.info("Updating {}#agency_id to (auto-generated) {} for ID {}", + table.name, newAgencyId, keyValue); + val = newAgencyId; + } // Determine if field is a GTFS identifier. - boolean isKeyField = field.isForeignReference() || keyField.equals(field.name); - Set idErrors = table.checkReferencesAndUniqueness(keyValue, lineNumber, field, val, referenceTracker, keyField, orderField); - // Store values for key fields that have been encountered. - switch (table.name) { - // case "calendar_dates": - case "calendar": - // If any service_id in the active feed matches with the future feed, it should be - // modified and all associated trip records must also be changed with the modified - // service_id. - // TODO How can we check that calendar_dates entries are duplicates? I think we would - // need to consider the service_id:exception_type:date as the unique key and include any - // all entries as long as they are unique on this key. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - String key = String.join(":", table.name, idScope, val); - // Modify service_id and ensure that referencing trips have service_id updated. - val = String.join(":", idScope, val); - mergeFeedsResult.remappedIds.put(key, val); - } - } - // If a service_id from the active calendar has both the start_date and end_date in the - // future, the service will be excluded from the merged file. Records in trips, - // calendar_dates, and calendar_attributes referencing this service_id shall also be - // removed/ignored. Stop_time records for the ignored trips shall also be removed. - if (feedIndex > 0) { - int startDateIndex = getFieldIndex(fieldsFoundInZip, "start_date"); - LocalDate startDate = LocalDate.parse(csvReader.get(startDateIndex), GTFS_DATE_FORMATTER); - if (startDate.isAfter(LocalDate.now())) { - LOG.warn("Skipping calendar entry {} because it operates in the future.", keyValue); - String key = String.join(":", table.name, idScope, keyValue); - mergeFeedsResult.skippedIds.add(key); - skipRecord = true; - continue; - } - // If a service_id from the active calendar has only the end_date in the future, the - // end_date shall be set to one day prior to the earliest start_date in future - // dataset before appending the calendar record to the merged file. - int endDateIndex = getFieldIndex(fieldsFoundInZip, "end_date"); - if (index == endDateIndex) { - LocalDate endDate = LocalDate.parse(csvReader.get(endDateIndex), GTFS_DATE_FORMATTER); - if (endDate.isAfter(LocalDate.now())) { - val = feedsToMerge.get(0).version.validationResult.firstCalendarDate - .minus(1, ChronoUnit.DAYS) - .format(GTFS_DATE_FORMATTER); + boolean isKeyField = + field.isForeignReference() || keyField.equals(field.name); + if (this.mergeType.equals(REGIONAL) && isKeyField && !val.isEmpty()) { + // For regional merge, if field is a GTFS identifier (e.g., route_id, + // stop_id, etc.), add scoped prefix. + valueToWrite = String.join(":", idScope, val); + } + // Only need to check for merge conflicts if using MTC merge type because + // the regional merge type scopes all identifiers by default. Also, the + // reference tracker will get far too large if we attempt to use it to + // track references for a large number of feeds (e.g., every feed in New + // York State). + if (mergeType.equals(MTC)) { + Set idErrors = table + .checkReferencesAndUniqueness(keyValue, lineNumber, field, val, + referenceTracker, keyField, orderField); + // Store values for key fields that have been encountered. + // TODO Consider using Strategy Pattern https://en.wikipedia.org/wiki/Strategy_pattern + // instead of a switch statement. + switch (table.name) { + case "calendar": + // If any service_id in the active feed matches with the future + // feed, it should be modified and all associated trip records + // must also be changed with the modified service_id. + // TODO How can we check that calendar_dates entries are + // duplicates? I think we would need to consider the + // service_id:exception_type:date as the unique key and include any + // all entries as long as they are unique on this key. + for (NewGTFSError error : idErrors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { + String key = getFieldScopedValue(table, idScope, val); + // Modify service_id and ensure that referencing trips + // have service_id updated. + val = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, val); } } - } - break; - case "trips": - // trip_ids between active and future datasets must not match. If any trip_id is found - // to be matching, the merge should fail with appropriate notification to user with the - // cause of the failure. Merge result should include all conflicting trip_ids. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - mergeFeedsResult.failureReasons.add("Trip ID conflict caused merge failure."); - mergeFeedsResult.idConflicts.add(error.badValue); - mergeFeedsResult.errorCount++; - if (failOnDuplicateTripId) mergeFeedsResult.failed = true; - skipRecord = true; + // If a service_id from the active calendar has both the + // start_date and end_date in the future, the service will be + // excluded from the merged file. Records in trips, + // calendar_dates, and calendar_attributes referencing this + // service_id shall also be removed/ignored. Stop_time records + // for the ignored trips shall also be removed. + if (feedIndex > 0) { + int startDateIndex = + getFieldIndex(fieldsFoundInZip, "start_date"); + LocalDate startDate = LocalDate + .parse(csvReader.get(startDateIndex), + GTFS_DATE_FORMATTER); + if (startDate.isAfter(LocalDate.now())) { + LOG.warn( + "Skipping calendar entry {} because it operates in the future.", + keyValue); + String key = + getFieldScopedValue(table, idScope, keyValue); + mergeFeedsResult.skippedIds.add(key); + skipRecord = true; + continue; + } + // If a service_id from the active calendar has only the + // end_date in the future, the end_date shall be set to one + // day prior to the earliest start_date in future dataset + // before appending the calendar record to the merged file. + int endDateIndex = + getFieldIndex(fieldsFoundInZip, "end_date"); + if (index == endDateIndex) { + LocalDate endDate = LocalDate + .parse(csvReader.get(endDateIndex), + GTFS_DATE_FORMATTER); + if (endDate.isAfter(LocalDate.now())) { + val = feedsToMerge.get( + 0).version.validationResult.firstCalendarDate + .minus(1, ChronoUnit.DAYS) + .format(GTFS_DATE_FORMATTER); + } + } } - } - break; - case "stops": - // When stop_code is included, stop merging will be based on that. If stop_code is not - // included, it will be based on stop_id. All stops in future data will be carried - // forward and any stops found in active data that are not in the future data shall be - // appended. If one of the feed is missing stop_code, merge fails with a notification to - // the user with suggestion that the feed with missing stop_code must be fixed with - // stop_code. - case "routes": - String primaryKeyValue = csvReader.get(table.getKeyFieldIndex(fieldsFoundInZip)); - Set primaryKeyErrors = table.checkReferencesAndUniqueness(primaryKeyValue, lineNumber, field, val, referenceTracker); - // Merging will be based on route_short_name in the current and future datasets. All - // matching route_short_names between the datasets shall be considered same route. Any - // route_short_name in active data not present in the future will be appended to the - // future routes file. - if (keyField.equals("stop_code") || keyField.equals("route_short_name")) { + break; + case "trips": + // trip_ids between active and future datasets must not match. If any trip_id is found + // to be matching, the merge should fail with appropriate notification to user with the + // cause of the failure. Merge result should include all conflicting trip_ids. for (NewGTFSError error : idErrors) { if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - // If we encounter a route that shares its short name with a previous route, - // we need to remap its route_id field so that references point to the previous - // route_id. - String currentId = index == 0 ? val : rowValues[0]; - String key = String.join(":", table.name, idScope, currentId); - // Extract the route_id value used for the route with matching short name. - String[] strings = rowValuesForKeys.get(val); - String id = strings[0]; - if (!id.equals(currentId)) { - // Remap this row's route_id to ensure that referencing trips have their - // route_id updated. - mergeFeedsResult.remappedIds.put(key, id); - } + mergeFeedsResult.failureReasons + .add("Trip ID conflict caused merge failure."); + mergeFeedsResult.idConflicts.add(error.badValue); + mergeFeedsResult.errorCount++; + if (failOnDuplicateTripId) + mergeFeedsResult.failed = true; skipRecord = true; } } - // Next check for regular ID conflicts (e.g., on route_id or stop_id) because any - // conflicts here will actually break the feed. This essentially handles the case - // where two routes have different short_names, but share the same route_id. We want - // both of these routes two end up in the merged feed in this case because we're - // matching on short name, so we must modify the route_id. - if (!skipRecord && !referenceTracker.transitIds.contains(String.join(":", keyField, keyValue))) { - for (NewGTFSError error : primaryKeyErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - String key = String.join(":", table.name, idScope, val); - // Modify route_id and ensure that referencing trips have route_id updated. - val = String.join(":", idScope, val); - mergeFeedsResult.remappedIds.put(key, val); + break; + case "stops": + // When stop_code is included, stop merging will be based on that. If stop_code is not + // included, it will be based on stop_id. All stops in future data will be carried + // forward and any stops found in active data that are not in the future data shall be + // appended. If one of the feed is missing stop_code, merge fails with a notification to + // the user with suggestion that the feed with missing stop_code must be fixed with + // stop_code. + // NOTE: route case is also used by the stops case, so the route + // case must follow this block. + case "routes": + // First, check uniqueness of primary key value (i.e., stop or route ID) + // in case the stop_code or route_short_name are being used. This + // must occur unconditionally because each record must be tracked + // by the reference tracker. + String primaryKeyValue = + csvReader.get(table.getKeyFieldIndex(fieldsFoundInZip)); + Set primaryKeyErrors = table + .checkReferencesAndUniqueness(primaryKeyValue, lineNumber, + field, val, referenceTracker); + // Merging will be based on route_short_name/stop_code in the current and future datasets. All + // matching route_short_names/stop_codes between the datasets shall be considered same route/stop. Any + // route_short_name/stop_code in active data not present in the future will be appended to the + // future routes/stops file. + if (keyField.equals("stop_code") || keyField + .equals("route_short_name")) { + for (NewGTFSError error : idErrors) { + if (error.errorType + .equals(NewGTFSErrorType.DUPLICATE_ID)) { + // If we encounter a route/stop that shares its alt. ID with a previous route/stop, + // we need to remap its route_id/stop_id field so that references point to the previous + // route_id/stop_id. + String currentId = index == 0 ? val : rowValues[0]; + String key = + getFieldScopedValue(table, idScope, currentId); + // Extract the route_id/stop_id value used for the route/stop with matching alt ID. + String[] strings = + rowValuesForStopOrRouteId.get(val); + String id = strings[0]; + if (!id.equals(currentId)) { + // Remap this row's route_id/stop_id to ensure + // that referencing entities (trips, stop_times) have their + // references updated. + mergeFeedsResult.remappedIds.put(key, id); + } + skipRecord = true; + } + } + // Next check for regular ID conflicts (e.g., on route_id or stop_id) because any + // conflicts here will actually break the feed. This essentially handles the case + // where two routes have different short_names, but share the same route_id. We want + // both of these routes to end up in the merged feed in this case because we're + // matching on short name, so we must modify the route_id. + if (!skipRecord && !referenceTracker.transitIds + .contains(String.join(":", keyField, keyValue))) { + for (NewGTFSError error : primaryKeyErrors) { + if (error.errorType + .equals(NewGTFSErrorType.DUPLICATE_ID)) { + String key = + getFieldScopedValue(table, idScope, val); + // Modify route_id and ensure that referencing trips have route_id updated. + val = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, val); + } + } + } + } else { + // Key field has defaulted to the standard primary key field (stop_id or route_id), + // which makes the check much simpler (just skip the duplicate record). + for (NewGTFSError error : idErrors) { + if (error.errorType + .equals(NewGTFSErrorType.DUPLICATE_ID)) { + skipRecord = true; } } } - } else { - // Key field has defaulted to the standard primary key field (stop_id or route_id), - // which makes the check much simpler (just skip the duplicate record). + + if (newAgencyId != null && field.name.equals("agency_id")) { + LOG.info( + "Updating route#agency_id to (auto-generated) {} for route={}", + newAgencyId, keyValue); + val = newAgencyId; + } + break; + default: + // For any other table, skip any duplicate record. for (NewGTFSError error : idErrors) { if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { skipRecord = true; } } - } - break; - case "transfers": - // For any other table, skip any duplicate record. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - skipRecord = true; - } - } - break; - default: - // For any other table, skip any duplicate record. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - skipRecord = true; - } - } - break; + break; + } } - String valueToWrite = val; + if (field.isForeignReference()) { // If the field is a foreign reference, check to see whether the reference has been // remapped due to a conflicting ID from another feed (e.g., calendar#service_id). - String key = String.join(":", field.referenceTable.name, idScope, val); + String key = getFieldScopedValue(field.referenceTable, idScope, val); if (mergeFeedsResult.remappedIds.containsKey(key)) { mergeFeedsResult.remappedReferences++; // If the value has been remapped update the value to write. @@ -494,79 +653,86 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) // record and add its primary key to the list of skipped IDs (so that other references can // be properly omitted). if (mergeFeedsResult.skippedIds.contains(key)) { - String skippedKey = String.join(":", table.name, idScope, keyValue); + String skippedKey = getFieldScopedValue(table, idScope, keyValue); if (orderField != null) { - skippedKey = String.join(":", - skippedKey, - csvReader.get(getFieldIndex(fieldsFoundInZip, orderField)) - ); + skippedKey = String.join(":", skippedKey, + csvReader.get(getFieldIndex(fieldsFoundInZip, orderField))); } mergeFeedsResult.skippedIds.add(skippedKey); skipRecord = true; continue; } } - if (this.mergeType.equals(REGIONAL) && isKeyField && !val.isEmpty()) { - // For regional merge, if field is a GTFS identifier (e.g., route_id, stop_id, etc.), - // add scoped prefix. - valueToWrite = String.join(":", idScope, val); - } - rowValues[specFieldIndex] = valueToWrite; } - if (table.name.equals("routes") && rowValues[0].contains("BART")) { - LOG.info("Route record: {}", rowValues[0]); - } // Do not write rows that are designated to be skipped. if (skipRecord && this.mergeType.equals(MTC)) { mergeFeedsResult.recordsSkipCount++; continue; } String newLine = String.join(",", rowValues); - if (!rowStrings.add(newLine)) { - // The line already exists in the output file, do not append it again. This prevents duplicate - // entries for certain files that do not contain primary keys (e.g., fare_rules and transfers) and - // do not otherwise have convenient ways to track uniqueness (like an order field). - // FIXME: add ordinal field/compound keys for transfers (from/to_stop_id) and fare_rules (?). - // Perhaps it makes sense to include all unique fare rules rows, but transfers that share the - // same from/to stop IDs but different transfer times or other values should not both be - // included in the merged feed (yet this strategy would fail to filter those out). - mergeFeedsResult.recordsSkipCount++; - continue; + switch (table.name) { + // Store row values for route or stop ID in order to check for ID conflicts. NOTE: + // This is only intended to be used for routes and stops. Otherwise, this might + // consume too much memory. + case "stops": + case "routes": + // FIXME: This should be revised for tables with order fields, but it should work fine for its + // primary purposes: to detect exact copy rows and to temporarily hold the data in case a reference + // needs to be looked up in order to remap an entity to that key. + rowValuesForStopOrRouteId.put(rowValues[keyFieldIndex], rowValues); + break; + case "transfers": + case "fare_rules": + if (!rowStrings.add(newLine)) { + // The line already exists in the output file, do not append it again. This prevents duplicate + // entries for certain files that do not contain primary keys (e.g., fare_rules and transfers) and + // do not otherwise have convenient ways to track uniqueness (like an order field). + // FIXME: add ordinal field/compound keys for transfers (from/to_stop_id) and fare_rules (?). + // Perhaps it makes sense to include all unique fare rules rows, but transfers that share the + // same from/to stop IDs but different transfer times or other values should not both be + // included in the merged feed (yet this strategy would fail to filter those out). + mergeFeedsResult.recordsSkipCount++; + continue; + } + break; + default: + // Do nothing. + break; + } - // FIXME: This should be revised for tables with order fields, but it should work fine for its - // primary purposes: to detect exact copy rows and to temporarily hold the data in case a reference - // needs to be looked up in order to remap an entity to that key. - rowValuesForKeys.put(rowValues[keyFieldIndex], rowValues); + // Finally, handle writing lines to zip entry. if (mergedLineNumber == 0) { + // Create entry for zip file. + ZipEntry tableEntry = new ZipEntry(table.name + ".txt"); + out.putNextEntry(tableEntry); // Write headers to table. - String headers = specFields.stream().map(field -> field.name).collect(Collectors.joining(",")); - tableOut.write(headers.getBytes()); - tableOut.write("\n".getBytes()); + String headers = specFields.stream().map(field -> field.name) + .collect(Collectors.joining(",")); + out.write(headers.getBytes()); + out.write("\n".getBytes()); } // Write line to table (plus new line char). - tableOut.write(newLine.getBytes()); - tableOut.write("\n".getBytes()); + out.write(newLine.getBytes()); + out.write("\n".getBytes()); lineNumber++; mergedLineNumber++; } } + out.closeEntry(); } catch (Exception e) { - LOG.error( - "Error merging feed sources: {}", - feedVersions.stream() - .map(version -> version.parentFeedSource().name) - .collect(Collectors.toList()) - .toString() - ); + LOG.error("Error merging feed sources: {}", + feedVersions.stream().map(version -> version.parentFeedSource().name) + .collect(Collectors.toList()).toString()); throw e; } - // If no rows were ever written, return null (there is no need to generate the empty file). - if (tableOut.size() == 0) return null; - // Track the number of lines in the merged table. + // Track the number of lines in the merged table and return final number. mergeFeedsResult.linesPerTable.put(table.name, mergedLineNumber); - // Otherwise, return the output stream as a byte array. - return tableOut.toByteArray(); + return mergedLineNumber; + } + + private static String getFieldScopedValue(Table table, String prefix, String id) { + return String.join(":", table.name, prefix, id); } /** @@ -576,7 +742,8 @@ private byte[] constructMergedTable(Table table, List feedsToMerge) private class FeedToMerge { public FeedVersion version; public ZipFile zipFile; - FeedToMerge (FeedVersion version) throws IOException { + + FeedToMerge(FeedVersion version) throws IOException { this.version = version; this.zipFile = new ZipFile(version.retrieveGtfsFile()); } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java index c01fd6b89..e971e4fd2 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsResult.java @@ -1,24 +1,36 @@ package com.conveyal.datatools.manager.jobs; +import java.io.Serializable; import java.util.Date; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; -public class MergeFeedsResult { +/** + * Contains the result of {@link MergeFeedsJob}. + */ +public class MergeFeedsResult implements Serializable { + private static final long serialVersionUID = 1L; + /** Number of feeds merged */ public int feedCount; public int errorCount; + /** Type of merge operation performed */ public MergeFeedsType type; + /** Contains a set of strings for which there were error-causing duplicate values */ public Set idConflicts = new HashSet<>(); + /** Contains the set of IDs for records that were excluded in the merged feed */ public Set skippedIds = new HashSet<>(); + /** Contains the set of IDs that had their values remapped during the merge */ public Map remappedIds = new HashMap<>(); + /** Mapping of table name to line count in merged file */ public Map linesPerTable = new HashMap<>(); public int remappedReferences; public int recordsSkipCount; public Date startTime; public boolean failed; + /** Set of reasons explaining why merge operation failed */ public Set failureReasons = new HashSet<>(); public MergeFeedsResult (MergeFeedsType type) { diff --git a/src/main/java/com/conveyal/datatools/manager/models/Model.java b/src/main/java/com/conveyal/datatools/manager/models/Model.java index 509ed9ad9..14c5a1b7f 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Model.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Model.java @@ -14,6 +14,8 @@ import java.util.UUID; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.persistence.MappedSuperclass; @@ -25,6 +27,7 @@ @MappedSuperclass // applies mapping information to the subclassed entities FIXME remove? public abstract class Model implements Serializable { private static final long serialVersionUID = 1L; + private static final Logger LOG = LoggerFactory.getLogger(Model.class); public Model () { // This autogenerates an ID @@ -102,6 +105,9 @@ public void storeUser(String id) { try { profile = Auth0Users.getUserById(userId); } catch (Exception e) { + LOG.warn( + "Could not find user profile {} from Auth0. This may be due to testing conditions or simply a bad user ID.", + id); e.printStackTrace(); } userEmail = profile != null ? profile.getEmail() : null; diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java index c404690b9..a78fa6f44 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -8,6 +8,8 @@ import com.conveyal.datatools.manager.persistence.Persistence; import org.junit.BeforeClass; import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.FileInputStream; @@ -23,10 +25,13 @@ * Tests for the various {@link MergeFeedsJob} merge types. */ public class MergeFeedsJobTest { + private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJobTest.class); private static FeedVersion bartVersion1; private static FeedVersion bartVersion2; private static FeedVersion calTrainVersion; private static Project project; + private static FeedVersion napaVersion; + /** * Prepare and start a testing-specific web server */ @@ -47,6 +52,10 @@ public static void setUp() { caltrain.projectId = project.id; Persistence.feedSources.create(caltrain); calTrainVersion = createFeedVersion(caltrain, "caltrain_gtfs.zip"); + FeedSource napa = new FeedSource("Napa"); + napa.projectId = project.id; + Persistence.feedSources.create(napa); + napaVersion = createFeedVersion(napa, "napa-no-agency-id.zip"); } /** @@ -54,9 +63,11 @@ public static void setUp() { */ @Test public void canMergeRegional() { + // Set up list of feed versions to merge. Set versions = new HashSet<>(); versions.add(bartVersion1); versions.add(calTrainVersion); + versions.add(napaVersion); MergeFeedsJob mergeFeedsJob = new MergeFeedsJob("test", versions, project.id, MergeFeedsType.REGIONAL); // Run the job in this thread (we're not concerned about concurrency here). mergeFeedsJob.run(); @@ -65,42 +76,43 @@ public void canMergeRegional() { source.projectId = project.id; Persistence.feedSources.create(source); File feed = FeedVersion.feedStore.getFeed(project.id + ".zip"); + LOG.info("Regional merged file: {}", feed.getAbsolutePath()); FeedVersion mergedVersion = createFeedVersion(source, feed); // Ensure the feed has the row counts we expect. assertEquals( "trips count for merged feed should equal sum of trips for versions merged.", - bartVersion1.feedLoadResult.trips.rowCount + calTrainVersion.feedLoadResult.trips.rowCount, + bartVersion1.feedLoadResult.trips.rowCount + calTrainVersion.feedLoadResult.trips.rowCount + napaVersion.feedLoadResult.trips.rowCount, mergedVersion.feedLoadResult.trips.rowCount ); assertEquals( "routes count for merged feed should equal sum of routes for versions merged.", - bartVersion1.feedLoadResult.routes.rowCount + calTrainVersion.feedLoadResult.routes.rowCount, + bartVersion1.feedLoadResult.routes.rowCount + calTrainVersion.feedLoadResult.routes.rowCount + napaVersion.feedLoadResult.routes.rowCount, mergedVersion.feedLoadResult.routes.rowCount ); assertEquals( "stops count for merged feed should equal sum of stops for versions merged.", mergedVersion.feedLoadResult.stops.rowCount, - bartVersion1.feedLoadResult.stops.rowCount + calTrainVersion.feedLoadResult.stops.rowCount + bartVersion1.feedLoadResult.stops.rowCount + calTrainVersion.feedLoadResult.stops.rowCount + napaVersion.feedLoadResult.stops.rowCount ); assertEquals( "agency count for merged feed should equal sum of agency for versions merged.", mergedVersion.feedLoadResult.agency.rowCount, - bartVersion1.feedLoadResult.agency.rowCount + calTrainVersion.feedLoadResult.agency.rowCount + bartVersion1.feedLoadResult.agency.rowCount + calTrainVersion.feedLoadResult.agency.rowCount + napaVersion.feedLoadResult.agency.rowCount ); assertEquals( "stopTimes count for merged feed should equal sum of stopTimes for versions merged.", mergedVersion.feedLoadResult.stopTimes.rowCount, - bartVersion1.feedLoadResult.stopTimes.rowCount + calTrainVersion.feedLoadResult.stopTimes.rowCount + bartVersion1.feedLoadResult.stopTimes.rowCount + calTrainVersion.feedLoadResult.stopTimes.rowCount + napaVersion.feedLoadResult.stopTimes.rowCount ); assertEquals( "calendar count for merged feed should equal sum of calendar for versions merged.", mergedVersion.feedLoadResult.calendar.rowCount, - bartVersion1.feedLoadResult.calendar.rowCount + calTrainVersion.feedLoadResult.calendar.rowCount + bartVersion1.feedLoadResult.calendar.rowCount + calTrainVersion.feedLoadResult.calendar.rowCount + napaVersion.feedLoadResult.calendar.rowCount ); assertEquals( "calendarDates count for merged feed should equal sum of calendarDates for versions merged.", mergedVersion.feedLoadResult.calendarDates.rowCount, - bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount + bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount + napaVersion.feedLoadResult.calendarDates.rowCount ); } @@ -140,12 +152,12 @@ public void canMergeBARTFeeds() { // Result should succeed this time. assertEquals( "Merged feed trip count should equal expected value.", - 4552, + 4552, // Magic number represents the number of trips in the merged BART feed. mergeFeedsJob.mergedVersion.feedLoadResult.trips.rowCount ); assertEquals( "Merged feed route count should equal expected value.", - 9, + 9, // Magic number represents the number of routes in the merged BART feed. mergeFeedsJob.mergedVersion.feedLoadResult.routes.rowCount ); } diff --git a/src/test/resources/com/conveyal/datatools/napa-no-agency-id.zip b/src/test/resources/com/conveyal/datatools/napa-no-agency-id.zip new file mode 100644 index 0000000000000000000000000000000000000000..bfb38c7376652f626c2158fc5f4487fcb95f36a4 GIT binary patch literal 314463 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

geFHU8SXbC;AS~P1>$1KIuyruBX(T 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ȗ!2PTS_eGxY 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↱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�(bvs8HD(lrfzKOq9_Xy0Y$o6{ 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 Date: Wed, 24 Apr 2019 14:43:26 -0400 Subject: [PATCH 42/83] fix(merge-feeds): address remaining PR comments --- .../datatools/manager/jobs/MergeFeedsJob.java | 162 ++++++++++-------- 1 file changed, 93 insertions(+), 69 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 753c51edf..a0ea5a363 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -75,42 +75,42 @@ * 4. The merge process shall compare the current and future datasets, validate the following rules * and generate the Merge Validation Report: * i. Merging will be based on route_short_name in the current and future datasets. All matching - * route_short_names between the datasets shall be considered same route. Any route_short_name - * in active data not present in the future will be appended to the future routes file. + * route_short_names between the datasets shall be considered same route. Any route_short_name + * in active data not present in the future will be appended to the future routes file. * ii. Future feed_info.txt file should get priority over active feed file when difference is - * identified. + * identified. * iii. When difference is found in agency.txt file between active and future feeds, the future - * agency.txt file data should be used. Possible issue with missing agency_id referenced by routes + * agency.txt file data should be used. Possible issue with missing agency_id referenced by routes * iv. When stop_code is included, stop merging will be based on that. If stop_code is not - * included, it will be based on stop_id. All stops in future data will be carried forward and - * any stops found in active data that are not in the future data shall be appended. If one - * of the feed is missing stop_code, merge fails with a notification to the user with - * suggestion that the feed with missing stop_code must be fixed with stop_code. + * included, it will be based on stop_id. All stops in future data will be carried forward and + * any stops found in active data that are not in the future data shall be appended. If one + * of the feed is missing stop_code, merge fails with a notification to the user with + * suggestion that the feed with missing stop_code must be fixed with stop_code. * v. If any service_id in the active feed matches with the future feed, it should be modified - * and all associated trip records must also be changed with the modified service_id. - * If a service_id from the active calendar has both the start_date and end_date in the - * future, the service shall not be appended to the merged file. Records in trips, - * calendar_dates, and calendar_attributes referencing this service_id shall also be - * removed/ignored. Stop_time records for the ignored trips shall also be removed. - * If a service_id from the active calendar has only the end_date in the future, the end_date - * shall be set to one day prior to the earliest start_date in future dataset before appending - * the calendar record to the merged file. - * trip_ids between active and future datasets must not match. If any trip_id is found to be - * matching, the merge should fail with appropriate notification to user with the cause of the - * failure. Notification should include all matched trip_ids. + * and all associated trip records must also be changed with the modified service_id. + * If a service_id from the active calendar has both the start_date and end_date in the + * future, the service shall not be appended to the merged file. Records in trips, + * calendar_dates, and calendar_attributes referencing this service_id shall also be + * removed/ignored. Stop_time records for the ignored trips shall also be removed. + * If a service_id from the active calendar has only the end_date in the future, the end_date + * shall be set to one day prior to the earliest start_date in future dataset before appending + * the calendar record to the merged file. + * trip_ids between active and future datasets must not match. If any trip_id is found to be + * matching, the merge should fail with appropriate notification to user with the cause of the + * failure. Notification should include all matched trip_ids. * vi. New shape_ids in the future datasets should be appended in the merged feed. * vii. Merging fare_attributes will be based on fare_id in the current and future datasets. All - * matching fare_ids between the datasets shall be considered same fare. Any fare_id in active - * data not present in the future will be appended to the future fare_attributes file. + * matching fare_ids between the datasets shall be considered same fare. Any fare_id in active + * data not present in the future will be appended to the future fare_attributes file. * viii. All fare rules from the future dataset will be included. Any identical fare rules from - * the current dataset will be discarded. Any fare rules unique to the current dataset will be - * appended to the future file. + * the current dataset will be discarded. Any fare rules unique to the current dataset will be + * appended to the future file. * ix. All transfers.txt entries with unique stop pairs (from - to) from both the future and - * current datasets will be included in the merged file. Entries with duplicate stop pairs from - * the current dataset will be discarded. + * current datasets will be included in the merged file. Entries with duplicate stop pairs from + * the current dataset will be discarded. * x. All GTFS+ files should be merged based on how the associated base GTFS file is merged. For - * example, directions for routes that are not in the future routes.txt file should be appended - * to the future directions.txt file in the merged feed. + * example, directions for routes that are not in the future routes.txt file should be appended + * to the future directions.txt file in the merged feed. */ public class MergeFeedsJob extends MonitorableJob { @@ -138,13 +138,14 @@ public MergeFeedsJob(String owner, Set feedVersions, String file, super(owner, mergeType.equals(REGIONAL) ? "Merging project feeds" : "Merging feed versions", JobType.MERGE_FEED_VERSIONS); this.feedVersions = feedVersions; - // Grab parent feed source if performing non-regional merge (each version should share the same feed source). + // Grab parent feed source if performing non-regional merge (each version should share the + // same feed source). this.feedSource = mergeType.equals(REGIONAL) ? null : feedVersions.iterator().next().parentFeedSource(); // Construct full filename with extension this.filename = String.format("%s.zip", file); - // If the merge type is regional, the file string should be equivalent to projectId, which is used by the client - // to download the merged feed upon job completion. + // If the merge type is regional, the file string should be equivalent to projectId, which + // is used by the client to download the merged feed upon job completion. this.projectId = mergeType.equals(REGIONAL) ? file : null; this.mergeType = mergeType; // Assuming job is successful, mergedVersion will contain the resulting feed version. @@ -153,8 +154,8 @@ public MergeFeedsJob(String owner, Set feedVersions, String file, } /** - * The final stage handles clean up (deleting temp file) and adding the next job to process the new merged version - * (assuming the merge did not fail). + * The final stage handles clean up (deleting temp file) and adding the next job to process the + * new merged version (assuming the merge did not fail). */ public void jobFinished() { // Delete temp file to ensure it does not cause storage bloat. Note: merged file has already been stored @@ -182,17 +183,26 @@ public void jobFinished() { // Determine which tables to merge (only merge GTFS+ tables for MTC extension). final List

tablesToMerge = - Arrays.stream(Table.tablesInOrder).filter(Table::isSpecTable) + Arrays.stream(Table.tablesInOrder) + .filter(Table::isSpecTable) .collect(Collectors.toList()); if (DataManager.isExtensionEnabled("mtc")) { - // Merge GTFS+ tables only if MTC extension is enabled. We should do this for both regional and MTC merge - // strategies. + // Merge GTFS+ tables only if MTC extension is enabled. We should do this for both + // regional and MTC merge strategies. tablesToMerge.addAll(Arrays.asList(GtfsPlusTable.tables)); } int numberOfTables = tablesToMerge.size(); // Loop over GTFS tables and merge each feed one table at a time. for (int i = 0; i < numberOfTables; i++) { Table table = tablesToMerge.get(i); + if (mergeType.equals(REGIONAL) && table.name.equals(Table.FEED_INFO.name)) { + // It does not make sense to include the feed_info table when performing a + // regional feed merge because this file is intended to contain data specific to + // a single agency feed. + // TODO: Perhaps future work can generate a special feed_info file for the merged + // file. + LOG.info("Skipping feed_info table for regional merge."); + } double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; status.update("Merging " + table.name, percentComplete); // Perform the merge. @@ -207,9 +217,9 @@ public void jobFinished() { // Close output stream for zip file. out.close(); // Handle writing file to storage (local or s3). - if (mergeFeedsResult.failed) + if (mergeFeedsResult.failed) { status.fail("Merging feed versions failed."); - else { + } else { storeMergedFeed(); status.update(false, "Merged feed created successfully.", 100, true); } @@ -323,18 +333,6 @@ private int constructMergedTable(Table table, List feedsToMerge, // replaced with the generated value stored in this variable. String newAgencyId = null; mergeFeedsResult.feedCount++; - if (feedIndex > 0 && (table.name.equals("feed_info") || - (mergeType.equals(MTC) && table.name.equals("agency")))) { - // Always prefer the "future" file for the feed_info table, which means - // we can skip any iterations following the first one. If merging the agency - // table, we should only skip the following feeds if performing an MTC merge - // because that logic assumes the two feeds share the same agency (or agencies). - // FIXME: This could cause issues with routes or fares that reference an - // agency_id that no longer exists. - LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", table.name, - feedIndex, feedsToMerge.size()); - continue; - } FeedToMerge feed = feedsToMerge.get(feedIndex); FeedVersion version = feed.version; FeedSource feedSource = version.parentFeedSource(); @@ -366,19 +364,47 @@ private int constructMergedTable(Table table, List feedsToMerge, // Iterate over rows in table, writing them to the out file. while (csvReader.readRecord()) { String keyValue = csvReader.get(keyFieldIndex); + if (feedIndex > 0 && mergeType.equals(MTC)) { + // Always prefer the "future" file for the feed_info table, which means + // we can skip any iterations following the first one. If merging the agency + // table, we should only skip the following feeds if performing an MTC merge + // because that logic assumes the two feeds share the same agency (or + // agencies). NOTE: feed_info file is skipped by default (outside of this + // method) for a regional merge), which is why this block is exclusively + // for an MTC merge. Also, this statement may print multiple log + // statements, but it is deliberately nested in the csv while block in + // order to detect agency_id mismatches and fail the merge if found. + if (table.name.equals("feed_info")) { + LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", + table.name, feedIndex, feedsToMerge.size()); + continue; + } else if (table.name.equals("agency")) { + // The second feed's agency table must contain the same agency_id + // value as the first feed. + String agencyId = String.join(":", keyField, keyValue); + if (!"".equals(keyValue) && !referenceTracker.transitIds.contains(agencyId)) { + String message = "MTC merge detected mismatching agency_id values " + + "between two feeds. Failing merge operation."; + LOG.error(message); + mergeFeedsResult.failed = true; + mergeFeedsResult.failureReasons.add(message); + return -1; + } + LOG.warn("Skipping {} file for feed {}/{} (future file preferred)", + table.name, feedIndex, feedsToMerge.size()); + continue; + } + } // Check certain initial conditions on the first line of the file. if (lineNumber == 0) { - if (table.name.equals(Table.AGENCY.name) && (keyFieldMissing || keyValue - .equals(""))) { + if (table.name.equals(Table.AGENCY.name) && (keyFieldMissing || keyValue.equals(""))) { // agency_id is optional if only one agency is present, but that will // cause issues for the feed merge, so we need to insert an agency_id // for the single entry. newAgencyId = UUID.randomUUID().toString(); if (keyFieldMissing) { - // Only add agency_id field if it is missing in table. - List fieldsList = - new ArrayList<>(Arrays.asList(fieldsFoundInZip)); + List fieldsList = new ArrayList<>(Arrays.asList(fieldsFoundInZip)); fieldsList.add(Table.AGENCY.fields[0]); fieldsFoundInZip = fieldsList.toArray(fieldsFoundInZip); } @@ -402,10 +428,8 @@ private int constructMergedTable(Table table, List feedsToMerge, } } else { // Check whether stop_code exists for the subsequent files. - String firstStopCodeValue = - csvReader.get(getFieldIndex(fieldsFoundInZip, "stop_code")); - if (stopCodeMissingFromFirstTable && !"" - .equals(firstStopCodeValue)) { + String firstStopCodeValue = csvReader.get(getFieldIndex(fieldsFoundInZip, "stop_code")); + if (stopCodeMissingFromFirstTable && !"".equals(firstStopCodeValue)) { // If stop_code was missing from the first file and exists for // the second, we consider that a failing error. mergeFeedsResult.failed = true; @@ -465,9 +489,9 @@ private int constructMergedTable(Table table, List feedsToMerge, // track references for a large number of feeds (e.g., every feed in New // York State). if (mergeType.equals(MTC)) { - Set idErrors = table + Set idErrors = referenceTracker .checkReferencesAndUniqueness(keyValue, lineNumber, field, val, - referenceTracker, keyField, orderField); + table, keyField, orderField); // Store values for key fields that have been encountered. // TODO Consider using Strategy Pattern https://en.wikipedia.org/wiki/Strategy_pattern // instead of a switch statement. @@ -562,9 +586,9 @@ private int constructMergedTable(Table table, List feedsToMerge, // by the reference tracker. String primaryKeyValue = csvReader.get(table.getKeyFieldIndex(fieldsFoundInZip)); - Set primaryKeyErrors = table + Set primaryKeyErrors = referenceTracker .checkReferencesAndUniqueness(primaryKeyValue, lineNumber, - field, val, referenceTracker); + field, val, table); // Merging will be based on route_short_name/stop_code in the current and future datasets. All // matching route_short_names/stop_codes between the datasets shall be considered same route/stop. Any // route_short_name/stop_code in active data not present in the future will be appended to the @@ -641,14 +665,7 @@ private int constructMergedTable(Table table, List feedsToMerge, } if (field.isForeignReference()) { - // If the field is a foreign reference, check to see whether the reference has been - // remapped due to a conflicting ID from another feed (e.g., calendar#service_id). String key = getFieldScopedValue(field.referenceTable, idScope, val); - if (mergeFeedsResult.remappedIds.containsKey(key)) { - mergeFeedsResult.remappedReferences++; - // If the value has been remapped update the value to write. - valueToWrite = mergeFeedsResult.remappedIds.get(key); - } // If the current foreign ref points to another record that has been skipped, skip this // record and add its primary key to the list of skipped IDs (so that other references can // be properly omitted). @@ -662,6 +679,13 @@ private int constructMergedTable(Table table, List feedsToMerge, skipRecord = true; continue; } + // If the field is a foreign reference, check to see whether the reference has been + // remapped due to a conflicting ID from another feed (e.g., calendar#service_id). + if (mergeFeedsResult.remappedIds.containsKey(key)) { + mergeFeedsResult.remappedReferences++; + // If the value has been remapped update the value to write. + valueToWrite = mergeFeedsResult.remappedIds.get(key); + } } rowValues[specFieldIndex] = valueToWrite; } From d2276a2890a946b1439e1ba66de566208a49fa98 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Wed, 24 Apr 2019 21:42:03 -0400 Subject: [PATCH 43/83] build(pom): bump gtfs-lib to 4.3.3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a7dd924ed..703fd1ed3 100644 --- a/pom.xml +++ b/pom.xml @@ -258,7 +258,7 @@ com.conveyal gtfs-lib - 4.3.2 + 4.3.3 From eccd433795303087fec67df11281d0510064bdff Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 26 Apr 2019 15:25:46 -0400 Subject: [PATCH 44/83] feat(shapefile-export): add .shp export for routes or stops fixes #34 --- pom.xml | 14 +- .../editor/controllers/api/GisController.java | 77 ----- .../datatools/editor/jobs/GisExport.java | 222 ------------- .../datatools/manager/DataManager.java | 2 - .../api/FeedVersionController.java | 25 ++ .../datatools/manager/jobs/GisExportJob.java | 311 ++++++++++++++++++ .../datatools/manager/models/Model.java | 15 +- .../com/conveyal/datatools/TestUtils.java | 35 ++ .../manager/jobs/GisExportJobTest.java | 174 ++++++++++ 9 files changed, 572 insertions(+), 303 deletions(-) delete mode 100644 src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java delete mode 100644 src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java create mode 100644 src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java create mode 100644 src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java diff --git a/pom.xml b/pom.xml index 6aeb0d5f4..a17fc6387 100644 --- a/pom.xml +++ b/pom.xml @@ -52,6 +52,7 @@ 2.9.8 + 20.3 @@ -310,7 +311,18 @@ org.geotools gt-shapefile - 19.2 + ${geotools.version} + + + + org.geotools + gt-metadata + ${geotools.version} + + + org.geotools + gt-api + ${geotools.version} diff --git a/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java b/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java deleted file mode 100644 index aaf504bfd..000000000 --- a/src/main/java/com/conveyal/datatools/editor/controllers/api/GisController.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.conveyal.datatools.editor.controllers.api; - -import com.conveyal.datatools.editor.jobs.GisExport; -import com.conveyal.datatools.manager.models.JsonViews; -import com.conveyal.datatools.manager.utils.json.JsonManager; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import spark.Request; -import spark.Response; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.Arrays; -import java.util.List; - -import static spark.Spark.get; -import static spark.Spark.halt; - -/** - * Created by landon on 5/30/17. - */ -public class GisController { - public static final JsonManager json = - new JsonManager<>(GisController.class, JsonViews.UserInterface.class); - private static final Logger LOG = LoggerFactory.getLogger(GisController.class); - - - public static FileInputStream exportGis (Request req, Response res) throws IOException { - String type = req.queryParams("type"); - List feedIds = Arrays.asList(req.queryParams("feedId").split(",")); - File temp = File.createTempFile("gis_" + type, ".zip"); - - GisExport gisExport = new GisExport(GisExport.Type.valueOf(type), temp, feedIds); - gisExport.run(); - - FileInputStream fis = new FileInputStream(temp); - - res.type("application/zip"); - res.header("Content-Disposition", "attachment;filename=" + temp.getName().replaceAll("[^a-zA-Z0-9]", "") + ".zip"); - - // will not actually be deleted until download has completed - // http://stackoverflow.com/questions/24372279 -// temp.delete(); - - return fis; - } - -// res.raw().setContentType("application/zip"); -// res.raw().setHeader("Content-Disposition", "attachment; filename=" + temp.getName() + ".zip"); -// -// try { -// BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(res.raw().getOutputStream()); -// BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(temp)); -// -// byte[] buffer = new byte[1024]; -// int len; -// while ((len = bufferedInputStream.read(buffer)) > 0) { -// bufferedOutputStream.write(buffer, 0, len); -// } -// -// bufferedOutputStream.flush(); -// bufferedOutputStream.close(); -// } catch (Exception e) { -// halt(500, "Error serving GTFS+ file"); -// } -// -// return res.raw(); - - public static void register (String apiPrefix) { - get(apiPrefix + "secure/export/gis", GisController::exportGis, json::write); - } -} diff --git a/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java b/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java deleted file mode 100644 index c5ef56182..000000000 --- a/src/main/java/com/conveyal/datatools/editor/jobs/GisExport.java +++ /dev/null @@ -1,222 +0,0 @@ -package com.conveyal.datatools.editor.jobs; - -import com.conveyal.datatools.editor.datastore.FeedTx; -import com.conveyal.datatools.editor.datastore.GlobalTx; -import com.conveyal.datatools.editor.datastore.VersionedDataStore; -import com.conveyal.datatools.editor.models.transit.EditorFeed; -import com.conveyal.datatools.editor.models.transit.Route; -import com.conveyal.datatools.editor.models.transit.Stop; -import com.conveyal.datatools.editor.models.transit.TripPattern; -import com.conveyal.datatools.editor.utils.DirectoryZip; -import com.google.common.io.Files; -import com.vividsolutions.jts.geom.Coordinate; -import com.vividsolutions.jts.geom.GeometryFactory; -import com.vividsolutions.jts.geom.LineString; -import org.geotools.data.DataUtilities; -import org.geotools.data.DefaultTransaction; -import org.geotools.data.Transaction; -import org.geotools.data.collection.ListFeatureCollection; -import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.ShapefileDataStoreFactory; -import org.geotools.data.simple.SimpleFeatureCollection; -import org.geotools.data.simple.SimpleFeatureSource; -import org.geotools.data.simple.SimpleFeatureStore; -import org.geotools.feature.simple.SimpleFeatureBuilder; -import org.geotools.referencing.crs.DefaultGeographicCRS; -import org.opengis.feature.simple.SimpleFeature; -import org.opengis.feature.simple.SimpleFeatureType; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.File; -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** Export routes or stops as a shapefile */ -public class GisExport implements Runnable { - public static final Logger LOG = LoggerFactory.getLogger(GisExport.class); - File file; - Type type; - Collection feedIds; - - public GisExport(Type type, File file, Collection feedIds) { - this.type = type; - this.file = file; - this.feedIds = feedIds; - } - - @Override - public void run() { - File outDir = Files.createTempDir(); - File outShp = new File(outDir, file.getName().replaceAll("\\.zip", "") + ".shp"); - - GlobalTx gtx = VersionedDataStore.getGlobalTx(); - FeedTx feedtx = null; - try { - ShapefileDataStoreFactory dataStoreFactory = new ShapefileDataStoreFactory(); - - Map params = new HashMap(); - params.put("url", outShp.toURI().toURL()); - params.put("create spatial index", Boolean.TRUE); - - ShapefileDataStore datastore = (ShapefileDataStore) dataStoreFactory.createNewDataStore(params); - datastore.forceSchemaCRS(DefaultGeographicCRS.WGS84); - - SimpleFeatureType STOP_TYPE = DataUtilities.createType( - "Stop", - "the_geom:Point:srid=4326," + - "name:String," + - "code:String," + - "desc:String," + - "id:String," + - "agency:String" - ); - - SimpleFeatureType ROUTE_TYPE = DataUtilities.createType( - "Route", // <- the name for our feature type - "the_geom:LineString:srid=4326," + - "patternName:String," + - "shortName:String," + - "longName:String," + - "desc:String," + - "type:String," + - "url:String," + - "routeColor:String," + - "routeTextColor:String," + - "agency:String" - ); - - SimpleFeatureCollection collection; - - SimpleFeatureType collectionType; - - SimpleFeatureBuilder featureBuilder = null; - - List features = new ArrayList(); - - if (type.equals(Type.STOPS)) { - collectionType = STOP_TYPE; - datastore.createSchema(STOP_TYPE); - featureBuilder = new SimpleFeatureBuilder(STOP_TYPE); - - for (String feedId : feedIds) { - EditorFeed fs = gtx.feeds.get(feedId); - - feedtx = VersionedDataStore.getFeedTx(feedId); - for (Stop s : feedtx.stops.values()) { - featureBuilder.add(s.location); - featureBuilder.add(s.stopName); - featureBuilder.add(s.stopCode); - featureBuilder.add(s.stopDesc); - featureBuilder.add(s.getGtfsId()); - featureBuilder.add(fs.feedPublisherName); - SimpleFeature feature = featureBuilder.buildFeature(null); - features.add(feature); - } - - feedtx.rollback(); - } - } else if (type.equals(Type.ROUTES)) { - collectionType = ROUTE_TYPE; - datastore.createSchema(ROUTE_TYPE); - featureBuilder = new SimpleFeatureBuilder(ROUTE_TYPE); - - GeometryFactory gf = new GeometryFactory(); - - for (String feedId : feedIds) { - EditorFeed fs = gtx.feeds.get(feedId); - - feedtx = VersionedDataStore.getFeedTx(feedId); - - // we loop over trip patterns. Note that this will yield several lines for routes that have - // multiple patterns. There's no real good way to reconcile the shapes of multiple patterns. - for (TripPattern tp : feedtx.tripPatterns.values()) { - LineString shape; - if (tp.shape != null) { - shape = tp.shape; - } else { - // build the shape from the stops - Coordinate[] coords = new Coordinate[tp.patternStops.size()]; - - for (int i = 0; i < coords.length; i++) { - coords[i] = feedtx.stops.get(tp.patternStops.get(i).stopId).location.getCoordinate(); - } - - shape = gf.createLineString(coords); - } - - Route r = feedtx.routes.get(tp.routeId); - - featureBuilder.add(shape); - featureBuilder.add(tp.name); - featureBuilder.add(r.routeShortName); - featureBuilder.add(r.routeLongName); - featureBuilder.add(r.routeDesc); - - if (r.routeTypeId != null) - featureBuilder.add(gtx.routeTypes.get(r.routeTypeId).toString()); - else - featureBuilder.add(""); - - featureBuilder.add(r.routeUrl); - featureBuilder.add(r.routeColor); - featureBuilder.add(r.routeTextColor); - featureBuilder.add(fs.feedPublisherName); - SimpleFeature feature = featureBuilder.buildFeature(null); - features.add(feature); - } - - feedtx.rollback(); - } - } - else - throw new IllegalStateException("Invalid type"); - - // save the file - collection = new ListFeatureCollection(collectionType, features); - - Transaction transaction = new DefaultTransaction("create"); - - String typeName = datastore.getTypeNames()[0]; - SimpleFeatureSource featureSource = datastore.getFeatureSource(typeName); - - if (featureSource instanceof SimpleFeatureStore) - { - SimpleFeatureStore featureStore = (SimpleFeatureStore) featureSource; - - featureStore.setTransaction(transaction); - - featureStore.addFeatures(collection); - transaction.commit(); - - transaction.close(); - } - else - { - throw new Exception(typeName + " does not support read/write access"); - } - - // zip the file - DirectoryZip.zip(outDir, file); - - // clean up - for (File f : outDir.listFiles()) { - f.delete(); - } - outDir.delete(); - - } catch (Exception e) { - LOG.error("An excpetion occurred during the GIS export"); - e.printStackTrace(); - } finally { - if (gtx != null) gtx.rollback(); - if (feedtx != null) feedtx.rollbackIfOpen(); - } - } - - public enum Type { ROUTES, STOPS } -} diff --git a/src/main/java/com/conveyal/datatools/manager/DataManager.java b/src/main/java/com/conveyal/datatools/manager/DataManager.java index c0a7c8770..86b0f9bbc 100644 --- a/src/main/java/com/conveyal/datatools/manager/DataManager.java +++ b/src/main/java/com/conveyal/datatools/manager/DataManager.java @@ -6,7 +6,6 @@ import com.conveyal.datatools.common.utils.Scheduler; import com.conveyal.datatools.editor.controllers.EditorLockController; import com.conveyal.datatools.editor.controllers.api.EditorControllerImpl; -import com.conveyal.datatools.editor.controllers.api.GisController; import com.conveyal.datatools.editor.controllers.api.SnapshotController; import com.conveyal.datatools.manager.auth.Auth0Connection; import com.conveyal.datatools.manager.controllers.DumpController; @@ -240,7 +239,6 @@ static void registerRoutes() throws IOException { new EditorControllerImpl(EDITOR_API_PREFIX, Table.STOPS, DataManager.GTFS_DATA_SOURCE); new EditorControllerImpl(EDITOR_API_PREFIX, Table.TRIPS, DataManager.GTFS_DATA_SOURCE); // TODO: Add transfers.txt controller? - GisController.register(EDITOR_API_PREFIX); } // log all exceptions to system.out diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index 268bd08a9..c1b0aaadf 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -3,6 +3,7 @@ import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.jobs.CreateFeedVersionFromSnapshotJob; +import com.conveyal.datatools.manager.jobs.GisExportJob; import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; import com.conveyal.datatools.manager.models.FeedDownloadToken; import com.conveyal.datatools.manager.models.FeedSource; @@ -21,8 +22,12 @@ import javax.servlet.http.HttpServletResponse; import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Arrays; import java.util.Collection; import java.util.Date; +import java.util.List; import static com.conveyal.datatools.common.utils.S3Utils.downloadFromS3; import static com.conveyal.datatools.common.utils.SparkUtils.copyRequestStreamIntoFile; @@ -262,6 +267,26 @@ private static FeedVersion publishToExternalResource (Request req, Response res) } } + public static FileInputStream exportGis (Request req, Response res) throws IOException { + String type = req.queryParams("type"); + List feedIds = Arrays.asList(req.queryParams("feedId").split(",")); + File temp = File.createTempFile("gis_" + type, ".zip"); + + GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.valueOf(type), temp, feedIds); + gisExportJob.run(); + + FileInputStream fis = new FileInputStream(temp); + + res.type("application/zip"); + res.header("Content-Disposition", "attachment;filename=" + temp.getName().replaceAll("[^a-zA-Z0-9]", "") + ".zip"); + + // will not actually be deleted until download has completed + // http://stackoverflow.com/questions/24372279 + temp.delete(); + + return fis; + } + /** * Download locally stored feed version with token supplied by this application. This method is only used when * useS3 is set to false. Otherwise, a direct download from s3 should be used. diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java new file mode 100644 index 000000000..beed21249 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -0,0 +1,311 @@ +package com.conveyal.datatools.manager.jobs; + +import com.conveyal.datatools.common.status.MonitorableJob; +import com.conveyal.datatools.editor.utils.DirectoryZip; +import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.persistence.Persistence; +import com.conveyal.gtfs.loader.Feed; +import com.conveyal.gtfs.loader.Requirement; +import com.conveyal.gtfs.loader.Table; +import com.conveyal.gtfs.model.Agency; +import com.conveyal.gtfs.model.Route; +import com.conveyal.gtfs.model.Stop; +import com.google.common.io.Files; +import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.GeometryFactory; +import com.vividsolutions.jts.geom.LineString; +import com.vividsolutions.jts.geom.Point; +import org.apache.commons.dbutils.DbUtils; +import org.geotools.data.DataUtilities; +import org.geotools.data.DefaultTransaction; +import org.geotools.data.Transaction; +import org.geotools.data.collection.ListFeatureCollection; +import org.geotools.data.shapefile.ShapefileDataStore; +import org.geotools.data.shapefile.ShapefileDataStoreFactory; +import org.geotools.data.simple.SimpleFeatureCollection; +import org.geotools.data.simple.SimpleFeatureSource; +import org.geotools.data.simple.SimpleFeatureStore; +import org.geotools.feature.simple.SimpleFeatureBuilder; +import org.geotools.feature.simple.SimpleFeatureTypeBuilder; +import org.geotools.referencing.crs.DefaultGeographicCRS; +import org.opengis.feature.simple.SimpleFeature; +import org.opengis.feature.simple.SimpleFeatureType; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.Serializable; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** Export routes or stops for a GTFS feed version as a shapefile. */ +public class GisExportJob extends MonitorableJob { + public static final Logger LOG = LoggerFactory.getLogger(GisExportJob.class); + private File file; + public Type type; + public Collection feedIds; + + public GisExportJob(Type type, File file, Collection feedIds) { + this.type = type; + this.file = file; + this.feedIds = feedIds; + } + + @Override public void jobLogic() { + LOG.info("Storing shapefile for feeds {} at {}", feedIds, file.getAbsolutePath()); + File outDir = Files.createTempDir(); + LOG.info("Temp directory for shapefile: {}", outDir.getAbsolutePath()); + File outShp = new File(outDir, file.getName().replaceAll("\\.zip", "") + ".shp"); + Connection connection = null; + try { + GeometryFactory geometryFactory = new GeometryFactory(); + ShapefileDataStoreFactory dataStoreFactory = new ShapefileDataStoreFactory(); + + Map params = new HashMap<>(); + params.put("url", outShp.toURI().toURL()); + params.put("create spatial index", Boolean.TRUE); + + ShapefileDataStore datastore = (ShapefileDataStore) dataStoreFactory.createNewDataStore(params); + datastore.forceSchemaCRS(DefaultGeographicCRS.WGS84); + + final SimpleFeatureType STOP_TYPE = DataUtilities.createType( + "Stop", + String.join(",", + // Geometry must be the first attribute for a shapefile (and must be named + // "the_geom"). + "the_geom:Point:srid=4326", + "name:String", + "code:String", + "desc:String", + "id:String", + "agency:String" + ) + ); + + final SimpleFeatureType ROUTE_TYPE = DataUtilities.createType( + "Route", // <- the name for our feature type + String.join(",", + "the_geom:LineString:srid=4326", + "pattName:String", + "shortName:String", + "longName:String", + "desc:String", + "type:String", + "url:String", + "routeColor:String", + "textColor:String", + "shapeId:String", + "agency:String" + ) + ); + + SimpleFeatureCollection collection; + + SimpleFeatureType collectionType = null; + + SimpleFeatureBuilder featureBuilder; + + List features = new ArrayList<>(); + // Get connection for use in fetching patterns. This is outside of for loop so we're + // not connecting multiple times. + connection = DataManager.GTFS_DATA_SOURCE.getConnection(); + for (String feedId : feedIds) { + // Get feed version and connection to RDBMS feed. + FeedVersion version = Persistence.feedVersions.getById(feedId); + if (version == null) { + throw new IllegalStateException(String.format("Could not find version %s", feedId)); + } + Feed feed = new Feed(DataManager.GTFS_DATA_SOURCE, version.namespace); + Agency agency = feed.agencies.iterator().next(); + String agencyName = agency != null + ? agency.agency_name + : version.parentFeedSource().name; + if (type.equals(Type.STOPS)) { + collectionType = STOP_TYPE; + datastore.createSchema(STOP_TYPE); + featureBuilder = new SimpleFeatureBuilder(STOP_TYPE); + for (Stop stop : feed.stops) { + Point point = geometryFactory.createPoint(new Coordinate(stop.stop_lon, stop.stop_lat)); + LOG.info(stop.stop_lon + ":" + stop.stop_lat); + featureBuilder.add(point); + featureBuilder.add(stop.stop_name); + featureBuilder.add(stop.stop_code); + featureBuilder.add(stop.stop_desc); + featureBuilder.add(stop.stop_id); + featureBuilder.add(agencyName); + // Build feature (null id arg will generate default ID). + SimpleFeature feature = featureBuilder.buildFeature(null); + features.add(feature); + } + } else if (type.equals(Type.ROUTES)) { + collectionType = ROUTE_TYPE; + datastore.createSchema(ROUTE_TYPE); + featureBuilder = new SimpleFeatureBuilder(ROUTE_TYPE); + // There is not a clean way to fetch patterns out of the RDBMS and it may not + // be worth building a structured way with JDBCTableReader simply for + // exporting a shapefile. If there are future similar cases, we may need to + // refactor this into a more structured operation using Java objects or + // com.conveyal.gtfs.loader.Feed + String patternsSql = Table.PATTERNS.generateSelectSql(version.namespace, Requirement.EDITOR); + PreparedStatement statement = connection.prepareStatement(patternsSql); + ResultSet resultSet = statement.executeQuery(); + // we loop over trip patterns. Note that this will yield several lines for routes that have + // multiple patterns. There's no real good way to reconcile the shapes of multiple patterns. + while (resultSet.next()) { + String pattern_id = resultSet.getString("pattern_id"); + String route_id = resultSet.getString("route_id"); + String name = resultSet.getString("name"); + String shape_id = resultSet.getString("shape_id"); + LineString shape; + if (shape_id != null) { + // Select shape points for pattern shape and build line string. + PreparedStatement shapeStatement = connection.prepareStatement( + String.format( + "select shape_pt_lon, shape_pt_lat, shape_pt_sequence, " + + "shape_id from %s.shapes where shape_id = ? " + + "order by shape_pt_sequence", + version.namespace + )); + shapeStatement.setString(1, shape_id); + ResultSet shapePointsResultSet = shapeStatement.executeQuery(); + // Construct line string from shape points. + List coordinates = new ArrayList<>(); + while (shapePointsResultSet.next()) { + double lon = shapePointsResultSet.getDouble(1); + double lat = shapePointsResultSet.getDouble(2); + coordinates.add(new Coordinate(lon, lat)); + } + Coordinate[] coords = new Coordinate[coordinates.size()]; + coords = coordinates.toArray(coords); + shape = geometryFactory.createLineString(coords); + } else { + // build the shape from the stops + // FIXME add back generating shape from stops +// Coordinate[] coords = new Coordinate[tp.patternStops.size()]; +// +// for (int i = 0; i < coords.length; i++) { +// coords[i] = +// feed.stops.get(tp.patternStops.get(i).stopId).location.getCoordinate(); +// } +// +// shape = geometryFactory.createLineString(coords); + shape = null; + } + + Route route = feed.routes.get(route_id); + if (route == null) { + LOG.warn("Route ({}) for pattern {} does not exist. Skipping pattern" + , route_id, pattern_id); + continue; + } + featureBuilder.add(shape); + featureBuilder.add(name); + featureBuilder.add(route.route_short_name); + featureBuilder.add(route.route_long_name); + featureBuilder.add(route.route_desc); + featureBuilder.add(route.route_type); + featureBuilder.add(route.route_url); + featureBuilder.add(route.route_color); + featureBuilder.add(route.route_text_color); + featureBuilder.add(shape_id); + featureBuilder.add(agencyName); + SimpleFeature feature = featureBuilder.buildFeature(null); + features.add(feature); + } + } else { + throw new IllegalStateException("Invalid type"); + } + } + if (features.size() == 0) { + throw new IllegalStateException("Cannot write shapefile with zero features!"); + } + // Save the file + collection = new ListFeatureCollection(collectionType, features); + + Transaction transaction = new DefaultTransaction("create"); + + String typeName = datastore.getTypeNames()[0]; + SimpleFeatureSource featureSource = datastore.getFeatureSource(typeName); + // Check that we have read-write access to disk: + // http://docs.geotools.org/stable/userguide/library/data/featuresource.html + if (featureSource instanceof SimpleFeatureStore) { + SimpleFeatureStore featureStore = (SimpleFeatureStore) featureSource; + featureStore.setTransaction(transaction); + try { + featureStore.addFeatures(collection); + transaction.commit(); + } catch (Exception e) { + e.printStackTrace(); + transaction.rollback(); + throw e; + } finally { + transaction.close(); + } + } else { + // If this is thrown, there could be some other issue unrelated to read/write + // access, for example, during development of this feature this error was thrown + // when there were no features contained within the shapefile. + throw new Exception(typeName + " does not support read/write access (or other " + + "unknown issue)."); + } + + // zip the file + DirectoryZip.zip(outDir, file); + + // Clean up temporary files. +// for (File f : outDir.listFiles()) { +// f.delete(); +// } +// outDir.delete(); + + } catch (Exception e) { + String message = "An exception occurred during the GIS export"; + LOG.error(message); + status.fail(message); + e.printStackTrace(); + } finally { + if (connection != null) DbUtils.closeQuietly(connection); + } + } + + public enum Type { ROUTES, STOPS } + + private static SimpleFeatureType createStopFeatureType() { + + SimpleFeatureTypeBuilder builder = new SimpleFeatureTypeBuilder(); + builder.setName("Stop"); + builder.setCRS(DefaultGeographicCRS.WGS84); // <- Coordinate reference system +// builder.setg + + + // add attributes in order + builder.add("the_geom", Point.class); + builder.add("name", String.class); // <- 15 chars width for name field + builder.add("code", String.class); + builder.add("desc", String.class); + builder.add("id", String.class); + builder.add("agency", String.class); + String.join(",", + // Geometry must be the first attribute for a shapefile (and must be named + // "the_geom"). + "the_geom:Point:srid=4326", + "name:String", + "code:String", + "desc:String", + "id:String", + "agency:String" + ); + + // build the type + final SimpleFeatureType LOCATION = builder.buildFeatureType(); + + return LOCATION; + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/models/Model.java b/src/main/java/com/conveyal/datatools/manager/models/Model.java index d9e073c60..14c5a1b7f 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/Model.java +++ b/src/main/java/com/conveyal/datatools/manager/models/Model.java @@ -14,6 +14,8 @@ import java.util.UUID; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.persistence.MappedSuperclass; @@ -25,6 +27,7 @@ @MappedSuperclass // applies mapping information to the subclassed entities FIXME remove? public abstract class Model implements Serializable { private static final long serialVersionUID = 1L; + private static final Logger LOG = LoggerFactory.getLogger(Model.class); public Model () { // This autogenerates an ID @@ -96,7 +99,17 @@ public void storeUser(Auth0UserProfile profile) { public void storeUser(String id) { userId = id; if (!Auth0Connection.authDisabled()) { - Auth0UserProfile profile = Auth0Users.getUserById(userId); + Auth0UserProfile profile = null; + // Try to fetch Auth0 user to store email address. This is surrounded by a try/catch because in the event of + // a failure we do not want to cause issues from this low-level operation. + try { + profile = Auth0Users.getUserById(userId); + } catch (Exception e) { + LOG.warn( + "Could not find user profile {} from Auth0. This may be due to testing conditions or simply a bad user ID.", + id); + e.printStackTrace(); + } userEmail = profile != null ? profile.getEmail() : null; } else { userEmail = "no_auth@conveyal.com"; diff --git a/src/test/java/com/conveyal/datatools/TestUtils.java b/src/test/java/com/conveyal/datatools/TestUtils.java index 3ae664478..9e14c3590 100644 --- a/src/test/java/com/conveyal/datatools/TestUtils.java +++ b/src/test/java/com/conveyal/datatools/TestUtils.java @@ -1,9 +1,15 @@ package com.conveyal.datatools; +import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; +import com.conveyal.datatools.manager.models.FeedSource; +import com.conveyal.datatools.manager.models.FeedVersion; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; +import java.io.File; +import java.io.FileInputStream; import java.io.IOException; +import java.io.InputStream; public class TestUtils { /** @@ -13,4 +19,33 @@ public static JsonNode parseJson(String jsonString) throws IOException { ObjectMapper mapper = new ObjectMapper(); return mapper.readTree(jsonString); } + + /** + * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, + * so that tasks can run synchronously. + */ + public static FeedVersion createFeedVersion(FeedSource source, String gtfsFileName) { + File gtfsFile = new File(TestUtils.class.getResource(gtfsFileName).getFile()); + return createFeedVersion(source, gtfsFile); + } + + /** + * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, + * so that tasks can run synchronously. + */ + public static FeedVersion createFeedVersion(FeedSource source, File gtfsFile) { + FeedVersion version = new FeedVersion(source); + InputStream is; + try { + is = new FileInputStream(gtfsFile); + version.newGtfsFile(is); + } catch (IOException e) { + e.printStackTrace(); + } + ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(version, "test", true); + // Run in same thread to keep things synchronous. + processSingleFeedJob.run(); + return version; + } + } diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java new file mode 100644 index 000000000..741382517 --- /dev/null +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -0,0 +1,174 @@ +package com.conveyal.datatools.manager.jobs; + +import com.conveyal.datatools.DatatoolsTest; +import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.models.FeedSource; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.models.Project; +import com.conveyal.datatools.manager.persistence.Persistence; +import com.google.common.io.Files; +import org.geotools.data.DataStore; +import org.geotools.data.DataStoreFinder; +import org.geotools.data.FeatureSource; +import org.geotools.feature.FeatureCollection; +import org.geotools.feature.FeatureIterator; +import org.junit.BeforeClass; +import org.junit.Test; +import org.opengis.feature.Feature; +import org.opengis.feature.Property; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Collection; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.zip.ZipEntry; +import java.util.zip.ZipInputStream; + +import static com.conveyal.datatools.TestUtils.createFeedVersion; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.notNullValue; + +public class GisExportJobTest { + private static final Logger LOG = LoggerFactory.getLogger(GisExportJobTest.class); + private static Project project; + private static FeedVersion calTrainVersion; + + @BeforeClass + public static void setUp() { + DatatoolsTest.setUp(); + LOG.info("ProcessGtfsSnapshotMergeTest setup"); + + // Create a project, feed sources, and feed versions to merge. + project = new Project(); + project.name = String.format("Test %s", new Date().toString()); + Persistence.projects.create(project); + FeedSource caltrain = new FeedSource("Caltrain"); + Persistence.feedSources.create(caltrain); + calTrainVersion = createFeedVersion(caltrain, "caltrain_gtfs.zip"); + caltrain.projectId = project.id; + } + + @Test + public void canExportStops () throws IOException { + // Run the GIS export job for stops. + File zipFile = File.createTempFile("stops", ".zip"); + Set ids = new HashSet<>(); + ids.add(calTrainVersion.id); + GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.STOPS, zipFile, ids); + gisExportJob.run(); + assertThat(gisExportJob.status.error, equalTo(false)); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + // Iterate over features. + int featureCount = 0; + try (FeatureIterator iterator = collection.features()) { + while (iterator.hasNext()) { + featureCount++; + Feature feature = iterator.next(); + // GeometryAttribute sourceGeometry = feature.getDefaultGeometryProperty(); + Collection properties = feature.getProperties(); + // Iterate over feature properties and verify everything looks OK. + for (Property property : properties) { + String name = property.getName().toString(); + LOG.info("{}: {}", name, property.getValue()); + if ("the_geom".equals(name)) { + // Check that the geometry was exported properly. +// assertThat(property.getValue(), notNullValue()); + } + } + } + } + // Ensure that all stops from feed version are present in shapefile. + assertThat(featureCount, equalTo(calTrainVersion.feedLoadResult.stops.rowCount)); + } + + @Test + public void canExportRoutes () throws IOException, SQLException { + // Run the GIS export job for stops. + File zipFile = File.createTempFile("routes", ".zip"); + Set ids = new HashSet<>(); + ids.add(calTrainVersion.id); + GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.ROUTES, zipFile, ids); + gisExportJob.run(); + assertThat(gisExportJob.status.error, equalTo(false)); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + // Iterate over features. + int featureCount = 0; + try (FeatureIterator iterator = collection.features()) { + while (iterator.hasNext()) { + featureCount++; + Feature feature = iterator.next(); + // GeometryAttribute sourceGeometry = feature.getDefaultGeometryProperty(); + Collection properties = feature.getProperties(); + // Iterate over feature properties and verify everything looks OK. + for (Property property : properties) { + String name = property.getName().toString(); + LOG.info("{}: {}", name, property.getValue()); + if ("the_geom".equals(name)) { + // Check that the geometry was exported properly. + assertThat(property.getValue(), notNullValue()); + } + } + } + } + PreparedStatement preparedStatement = DataManager.GTFS_DATA_SOURCE.getConnection() + .prepareStatement( + String.format("select count(*) from %s" + ".patterns", calTrainVersion.namespace)); + ResultSet resultSet = preparedStatement.executeQuery(); + int patternCount = 0; + while (resultSet.next()) { + patternCount = resultSet.getInt(1); + } + // Check that feature count = pattern count from SQL query. + assertThat(featureCount, equalTo(patternCount)); + } + + private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) throws IOException { + // Unzip the shapefile and read the stop features to verify they are valid. + File destDir = Files.createTempDir(); + byte[] buffer = new byte[1024]; + ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile)); + ZipEntry zipEntry = zis.getNextEntry(); + while (zipEntry != null) { + File newFile = new File(destDir, zipEntry.getName()); + FileOutputStream fos = new FileOutputStream(newFile); + int len; + while ((len = zis.read(buffer)) > 0) { + fos.write(buffer, 0, len); + } + fos.close(); + zipEntry = zis.getNextEntry(); + } + zis.closeEntry(); + zis.close(); + for (File file : destDir.listFiles()) { + // Find the shapefile and + if (file.getName().endsWith(".shp")) { + LOG.info("Found shapefile entry: {}", file.getAbsolutePath()); + try { + Map connect = new HashMap<>(); + connect.put("url", file.toURI().toString()); + DataStore dataStore = DataStoreFinder.getDataStore(connect); + String[] typeNames = dataStore.getTypeNames(); + String typeName = typeNames[0]; + LOG.info("Reading content " + typeName); + // Create feature collection from data. + FeatureSource featureSource = dataStore.getFeatureSource(typeName); + return featureSource.getFeatures(); + } catch (Throwable e) {} + } + } + return null; + } +} From 98f2531f216cd92c567fa8b192ca3f0a80bcbe2b Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 26 Apr 2019 15:29:44 -0400 Subject: [PATCH 45/83] test(shp-export): re-add non-null geom assertion --- .../com/conveyal/datatools/manager/jobs/GisExportJobTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index 741382517..9331fb2df 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -84,7 +84,7 @@ public void canExportStops () throws IOException { LOG.info("{}: {}", name, property.getValue()); if ("the_geom".equals(name)) { // Check that the geometry was exported properly. -// assertThat(property.getValue(), notNullValue()); + assertThat(property.getValue(), notNullValue()); } } } From 53614393c40bff7d734c91bfaa4e5e01feab9285 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Fri, 26 Apr 2019 16:46:13 -0700 Subject: [PATCH 46/83] refactor(auth0): update so auth0 API calls work during testing --- .../manager/auth/Auth0Connection.java | 20 ++++++++++++++++--- .../manager/auth/Auth0UserProfile.java | 7 +++++++ .../datatools/manager/auth/Auth0Users.java | 2 +- 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java index 11de08bf0..80c5942ce 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Connection.java @@ -45,9 +45,23 @@ public class Auth0Connection { */ public static void checkUser(Request req) { if (authDisabled() || inTestingEnvironment()) { - // If in a development or testing environment, assign a mock profile to request attribute and skip - // authentication. - req.attribute("user", new Auth0UserProfile("mock@example.com", "user_id:string")); + // If in a development or testing environment, assign a mock profile of an admin user to the request + // attribute and skip authentication. + Auth0UserProfile.DatatoolsInfo adminDatatoolsInfo = new Auth0UserProfile.DatatoolsInfo(); + adminDatatoolsInfo.setPermissions( + new Auth0UserProfile.Permission[]{ + new Auth0UserProfile.Permission("administer-application", new String[]{}) + } + ); + adminDatatoolsInfo.setClientId(DataManager.getConfigPropertyAsText("AUTH0_CLIENT_ID")); + + Auth0UserProfile.AppMetadata adminAppMetaData = new Auth0UserProfile.AppMetadata(); + adminAppMetaData.setDatatoolsInfo(adminDatatoolsInfo); + + Auth0UserProfile adminUser = new Auth0UserProfile("mock@example.com", "user_id:string"); + adminUser.setApp_metadata(adminAppMetaData); + + req.attribute("user", adminUser); return; } // Check that auth header is present and formatted correctly (Authorization: Bearer [token]). diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java index f6e21918e..4b6d4a161 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java @@ -6,6 +6,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.ArrayList; import java.util.List; /** @@ -72,6 +73,12 @@ public AppMetadata() {} public void setDatatoolsInfo(DatatoolsInfo datatools) { if (Auth0Connection.authDisabled()) return; + if (this.datatools == null) { + this.datatools = new ArrayList<>(); + this.datatools.add(datatools); + return; + } + for(int i = 0; i < this.datatools.size(); i++) { if (this.datatools.get(i).clientId.equals(DataManager.getConfigPropertyAsText("AUTH0_CLIENT_ID"))) { this.datatools.set(i, datatools); diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index 53b6430a2..7141bf6a7 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -167,7 +167,7 @@ public static Auth0UserProfile getUserById(String id) { * Sets uri builder scheme port and host according to whether a test environment is in effect */ private static void setSchemePortAndHost(URIBuilder builder) { - if (AUTH0_DOMAIN.equals("localhost:8089")) { + if (AUTH0_DOMAIN.equals("your-auth0-domain")) { // set items for testing purposes assuming use of a Wiremock server builder.setScheme("http"); builder.setPort(8089); From 7c03086363adf4accb3b4fafc9db5bbf6a287044 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Fri, 26 Apr 2019 20:44:09 -0700 Subject: [PATCH 47/83] refactor(auth0): consolidate URI builder code --- .../conveyal/datatools/manager/auth/Auth0Users.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java index 7141bf6a7..4bc6cf181 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0Users.java @@ -40,8 +40,7 @@ public class Auth0Users { private static URI getUrl(String searchQuery, int page, int perPage, boolean includeTotals) { // always filter users by datatools client_id String defaultQuery = "app_metadata.datatools.client_id:" + clientId; - URIBuilder builder = new URIBuilder(); - setSchemePortAndHost(builder); + URIBuilder builder = getURIBuilder(); builder.setPath("/api/v2/users"); builder.setParameter("sort", "email:1"); builder.setParameter("per_page", Integer.toString(perPage)); @@ -141,8 +140,7 @@ public static String getAuth0Users(String queryString) { * Get a single Auth0 user for the specified ID. */ public static Auth0UserProfile getUserById(String id) { - URIBuilder builder = new URIBuilder(); - setSchemePortAndHost(builder); + URIBuilder builder = getURIBuilder(); builder.setPath("/api/v2/users/" + id); URI uri = null; try { @@ -164,9 +162,10 @@ public static Auth0UserProfile getUserById(String id) { } /** - * Sets uri builder scheme port and host according to whether a test environment is in effect + * Creates a new uri builder and sets the scheme, port and host according to whether a test environment is in effect */ - private static void setSchemePortAndHost(URIBuilder builder) { + private static URIBuilder getURIBuilder() { + URIBuilder builder = new URIBuilder(); if (AUTH0_DOMAIN.equals("your-auth0-domain")) { // set items for testing purposes assuming use of a Wiremock server builder.setScheme("http"); @@ -177,6 +176,7 @@ private static void setSchemePortAndHost(URIBuilder builder) { builder.setScheme("https"); builder.setHost(AUTH0_DOMAIN); } + return builder; } /** From 11df612851e52f374ae712a48acf7cf206d2b85e Mon Sep 17 00:00:00 2001 From: evansiroky Date: Sun, 28 Apr 2019 20:47:51 -0700 Subject: [PATCH 48/83] refactor(test): update to latest java-snapshot-matcher --- pom.xml | 2 +- ...lAuth0Error.json => canReturnMeaningfulAuth0Error-0.json} | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) rename src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/{canReturnMeaningfulAuth0Error.json => canReturnMeaningfulAuth0Error-0.json} (69%) diff --git a/pom.xml b/pom.xml index 6aeb0d5f4..82b51df18 100644 --- a/pom.xml +++ b/pom.xml @@ -353,7 +353,7 @@ com.github.conveyal java-snapshot-matcher - e6a78d3af9d67f6f6240261fcba497d3b50f9399 + 3495b32f7b4d3f82590e0a2284029214070b6984 test diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error-0.json similarity index 69% rename from src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json rename to src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error-0.json index 8bbc1a81e..8554b2a1c 100644 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error.json +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canReturnMeaningfulAuth0Error-0.json @@ -1,6 +1,5 @@ { - "result" : "ERR", - "message" : "An Auth0 error occurred: The user already exists.", "code" : 409, - "detail" : null + "message" : "An Auth0 error occurred: The user already exists.", + "result" : "ERR" } \ No newline at end of file From 6d9db089349d2388868b9e53bb99d9adbe7a43be Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 2 May 2019 12:36:58 -0400 Subject: [PATCH 49/83] fix(merge-feeds): add test for errors; fix missing stop_code bug --- pom.xml | 10 + .../datatools/manager/jobs/MergeFeedsJob.java | 179 +++++++++++------- .../com/conveyal/datatools/TestUtils.java | 35 ++++ .../manager/jobs/MergeFeedsJobTest.java | 21 +- 4 files changed, 173 insertions(+), 72 deletions(-) diff --git a/pom.xml b/pom.xml index 703fd1ed3..cdcd40344 100644 --- a/pom.xml +++ b/pom.xml @@ -366,6 +366,16 @@ 2.14.0 test + + + net.sf.supercsv + super-csv + 2.4.0 + diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index a0ea5a363..499d3c0c6 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -15,11 +15,14 @@ import com.fasterxml.jackson.databind.ObjectMapper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.supercsv.io.CsvListWriter; +import org.supercsv.prefs.CsvPreference; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; +import java.io.OutputStreamWriter; import java.time.LocalDate; import java.time.temporal.ChronoUnit; import java.util.ArrayList; @@ -201,7 +204,12 @@ public void jobFinished() { // a single agency feed. // TODO: Perhaps future work can generate a special feed_info file for the merged // file. - LOG.info("Skipping feed_info table for regional merge."); + LOG.warn("Skipping feed_info table for regional merge."); + continue; + } + if (table.name.equals(Table.PATTERNS.name) || table.name.equals(Table.PATTERN_STOP.name)) { + LOG.warn("Skipping editor-only table {}.", table.name); + continue; } double percentComplete = Math.round((double) i / numberOfTables * 10000d) / 100d; status.update("Merging " + table.name, percentComplete); @@ -209,7 +217,7 @@ public void jobFinished() { LOG.info("Writing {} to merged feed", table.name); int mergedLineNumber = constructMergedTable(table, feedsToMerge, out); if (mergedLineNumber == 0) { - LOG.info("Skipping {} table. No entries found in zip files.", table.name); + LOG.warn("Skipping {} table. No entries found in zip files.", table.name); } else if (mergedLineNumber == -1) { LOG.error("Merge {} table failed!", table.name); } @@ -301,6 +309,8 @@ private void storeMergedFeed() throws IOException { */ private int constructMergedTable(Table table, List feedsToMerge, ZipOutputStream out) throws IOException { + // CSV writer used to write to zip file. + CsvListWriter writer = new CsvListWriter(new OutputStreamWriter(out), CsvPreference.STANDARD_PREFERENCE); String keyField = table.getKeyFieldName(); String orderField = table.getOrderFieldName(); if (mergeType.equals(MTC)) { @@ -414,6 +424,8 @@ private int constructMergedTable(Table table, List feedsToMerge, // For the first line of the stops table, check that the alt. key // field (stop_code) is present. If it is not, revert to the original // key field. This is only pertinent for the MTC merge type. + // TODO: Use more sophisticated check for missing stop_codes than + // simply the first line containing the value. if (feedIndex == 0) { // Check that the first file contains stop_code values. if ("".equals(keyValue)) { @@ -504,14 +516,12 @@ private int constructMergedTable(Table table, List feedsToMerge, // duplicates? I think we would need to consider the // service_id:exception_type:date as the unique key and include any // all entries as long as they are unique on this key. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - String key = getFieldScopedValue(table, idScope, val); - // Modify service_id and ensure that referencing trips - // have service_id updated. - val = String.join(":", idScope, val); - mergeFeedsResult.remappedIds.put(key, val); - } + if (hasDuplicateError(idErrors)) { + String key = getTableScopedValue(table, idScope, val); + // Modify service_id and ensure that referencing trips + // have service_id updated. + valueToWrite = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, valueToWrite); } // If a service_id from the active calendar has both the // start_date and end_date in the future, the service will be @@ -530,7 +540,7 @@ private int constructMergedTable(Table table, List feedsToMerge, "Skipping calendar entry {} because it operates in the future.", keyValue); String key = - getFieldScopedValue(table, idScope, keyValue); + getTableScopedValue(table, idScope, keyValue); mergeFeedsResult.skippedIds.add(key); skipRecord = true; continue; @@ -580,6 +590,8 @@ private int constructMergedTable(Table table, List feedsToMerge, // NOTE: route case is also used by the stops case, so the route // case must follow this block. case "routes": + boolean useAltKey = + keyField.equals("stop_code") || keyField.equals("route_short_name"); // First, check uniqueness of primary key value (i.e., stop or route ID) // in case the stop_code or route_short_name are being used. This // must occur unconditionally because each record must be tracked @@ -593,29 +605,47 @@ private int constructMergedTable(Table table, List feedsToMerge, // matching route_short_names/stop_codes between the datasets shall be considered same route/stop. Any // route_short_name/stop_code in active data not present in the future will be appended to the // future routes/stops file. - if (keyField.equals("stop_code") || keyField - .equals("route_short_name")) { - for (NewGTFSError error : idErrors) { - if (error.errorType - .equals(NewGTFSErrorType.DUPLICATE_ID)) { - // If we encounter a route/stop that shares its alt. ID with a previous route/stop, - // we need to remap its route_id/stop_id field so that references point to the previous - // route_id/stop_id. - String currentId = index == 0 ? val : rowValues[0]; - String key = - getFieldScopedValue(table, idScope, currentId); - // Extract the route_id/stop_id value used for the route/stop with matching alt ID. - String[] strings = - rowValuesForStopOrRouteId.get(val); - String id = strings[0]; - if (!id.equals(currentId)) { - // Remap this row's route_id/stop_id to ensure - // that referencing entities (trips, stop_times) have their - // references updated. - mergeFeedsResult.remappedIds.put(key, id); - } + if (useAltKey) { + if ("".equals(val)) { + // If alt key is empty (which is permitted), skip + // checking of alt key dupe errors/re-mapping values and + // simply use the primary key (route_id/stop_id). + if (hasDuplicateError(primaryKeyErrors)) { skipRecord = true; } + } else if (hasDuplicateError(idErrors)) { + // If we encounter a route/stop that shares its alt. + // ID with a previous route/stop, we need to + // remap its route_id/stop_id field so that + // references point to the previous + // route_id/stop_id. For example, + // route_short_name in both feeds is "ABC" but + // each route has a different route_id (123 and + // 456). This block will map references to 456 to + // 123 so that ABC/123 is the route of record. + //////////////////////////////////////////////////////// + // Get current route/stop ID. (Note: primary + // ID index is always zero because we're + // iterating over the spec fields). + String currentPrimaryKey = rowValues[0]; + // Get unique key to check for remapped ID when + // writing values to file. + String key = + getTableScopedValue(table, idScope, currentPrimaryKey); + // Extract the route/stop ID value used for the + // route/stop with already encountered matching + // short name/stop code. + String[] strings = + rowValuesForStopOrRouteId.get(String.join( + ":", keyField, val)); + String keyForMatchingAltId = strings[0]; + if (!keyForMatchingAltId.equals(currentPrimaryKey)) { + // Remap this row's route_id/stop_id to ensure + // that referencing entities (trips, stop_times) + // have their references updated. + mergeFeedsResult.remappedIds.put(key, keyForMatchingAltId); + } + skipRecord = true; } // Next check for regular ID conflicts (e.g., on route_id or stop_id) because any // conflicts here will actually break the feed. This essentially handles the case @@ -624,26 +654,19 @@ private int constructMergedTable(Table table, List feedsToMerge, // matching on short name, so we must modify the route_id. if (!skipRecord && !referenceTracker.transitIds .contains(String.join(":", keyField, keyValue))) { - for (NewGTFSError error : primaryKeyErrors) { - if (error.errorType - .equals(NewGTFSErrorType.DUPLICATE_ID)) { - String key = - getFieldScopedValue(table, idScope, val); - // Modify route_id and ensure that referencing trips have route_id updated. - val = String.join(":", idScope, val); - mergeFeedsResult.remappedIds.put(key, val); - } + if (hasDuplicateError(primaryKeyErrors)) { + String key = getTableScopedValue(table, idScope, val); + // Modify route_id and ensure that referencing trips + // have route_id updated. + valueToWrite = String.join(":", idScope, val); + mergeFeedsResult.remappedIds.put(key, valueToWrite); } } } else { - // Key field has defaulted to the standard primary key field (stop_id or route_id), - // which makes the check much simpler (just skip the duplicate record). - for (NewGTFSError error : idErrors) { - if (error.errorType - .equals(NewGTFSErrorType.DUPLICATE_ID)) { - skipRecord = true; - } - } + // Key field has defaulted to the standard primary key field + // (stop_id or route_id), which makes the check much + // simpler (just skip the duplicate record). + if (hasDuplicateError(idErrors)) skipRecord = true; } if (newAgencyId != null && field.name.equals("agency_id")) { @@ -655,22 +678,18 @@ private int constructMergedTable(Table table, List feedsToMerge, break; default: // For any other table, skip any duplicate record. - for (NewGTFSError error : idErrors) { - if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) { - skipRecord = true; - } - } + if (hasDuplicateError(idErrors)) skipRecord = true; break; } } if (field.isForeignReference()) { - String key = getFieldScopedValue(field.referenceTable, idScope, val); + String key = getTableScopedValue(field.referenceTable, idScope, val); // If the current foreign ref points to another record that has been skipped, skip this // record and add its primary key to the list of skipped IDs (so that other references can // be properly omitted). if (mergeFeedsResult.skippedIds.contains(key)) { - String skippedKey = getFieldScopedValue(table, idScope, keyValue); + String skippedKey = getTableScopedValue(table, idScope, keyValue); if (orderField != null) { skippedKey = String.join(":", skippedKey, csvReader.get(getFieldIndex(fieldsFoundInZip, orderField))); @@ -688,7 +707,7 @@ private int constructMergedTable(Table table, List feedsToMerge, } } rowValues[specFieldIndex] = valueToWrite; - } + } // End of iteration over each field for a row. // Do not write rows that are designated to be skipped. if (skipRecord && this.mergeType.equals(MTC)) { mergeFeedsResult.recordsSkipCount++; @@ -696,15 +715,22 @@ private int constructMergedTable(Table table, List feedsToMerge, } String newLine = String.join(",", rowValues); switch (table.name) { - // Store row values for route or stop ID in order to check for ID conflicts. NOTE: - // This is only intended to be used for routes and stops. Otherwise, this might - // consume too much memory. + // Store row values for route or stop ID (or alternative ID field) in order + // to check for ID conflicts. NOTE: This is only intended to be used for + // routes and stops. Otherwise, this might (will) consume too much memory. case "stops": case "routes": // FIXME: This should be revised for tables with order fields, but it should work fine for its // primary purposes: to detect exact copy rows and to temporarily hold the data in case a reference // needs to be looked up in order to remap an entity to that key. - rowValuesForStopOrRouteId.put(rowValues[keyFieldIndex], rowValues); + // Here we need to get the key field index according to the spec + // table definition. Otherwise, if we use the keyFieldIndex variable + // defined above, we will be using the found fields index, which will + // cause major issues when trying to put and get values into the + // below map. + String key = String.join( + ":", keyField, rowValues[table.getFieldIndex(keyField)]); + rowValuesForStopOrRouteId.put(key, rowValues); break; case "transfers": case "fare_rules": @@ -731,23 +757,24 @@ private int constructMergedTable(Table table, List feedsToMerge, ZipEntry tableEntry = new ZipEntry(table.name + ".txt"); out.putNextEntry(tableEntry); // Write headers to table. - String headers = specFields.stream().map(field -> field.name) - .collect(Collectors.joining(",")); - out.write(headers.getBytes()); - out.write("\n".getBytes()); + String[] headers = specFields.stream() + .map(field -> field.name) + .toArray(String[]::new); + writer.write(headers); } // Write line to table (plus new line char). - out.write(newLine.getBytes()); - out.write("\n".getBytes()); + writer.write(rowValues); lineNumber++; mergedLineNumber++; - } + } // End of iteration over each row. } + writer.flush(); out.closeEntry(); } catch (Exception e) { LOG.error("Error merging feed sources: {}", feedVersions.stream().map(version -> version.parentFeedSource().name) .collect(Collectors.toList()).toString()); + e.printStackTrace(); throw e; } // Track the number of lines in the merged table and return final number. @@ -755,8 +782,20 @@ private int constructMergedTable(Table table, List feedsToMerge, return mergedLineNumber; } - private static String getFieldScopedValue(Table table, String prefix, String id) { - return String.join(":", table.name, prefix, id); + /** Checks that any of a set of errors is of the type {@link NewGTFSErrorType#DUPLICATE_ID}. */ + private boolean hasDuplicateError(Set errors) { + for (NewGTFSError error : errors) { + if (error.errorType.equals(NewGTFSErrorType.DUPLICATE_ID)) return true; + } + return false; + } + + /** Get table-scoped value used for key when remapping references for a particular feed. */ + private static String getTableScopedValue(Table table, String prefix, String id) { + return String.join(":", + table.name, + prefix, + id); } /** diff --git a/src/test/java/com/conveyal/datatools/TestUtils.java b/src/test/java/com/conveyal/datatools/TestUtils.java index 3ae664478..b340dcf94 100644 --- a/src/test/java/com/conveyal/datatools/TestUtils.java +++ b/src/test/java/com/conveyal/datatools/TestUtils.java @@ -2,10 +2,23 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.IOException; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Arrays; +import java.util.stream.Collectors; + +import static com.conveyal.datatools.manager.DataManager.GTFS_DATA_SOURCE; +import static org.hamcrest.Matchers.equalTo; +import static org.junit.Assert.assertThat; public class TestUtils { + + private static final Logger LOG = LoggerFactory.getLogger(TestUtils.class); + /** * Parse a json string into an unmapped JsonNode object */ @@ -13,4 +26,26 @@ public static JsonNode parseJson(String jsonString) throws IOException { ObjectMapper mapper = new ObjectMapper(); return mapper.readTree(jsonString); } + + public static void assertThatSqlQueryYieldsRowCount(String sql, int expectedRowCount) throws + SQLException { + LOG.info(sql); + int recordCount = 0; + ResultSet rs = GTFS_DATA_SOURCE.getConnection().prepareStatement(sql).executeQuery(); + while (rs.next()) recordCount++; + assertThat("Records matching query should equal expected count.", recordCount, equalTo(expectedRowCount)); + } + + public static void assertThatFeedHasNoErrorsOfType (String namespace, String... errorTypes) throws SQLException { + assertThatSqlQueryYieldsRowCount( + String.format( + "select * from %s.errors where error_type in (%s)", + namespace, + Arrays.stream(errorTypes) + .map(error -> String.format("'%s'", error)) + .collect(Collectors.joining(",")) + ), + 0 + ); + } } diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java index a78fa6f44..722d1ebb2 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -2,10 +2,12 @@ import com.conveyal.datatools.DatatoolsTest; import com.conveyal.datatools.LoadFeedTest; +import com.conveyal.datatools.TestUtils; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.models.Project; import com.conveyal.datatools.manager.persistence.Persistence; +import com.conveyal.gtfs.error.NewGTFSErrorType; import org.junit.BeforeClass; import org.junit.Test; import org.slf4j.Logger; @@ -15,6 +17,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.sql.SQLException; import java.util.Date; import java.util.HashSet; import java.util.Set; @@ -62,7 +65,7 @@ public static void setUp() { * Ensures that a regional feed merge will produce a feed that includes all entities from each feed. */ @Test - public void canMergeRegional() { + public void canMergeRegional() throws SQLException { // Set up list of feed versions to merge. Set versions = new HashSet<>(); versions.add(bartVersion1); @@ -114,6 +117,14 @@ public void canMergeRegional() { mergedVersion.feedLoadResult.calendarDates.rowCount, bartVersion1.feedLoadResult.calendarDates.rowCount + calTrainVersion.feedLoadResult.calendarDates.rowCount + napaVersion.feedLoadResult.calendarDates.rowCount ); + // Ensure there are no referential integrity errors, duplicate ID, or wrong number of + // fields errors. + TestUtils.assertThatFeedHasNoErrorsOfType( + mergedVersion.namespace, + NewGTFSErrorType.REFERENTIAL_INTEGRITY.toString(), + NewGTFSErrorType.DUPLICATE_ID.toString(), + NewGTFSErrorType.WRONG_NUMBER_OF_FIELDS.toString() + ); } /** @@ -141,7 +152,7 @@ public void mergeMTCShouldFailOnDuplicateTrip() { * trips contained within. */ @Test - public void canMergeBARTFeeds() { + public void canMergeBARTFeeds() throws SQLException { Set versions = new HashSet<>(); versions.add(bartVersion1); versions.add(bartVersion2); @@ -160,6 +171,12 @@ public void canMergeBARTFeeds() { 9, // Magic number represents the number of routes in the merged BART feed. mergeFeedsJob.mergedVersion.feedLoadResult.routes.rowCount ); + // Ensure there are no referential integrity errors or duplicate ID errors. + TestUtils.assertThatFeedHasNoErrorsOfType( + mergeFeedsJob.mergedVersion.namespace, + NewGTFSErrorType.REFERENTIAL_INTEGRITY.toString(), + NewGTFSErrorType.DUPLICATE_ID.toString() + ); } /** From bcc5cbb15d4046bd5145673b4b1cf13e174aa460 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 2 May 2019 13:00:52 -0400 Subject: [PATCH 50/83] build(travis): remove oraclejdk8 to fix build --- .travis.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index b4d0bc5e7..0316ad080 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,5 @@ language: java language: java -jdk: - - oraclejdk8 install: true sudo: false # Install mongoDB to perform persistence tests From 04c9c47f15bb1e7c1c665443b770d4e1b7eb6b7e Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 2 May 2019 13:08:39 -0400 Subject: [PATCH 51/83] build(travis): use jdk 8 and linux trusty dist --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index 0316ad080..6ed642f26 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,8 @@ +dist: trusty # jdk 8 not available on xenial language: java language: java +java: + - oraclejdk8 install: true sudo: false # Install mongoDB to perform persistence tests From 7f69f67ea321d34f9e63a9652ff47ab5c9989925 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 2 May 2019 14:21:33 -0400 Subject: [PATCH 52/83] refactor(merge-feeds): improve error message for agency_id mismatch --- .../datatools/manager/jobs/MergeFeedsJob.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 499d3c0c6..5b3d684cf 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -393,8 +393,16 @@ private int constructMergedTable(Table table, List feedsToMerge, // value as the first feed. String agencyId = String.join(":", keyField, keyValue); if (!"".equals(keyValue) && !referenceTracker.transitIds.contains(agencyId)) { - String message = "MTC merge detected mismatching agency_id values " - + "between two feeds. Failing merge operation."; + String otherAgencyId = referenceTracker.transitIds.stream() + .filter(transitId -> transitId.startsWith("agency_id")) + .findAny() + .orElse(null); + String message = String.format( + "MTC merge detected mismatching agency_id values between two " + + "feeds (%s and %s). Failing merge operation.", + agencyId, + otherAgencyId + ); LOG.error(message); mergeFeedsResult.failed = true; mergeFeedsResult.failureReasons.add(message); From a590fc313f800dad3b0ccf5f5de856dd7de6f336 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 3 May 2019 11:45:12 -0400 Subject: [PATCH 53/83] build(pom): update gtfs-lib to 4.3.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index cdcd40344..1587348a7 100644 --- a/pom.xml +++ b/pom.xml @@ -258,7 +258,7 @@ com.conveyal gtfs-lib - 4.3.3 + 4.3.4 From c43f69762393caa5e30e79ef0816a30170cdf5f1 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 10:48:01 -0400 Subject: [PATCH 54/83] refactor(export-gis): fix geotools version; add controller --- pom.xml | 4 +- .../common/status/MonitorableJob.java | 9 +- .../editor/jobs/ConvertEditorMapDBToSQL.java | 5 +- .../api/FeedVersionController.java | 67 +++++++--- .../datatools/manager/jobs/GisExportJob.java | 122 +++++++----------- .../manager/models/FeedDownloadToken.java | 15 ++- .../manager/persistence/TypedPersistence.java | 5 + .../manager/jobs/GisExportJobTest.java | 4 +- 8 files changed, 130 insertions(+), 101 deletions(-) diff --git a/pom.xml b/pom.xml index a17fc6387..d07051ac0 100644 --- a/pom.xml +++ b/pom.xml @@ -52,7 +52,9 @@ 2.9.8 - 20.3 + + 17.5 diff --git a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java index b88c120ed..f8b50ec67 100644 --- a/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java +++ b/src/main/java/com/conveyal/datatools/common/status/MonitorableJob.java @@ -6,6 +6,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.File; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -19,10 +20,11 @@ */ public abstract class MonitorableJob implements Runnable { private static final Logger LOG = LoggerFactory.getLogger(MonitorableJob.class); - protected final String owner; + public final String owner; // Public fields will be serialized over HTTP API and visible to the web client public final JobType type; + public File file; public String parentJobId; public JobType parentJobType; // Status is not final to allow some jobs to have extra status fields. @@ -48,6 +50,7 @@ public enum JobType { LOAD_FEED, VALIDATE_FEED, DEPLOY_TO_OTP, + EXPORT_GIS, FETCH_PROJECT_FEEDS, FETCH_SINGLE_FEED, MAKE_PROJECT_PUBLIC, @@ -90,6 +93,10 @@ private void registerJob() { DataManager.userJobsMap.put(this.owner, userJobs); } + public File retrieveFile () { + return file; + } + /** * This method should never be called directly or overridden. It is a standard clean up stage for all * monitorable jobs. diff --git a/src/main/java/com/conveyal/datatools/editor/jobs/ConvertEditorMapDBToSQL.java b/src/main/java/com/conveyal/datatools/editor/jobs/ConvertEditorMapDBToSQL.java index c48fc7273..cbc21b453 100644 --- a/src/main/java/com/conveyal/datatools/editor/jobs/ConvertEditorMapDBToSQL.java +++ b/src/main/java/com/conveyal/datatools/editor/jobs/ConvertEditorMapDBToSQL.java @@ -62,8 +62,7 @@ public void jobLogic() { and( eq("version", versionNumber), eq(Snapshot.FEED_SOURCE_REF, feedId) - ), - null + ) ); boolean snapshotExists = true; if (matchingSnapshot == null) { @@ -351,4 +350,4 @@ private int handleBatchExecution(int batchSize, PreparedStatement ... preparedSt return batchSize; } } -} \ No newline at end of file +} diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index c1b0aaadf..0b10656d0 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -1,5 +1,6 @@ package com.conveyal.datatools.manager.controllers.api; +import com.conveyal.datatools.common.utils.SparkUtils; import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; import com.conveyal.datatools.manager.jobs.CreateFeedVersionFromSnapshotJob; @@ -22,7 +23,6 @@ import javax.servlet.http.HttpServletResponse; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.util.Arrays; import java.util.Collection; @@ -35,6 +35,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.formatJobMessage; import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; import static com.conveyal.datatools.manager.controllers.api.FeedSourceController.checkFeedSourcePermissions; +import static com.mongodb.client.model.Filters.eq; import static spark.Spark.delete; import static spark.Spark.get; import static spark.Spark.post; @@ -212,8 +213,8 @@ private static HttpServletResponse downloadFeedVersionDirectly(Request req, Resp * Returns credentials that a client may use to then download a feed version. Functionality * changes depending on whether application.data.use_s3_storage config property is true. */ - private static Object getFeedDownloadCredentials(Request req, Response res) { FeedVersion version = requestFeedVersion(req, "view"); + private static Object getDownloadCredentials(Request req, Response res) { if (DataManager.useS3) { // Return pre-signed download link if using S3. @@ -267,24 +268,52 @@ private static FeedVersion publishToExternalResource (Request req, Response res) } } - public static FileInputStream exportGis (Request req, Response res) throws IOException { + /** + * HTTP endpoint to initiate an export of a shapefile containing the stops or routes of one or + * more feed versions. NOTE: the job ID returned must be used by the requester to download the + * zipped shapefile once the job has completed. + */ + private static String exportGis (Request req, Response res) throws IOException { String type = req.queryParams("type"); + Auth0UserProfile userProfile = req.attribute("user"); List feedIds = Arrays.asList(req.queryParams("feedId").split(",")); File temp = File.createTempFile("gis_" + type, ".zip"); + // Create and run shapefile export. + GisExportJob gisExportJob = new GisExportJob( + GisExportJob.ExportType.valueOf(type), + temp, + feedIds, + userProfile.getUser_id() + ); + DataManager.heavyExecutor.execute(gisExportJob); + // Do not use S3 to store the file, which should only be stored ephemerally (until requesting + // user has downloaded file). + FeedDownloadToken token = new FeedDownloadToken(gisExportJob); + Persistence.tokens.create(token); + return SparkUtils.formatJobMessage(gisExportJob.jobId, "Generating shapefile."); + } - GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.valueOf(type), temp, feedIds); - gisExportJob.run(); - - FileInputStream fis = new FileInputStream(temp); - - res.type("application/zip"); - res.header("Content-Disposition", "attachment;filename=" + temp.getName().replaceAll("[^a-zA-Z0-9]", "") + ".zip"); - - // will not actually be deleted until download has completed - // http://stackoverflow.com/questions/24372279 - temp.delete(); - - return fis; + /** + * Public HTTP endpoint to download a zipped shapefile of routes or stops for a set of feed + * versions using the job ID that was used for initially creating the exported shapes. + */ + private static HttpServletResponse downloadFeedVersionGis (Request req, Response res) { + FeedDownloadToken token = Persistence.tokens.getOneFiltered(eq("jobId", req.params("jobId"))); + File file = new File(token.filePath); + try { + return downloadFile(file, file.getName(), req, res); + } catch (Exception e) { + logMessageAndHalt(req, 500, "Unknown error occurred while downloading feed version shapefile", e); + } finally { + if (!file.delete()) { + LOG.error("Could not delete shapefile {}. Storage issues may occur.", token.filePath); + } else { + LOG.info("Deleted shapefile {} following download.", token.filePath); + } + // Delete token. + Persistence.tokens.removeById(token.id); + } + return null; } /** @@ -319,19 +348,21 @@ public static void register (String apiPrefix) { // previous version of data tools. get(apiPrefix + "secure/feedversion/:id", FeedVersionController::getFeedVersion, json::write); get(apiPrefix + "secure/feedversion/:id/download", FeedVersionController::downloadFeedVersionDirectly); - get(apiPrefix + "secure/feedversion/:id/downloadtoken", FeedVersionController::getFeedDownloadCredentials, json::write); + get(apiPrefix + "secure/feedversion/:id/downloadtoken", FeedVersionController::getDownloadCredentials, json::write); post(apiPrefix + "secure/feedversion/:id/validate", FeedVersionController::validate, json::write); get(apiPrefix + "secure/feedversion", FeedVersionController::getAllFeedVersionsForFeedSource, json::write); post(apiPrefix + "secure/feedversion", FeedVersionController::createFeedVersionViaUpload, json::write); + post(apiPrefix + "secure/feedversion/shapes", FeedVersionController::exportGis, json::write); post(apiPrefix + "secure/feedversion/fromsnapshot", FeedVersionController::createFeedVersionFromSnapshot, json::write); put(apiPrefix + "secure/feedversion/:id/rename", FeedVersionController::renameFeedVersion, json::write); post(apiPrefix + "secure/feedversion/:id/publish", FeedVersionController::publishToExternalResource, json::write); delete(apiPrefix + "secure/feedversion/:id", FeedVersionController::deleteFeedVersion, json::write); get(apiPrefix + "public/feedversion", FeedVersionController::getAllFeedVersionsForFeedSource, json::write); - get(apiPrefix + "public/feedversion/:id/downloadtoken", FeedVersionController::getFeedDownloadCredentials, json::write); + get(apiPrefix + "public/feedversion/:id/downloadtoken", FeedVersionController::getDownloadCredentials, json::write); get(apiPrefix + "downloadfeed/:token", FeedVersionController::downloadFeedVersionWithToken); + get(apiPrefix + "downloadshapes/:jobId", FeedVersionController::downloadFeedVersionGis, json::write); } } diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java index beed21249..642fd16a2 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -20,12 +20,11 @@ import org.geotools.data.DataUtilities; import org.geotools.data.DefaultTransaction; import org.geotools.data.Transaction; -import org.geotools.data.collection.ListFeatureCollection; import org.geotools.data.shapefile.ShapefileDataStore; import org.geotools.data.shapefile.ShapefileDataStoreFactory; -import org.geotools.data.simple.SimpleFeatureCollection; import org.geotools.data.simple.SimpleFeatureSource; import org.geotools.data.simple.SimpleFeatureStore; +import org.geotools.feature.DefaultFeatureCollection; import org.geotools.feature.simple.SimpleFeatureBuilder; import org.geotools.feature.simple.SimpleFeatureTypeBuilder; import org.geotools.referencing.crs.DefaultGeographicCRS; @@ -48,14 +47,19 @@ /** Export routes or stops for a GTFS feed version as a shapefile. */ public class GisExportJob extends MonitorableJob { public static final Logger LOG = LoggerFactory.getLogger(GisExportJob.class); - private File file; - public Type type; + public ExportType exportType; public Collection feedIds; - public GisExportJob(Type type, File file, Collection feedIds) { - this.type = type; + public GisExportJob(ExportType exportType, File file, Collection feedIds, String owner) { + super( + owner, + String.format("Export %s GIS for feed", exportType.toString().toLowerCase()), + JobType.EXPORT_GIS + ); + this.exportType = exportType; this.file = file; this.feedIds = feedIds; + status.update("Beginning export", 5); } @Override public void jobLogic() { @@ -70,24 +74,24 @@ public GisExportJob(Type type, File file, Collection feedIds) { Map params = new HashMap<>(); params.put("url", outShp.toURI().toURL()); - params.put("create spatial index", Boolean.TRUE); ShapefileDataStore datastore = (ShapefileDataStore) dataStoreFactory.createNewDataStore(params); datastore.forceSchemaCRS(DefaultGeographicCRS.WGS84); - final SimpleFeatureType STOP_TYPE = DataUtilities.createType( - "Stop", - String.join(",", - // Geometry must be the first attribute for a shapefile (and must be named - // "the_geom"). - "the_geom:Point:srid=4326", - "name:String", - "code:String", - "desc:String", - "id:String", - "agency:String" - ) - ); + final SimpleFeatureType STOP_TYPE = // createStopFeatureType(); + DataUtilities.createType( + "Stop", + String.join(",", + // Geometry must be the first attribute for a shapefile (and must be named + // "the_geom"). + "the_geom:Point", + "name:String", + "code:String", + "desc:String", + "id:String", + "agency:String" + ) + ); final SimpleFeatureType ROUTE_TYPE = DataUtilities.createType( "Route", // <- the name for our feature type @@ -105,14 +109,8 @@ public GisExportJob(Type type, File file, Collection feedIds) { "agency:String" ) ); - - SimpleFeatureCollection collection; - - SimpleFeatureType collectionType = null; - SimpleFeatureBuilder featureBuilder; - - List features = new ArrayList<>(); + DefaultFeatureCollection features = new DefaultFeatureCollection(); // Get connection for use in fetching patterns. This is outside of for loop so we're // not connecting multiple times. connection = DataManager.GTFS_DATA_SOURCE.getConnection(); @@ -127,13 +125,21 @@ public GisExportJob(Type type, File file, Collection feedIds) { String agencyName = agency != null ? agency.agency_name : version.parentFeedSource().name; - if (type.equals(Type.STOPS)) { - collectionType = STOP_TYPE; + status.update( + String.format( + "Exporting %s for %s", + exportType.toString().toLowerCase(), + agencyName), + 40 + ); + if (exportType.equals(ExportType.STOPS)) { datastore.createSchema(STOP_TYPE); featureBuilder = new SimpleFeatureBuilder(STOP_TYPE); for (Stop stop : feed.stops) { - Point point = geometryFactory.createPoint(new Coordinate(stop.stop_lon, stop.stop_lat)); - LOG.info(stop.stop_lon + ":" + stop.stop_lat); + Point point = geometryFactory.createPoint( + new Coordinate(stop.stop_lon, stop.stop_lat) + ); + LOG.info(point.toString()); featureBuilder.add(point); featureBuilder.add(stop.stop_name); featureBuilder.add(stop.stop_code); @@ -144,8 +150,7 @@ public GisExportJob(Type type, File file, Collection feedIds) { SimpleFeature feature = featureBuilder.buildFeature(null); features.add(feature); } - } else if (type.equals(Type.ROUTES)) { - collectionType = ROUTE_TYPE; + } else if (exportType.equals(ExportType.ROUTES)) { datastore.createSchema(ROUTE_TYPE); featureBuilder = new SimpleFeatureBuilder(ROUTE_TYPE); // There is not a clean way to fetch patterns out of the RDBMS and it may not @@ -227,7 +232,6 @@ public GisExportJob(Type type, File file, Collection feedIds) { throw new IllegalStateException("Cannot write shapefile with zero features!"); } // Save the file - collection = new ListFeatureCollection(collectionType, features); Transaction transaction = new DefaultTransaction("create"); @@ -239,7 +243,8 @@ public GisExportJob(Type type, File file, Collection feedIds) { SimpleFeatureStore featureStore = (SimpleFeatureStore) featureSource; featureStore.setTransaction(transaction); try { - featureStore.addFeatures(collection); + LOG.info("Adding {} features to shapefile.", features.size()); + featureStore.addFeatures(features); transaction.commit(); } catch (Exception e) { e.printStackTrace(); @@ -255,16 +260,17 @@ public GisExportJob(Type type, File file, Collection feedIds) { throw new Exception(typeName + " does not support read/write access (or other " + "unknown issue)."); } - + LOG.info("Zipping shapefile {}", file.getAbsolutePath()); // zip the file DirectoryZip.zip(outDir, file); // Clean up temporary files. -// for (File f : outDir.listFiles()) { -// f.delete(); -// } -// outDir.delete(); - + for (File f : outDir.listFiles()) { + f.delete(); + } + outDir.delete(); + status.update(false, "Export complete!", 100); + status.completed = true; } catch (Exception e) { String message = "An exception occurred during the GIS export"; LOG.error(message); @@ -275,37 +281,5 @@ public GisExportJob(Type type, File file, Collection feedIds) { } } - public enum Type { ROUTES, STOPS } - - private static SimpleFeatureType createStopFeatureType() { - - SimpleFeatureTypeBuilder builder = new SimpleFeatureTypeBuilder(); - builder.setName("Stop"); - builder.setCRS(DefaultGeographicCRS.WGS84); // <- Coordinate reference system -// builder.setg - - - // add attributes in order - builder.add("the_geom", Point.class); - builder.add("name", String.class); // <- 15 chars width for name field - builder.add("code", String.class); - builder.add("desc", String.class); - builder.add("id", String.class); - builder.add("agency", String.class); - String.join(",", - // Geometry must be the first attribute for a shapefile (and must be named - // "the_geom"). - "the_geom:Point:srid=4326", - "name:String", - "code:String", - "desc:String", - "id:String", - "agency:String" - ); - - // build the type - final SimpleFeatureType LOCATION = builder.buildFeatureType(); - - return LOCATION; - } + public enum ExportType { ROUTES, STOPS } } diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedDownloadToken.java b/src/main/java/com/conveyal/datatools/manager/models/FeedDownloadToken.java index 23c9c12f1..3572f180f 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedDownloadToken.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedDownloadToken.java @@ -1,10 +1,10 @@ package com.conveyal.datatools.manager.models; -import com.conveyal.datatools.manager.models.Snapshot; +import com.conveyal.datatools.common.status.MonitorableJob; import com.conveyal.datatools.manager.persistence.Persistence; import com.fasterxml.jackson.annotation.JsonProperty; -import org.mapdb.Fun; +import java.io.File; import java.util.Date; /** @@ -16,6 +16,8 @@ public class FeedDownloadToken extends Model { private static final long serialVersionUID = 1L; + public String jobId; + public String filePath; public String feedVersionId; public String snapshotId; @@ -23,6 +25,15 @@ public class FeedDownloadToken extends Model { public FeedDownloadToken () { } + /** Generic download token for file generated by a server job. */ + public FeedDownloadToken (MonitorableJob job) { + userId = job.owner; + jobId = job.jobId; + File file = job.retrieveFile(); + filePath = file != null ? file.getAbsolutePath() : null; + timestamp = new Date(); + } + public FeedDownloadToken (FeedVersion feedVersion) { feedVersionId = feedVersion.id; timestamp = new Date(); diff --git a/src/main/java/com/conveyal/datatools/manager/persistence/TypedPersistence.java b/src/main/java/com/conveyal/datatools/manager/persistence/TypedPersistence.java index 71a426afc..2b1231322 100644 --- a/src/main/java/com/conveyal/datatools/manager/persistence/TypedPersistence.java +++ b/src/main/java/com/conveyal/datatools/manager/persistence/TypedPersistence.java @@ -166,6 +166,11 @@ public T getOneFiltered (Bson filter, Bson sortBy) { return mongoCollection.find(filter).first(); } + /** Convenience wrapper for #getOneFiltered that supplies null for sortBy arg. */ + public T getOneFiltered (Bson filter) { + return getOneFiltered(filter, null); + } + public boolean removeById (String id) { DeleteResult result = mongoCollection.deleteOne(eq(id)); if (result.getDeletedCount() == 1) { diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index 9331fb2df..d849aa183 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -66,7 +66,7 @@ public void canExportStops () throws IOException { File zipFile = File.createTempFile("stops", ".zip"); Set ids = new HashSet<>(); ids.add(calTrainVersion.id); - GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.STOPS, zipFile, ids); + GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.STOPS, zipFile, ids, "test"); gisExportJob.run(); assertThat(gisExportJob.status.error, equalTo(false)); FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); @@ -99,7 +99,7 @@ public void canExportRoutes () throws IOException, SQLException { File zipFile = File.createTempFile("routes", ".zip"); Set ids = new HashSet<>(); ids.add(calTrainVersion.id); - GisExportJob gisExportJob = new GisExportJob(GisExportJob.Type.ROUTES, zipFile, ids); + GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.ROUTES, zipFile, ids, "test"); gisExportJob.run(); assertThat(gisExportJob.status.error, equalTo(false)); FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); From 6239db40158fd578e0ecb65e6d9510409d3e3c46 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 10:48:43 -0400 Subject: [PATCH 55/83] fix(permissions): use enum to check request action types --- .../controllers/api/SnapshotController.java | 13 +++---- .../datatools/manager/auth/Actions.java | 9 +++++ .../controllers/api/FeedSourceController.java | 27 ++++++++------- .../api/FeedVersionController.java | 34 ++++++++----------- 4 files changed, 45 insertions(+), 38 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/auth/Actions.java diff --git a/src/main/java/com/conveyal/datatools/editor/controllers/api/SnapshotController.java b/src/main/java/com/conveyal/datatools/editor/controllers/api/SnapshotController.java index 9f4a45884..0ef5be411 100644 --- a/src/main/java/com/conveyal/datatools/editor/controllers/api/SnapshotController.java +++ b/src/main/java/com/conveyal/datatools/editor/controllers/api/SnapshotController.java @@ -6,6 +6,7 @@ import com.conveyal.datatools.editor.jobs.ExportSnapshotToGTFSJob; import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import com.conveyal.datatools.manager.auth.Actions; import com.conveyal.datatools.manager.controllers.api.FeedVersionController; import com.conveyal.datatools.manager.models.FeedDownloadToken; import com.conveyal.datatools.manager.models.FeedSource; @@ -57,7 +58,7 @@ private static Snapshot getSnapshotFromRequest(Request req) { String id = req.params("id"); if (id == null) logMessageAndHalt(req, 400, "Must provide valid snapshot ID"); // Check user permissions on feed source. - FeedVersionController.requestFeedSourceById(req, "view", "feedId"); + FeedVersionController.requestFeedSourceById(req, Actions.VIEW, "feedId"); return Persistence.snapshots.getById(id); } @@ -66,7 +67,7 @@ private static Snapshot getSnapshotFromRequest(Request req) { */ private static Collection getSnapshots(Request req, Response res) { // Get feed source and check user permissions. - FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, "view", "feedId"); + FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, Actions.VIEW, "feedId"); // FIXME Do we need a way to return all snapshots? // Is this used in GTFS Data Manager to retrieveById snapshots in bulk? @@ -79,7 +80,7 @@ private static Collection getSnapshots(Request req, Response res) { */ private static String createSnapshot (Request req, Response res) throws IOException { Auth0UserProfile userProfile = req.attribute("user"); - FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, "edit", "feedId"); + FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, Actions.EDIT, "feedId"); // Take fields from request body for creating snapshot. Snapshot snapshot = json.read(req.body()); // Ensure feed source ID and snapshotOf namespace is correct @@ -104,7 +105,7 @@ private static String importFeedVersionAsSnapshot(Request req, Response res) { Auth0UserProfile userProfile = req.attribute("user"); // Get feed version from request (and check permissions). String feedVersionId = req.queryParams("feedVersionId"); - FeedVersion feedVersion = FeedVersionController.requestFeedVersion(req, "edit", feedVersionId); + FeedVersion feedVersion = FeedVersionController.requestFeedVersion(req, Actions.EDIT, feedVersionId); FeedSource feedSource = feedVersion.parentFeedSource(); // Create and run snapshot job Snapshot snapshot = new Snapshot("Snapshot of " + feedVersion.name, feedSource.id, feedVersion.namespace); @@ -135,7 +136,7 @@ private static String restoreSnapshot (Request req, Response res) { String id = req.params("id"); // FIXME Ensure namespace id exists in database? // Retrieve feed source. - FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, "edit", "feedId"); + FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, Actions.EDIT, "feedId"); Snapshot snapshotToRestore = Persistence.snapshots.getById(id); if (snapshotToRestore == null) { logMessageAndHalt(req, 400, "Must specify valid snapshot ID"); @@ -212,7 +213,7 @@ private static Snapshot deleteSnapshot(Request req, Response res) { String id = req.params("id"); // FIXME Ensure namespace id exists in database. // Check feed source permissions. - FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, "edit", "feedId"); + FeedSource feedSource = FeedVersionController.requestFeedSourceById(req, Actions.EDIT, "feedId"); // Retrieve snapshot Snapshot snapshot = Persistence.snapshots.getById(id); if (snapshot == null) logMessageAndHalt(req, 400, "Must provide valid snapshot ID."); diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Actions.java b/src/main/java/com/conveyal/datatools/manager/auth/Actions.java new file mode 100644 index 000000000..f59ebd1b2 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/auth/Actions.java @@ -0,0 +1,9 @@ +package com.conveyal.datatools.manager.auth; + +/** + * The set of request actions that a user can take on application entities. These are checked + * against the requesting user's permissions to ensure that they have permission to make the request. + */ +public enum Actions { + CREATE, EDIT, MANAGE, VIEW +} diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedSourceController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedSourceController.java index 016493217..6882deb38 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedSourceController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedSourceController.java @@ -2,6 +2,7 @@ import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import com.conveyal.datatools.manager.auth.Actions; import com.conveyal.datatools.manager.extensions.ExternalFeedResource; import com.conveyal.datatools.manager.jobs.FetchSingleFeedJob; import com.conveyal.datatools.manager.jobs.NotifyUsersForSubscriptionJob; @@ -45,7 +46,7 @@ public class FeedSourceController { private static ObjectMapper mapper = new ObjectMapper(); public static FeedSource getFeedSource(Request req, Response res) { - return requestFeedSourceById(req, "view"); + return requestFeedSourceById(req, Actions.VIEW); } public static Collection getAllFeedSources(Request req, Response res) { @@ -142,7 +143,7 @@ public static FeedSource updateFeedSource(Request req, Response res) { // call this method just for null and permissions check // TODO: it's wasteful to request the entire feed source here, need to factor out permissions checks. However, // we need the URL to see if it has been updated in order to then set the lastFetched value to null. - FeedSource formerFeedSource = requestFeedSourceById(req, "manage"); + FeedSource formerFeedSource = requestFeedSourceById(req, Actions.MANAGE); Document fieldsToUpdate = Document.parse(req.body()); if (fieldsToUpdate.containsKey("url") && formerFeedSource.url != null) { // Reset last fetched timestamp if the URL has been updated. @@ -174,7 +175,7 @@ public static FeedSource updateFeedSource(Request req, Response res) { * storage? This might should be refactored in the future, but it isn't really hurting anything at the moment. */ public static FeedSource updateExternalFeedResource(Request req, Response res) { - FeedSource source = requestFeedSourceById(req, "manage"); + FeedSource source = requestFeedSourceById(req, Actions.MANAGE); String resourceType = req.queryParams("resourceType"); JsonNode node = null; try { @@ -219,7 +220,7 @@ public static FeedSource updateExternalFeedResource(Request req, Response res) { * FIXME: Should this just set a "deleted" flag instead of removing from the database entirely? */ private static FeedSource deleteFeedSource(Request req, Response res) { - FeedSource source = requestFeedSourceById(req, "manage"); + FeedSource source = requestFeedSourceById(req, Actions.MANAGE); try { source.delete(); @@ -234,7 +235,7 @@ private static FeedSource deleteFeedSource(Request req, Response res) { * Re-fetch this feed from the feed source URL. */ public static String fetch (Request req, Response res) { - FeedSource s = requestFeedSourceById(req, "manage"); + FeedSource s = requestFeedSourceById(req, Actions.MANAGE); LOG.info("Fetching feed for source {}", s.name); @@ -250,10 +251,10 @@ public static String fetch (Request req, Response res) { /** * Helper function returns feed source if user has permission for specified action. * @param req spark Request object from API request - * @param action action type (either "view" or "manage") + * @param action action type (either "view" or Permission.MANAGE) * @return feedsource object for ID */ - public static FeedSource requestFeedSourceById(Request req, String action) { + public static FeedSource requestFeedSourceById(Request req, Actions action) { String id = req.params("id"); if (id == null) { logMessageAndHalt(req, 400, "Please specify id param"); @@ -261,7 +262,7 @@ public static FeedSource requestFeedSourceById(Request req, String action) { return checkFeedSourcePermissions(req, Persistence.feedSources.getById(id), action); } - public static FeedSource checkFeedSourcePermissions(Request req, FeedSource feedSource, String action) { + public static FeedSource checkFeedSourcePermissions(Request req, FeedSource feedSource, Actions action) { Auth0UserProfile userProfile = req.attribute("user"); Boolean publicFilter = Boolean.valueOf(req.queryParams("public")) || req.url().split("/api/*/")[1].startsWith("public"); @@ -272,16 +273,16 @@ public static FeedSource checkFeedSourcePermissions(Request req, FeedSource feed String orgId = feedSource.organizationId(); boolean authorized; switch (action) { - case "create": + case CREATE: authorized = userProfile.canAdministerProject(feedSource.projectId, orgId); break; - case "manage": + case MANAGE: authorized = userProfile.canManageFeed(orgId, feedSource.projectId, feedSource.id); break; - case "edit": + case EDIT: authorized = userProfile.canEditGTFS(orgId, feedSource.projectId, feedSource.id); break; - case "view": + case VIEW: if (!publicFilter) { authorized = userProfile.canViewFeed(orgId, feedSource.projectId, feedSource.id); } else { @@ -299,7 +300,7 @@ public static FeedSource checkFeedSourcePermissions(Request req, FeedSource feed if (!feedSource.isPublic && !authorized) logMessageAndHalt(req, 403, "User not authorized to perform action on feed source"); // if feed is public, but action is managerial, halt (we shouldn't ever retrieveById here, but just in case) - else if (feedSource.isPublic && action.equals("manage")) + else if (feedSource.isPublic && action.equals(Actions.MANAGE)) logMessageAndHalt(req, 403, "User not authorized to perform action on feed source"); } diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index 0b10656d0..576b4cce7 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -3,6 +3,7 @@ import com.conveyal.datatools.common.utils.SparkUtils; import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import com.conveyal.datatools.manager.auth.Actions; import com.conveyal.datatools.manager.jobs.CreateFeedVersionFromSnapshotJob; import com.conveyal.datatools.manager.jobs.GisExportJob; import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; @@ -43,11 +44,6 @@ public class FeedVersionController { - // TODO use this instead of stringly typed permissions - enum Permission { - VIEW, MANAGE - } - public static final Logger LOG = LoggerFactory.getLogger(FeedVersionController.class); public static JsonManager json = new JsonManager<>(FeedVersion.class, JsonViews.UserInterface.class); @@ -56,7 +52,7 @@ enum Permission { * If you pass in ?summarized=true, don't include the full tree of validation results, only the counts. */ private static FeedVersion getFeedVersion (Request req, Response res) { - return requestFeedVersion(req, "view"); + return requestFeedVersion(req, Actions.VIEW); } /** @@ -64,11 +60,11 @@ private static FeedVersion getFeedVersion (Request req, Response res) { */ private static Collection getAllFeedVersionsForFeedSource(Request req, Response res) { // Check permissions and get the FeedSource whose FeedVersions we want. - FeedSource feedSource = requestFeedSourceById(req, "view"); + FeedSource feedSource = requestFeedSourceById(req, Actions.VIEW); return feedSource.retrieveFeedVersions(); } - public static FeedSource requestFeedSourceById(Request req, String action, String paramName) { + public static FeedSource requestFeedSourceById(Request req, Actions action, String paramName) { String id = req.queryParams(paramName); if (id == null) { logMessageAndHalt(req, 400, "Please specify feedSourceId param"); @@ -76,7 +72,7 @@ public static FeedSource requestFeedSourceById(Request req, String action, Strin return checkFeedSourcePermissions(req, Persistence.feedSources.getById(id), action); } - private static FeedSource requestFeedSourceById(Request req, String action) { + private static FeedSource requestFeedSourceById(Request req, Actions action) { return requestFeedSourceById(req, action, "feedSourceId"); } @@ -94,7 +90,7 @@ private static FeedSource requestFeedSourceById(Request req, String action) { public static String createFeedVersionViaUpload(Request req, Response res) { Auth0UserProfile userProfile = req.attribute("user"); - FeedSource feedSource = requestFeedSourceById(req, "manage"); + FeedSource feedSource = requestFeedSourceById(req, Actions.MANAGE); FeedVersion latestVersion = feedSource.retrieveLatest(); FeedVersion newFeedVersion = new FeedVersion(feedSource); newFeedVersion.retrievalMethod = FeedSource.FeedRetrievalMethod.MANUALLY_UPLOADED; @@ -156,7 +152,7 @@ private static boolean createFeedVersionFromSnapshot (Request req, Response res) Auth0UserProfile userProfile = req.attribute("user"); // TODO: Should the ability to create a feedVersion from snapshot be controlled by the 'edit-gtfs' privilege? - FeedSource feedSource = requestFeedSourceById(req, "manage"); + FeedSource feedSource = requestFeedSourceById(req, Actions.MANAGE); Snapshot snapshot = Persistence.snapshots.getById(req.queryParams("snapshotId")); if (snapshot == null) { logMessageAndHalt(req, 400, "Must provide valid snapshot ID"); @@ -173,16 +169,16 @@ private static boolean createFeedVersionFromSnapshot (Request req, Response res) * Spark HTTP API handler that deletes a single feed version based on the ID in the request. */ private static FeedVersion deleteFeedVersion(Request req, Response res) { - FeedVersion version = requestFeedVersion(req, "manage"); + FeedVersion version = requestFeedVersion(req, Actions.MANAGE); version.delete(); return version; } - private static FeedVersion requestFeedVersion(Request req, String action) { + private static FeedVersion requestFeedVersion(Request req, Actions action) { return requestFeedVersion(req, action, req.params("id")); } - public static FeedVersion requestFeedVersion(Request req, String action, String feedVersionId) { + public static FeedVersion requestFeedVersion(Request req, Actions action, String feedVersionId) { FeedVersion version = Persistence.feedVersions.getById(feedVersionId); if (version == null) { logMessageAndHalt(req, 404, "Feed version ID does not exist"); @@ -193,7 +189,7 @@ public static FeedVersion requestFeedVersion(Request req, String action, String } private static boolean renameFeedVersion (Request req, Response res) { - FeedVersion v = requestFeedVersion(req, "manage"); + FeedVersion v = requestFeedVersion(req, Actions.MANAGE); String name = req.queryParams("name"); if (name == null) { @@ -205,7 +201,7 @@ private static boolean renameFeedVersion (Request req, Response res) { } private static HttpServletResponse downloadFeedVersionDirectly(Request req, Response res) { - FeedVersion version = requestFeedVersion(req, "view"); + FeedVersion version = requestFeedVersion(req, Actions.VIEW); return downloadFile(version.retrieveGtfsFile(), version.id, req, res); } @@ -213,8 +209,8 @@ private static HttpServletResponse downloadFeedVersionDirectly(Request req, Resp * Returns credentials that a client may use to then download a feed version. Functionality * changes depending on whether application.data.use_s3_storage config property is true. */ - FeedVersion version = requestFeedVersion(req, "view"); private static Object getDownloadCredentials(Request req, Response res) { + FeedVersion version = requestFeedVersion(req, Actions.VIEW); if (DataManager.useS3) { // Return pre-signed download link if using S3. @@ -232,7 +228,7 @@ private static Object getDownloadCredentials(Request req, Response res) { * FIXME! */ private static JsonNode validate (Request req, Response res) { - FeedVersion version = requestFeedVersion(req, "manage"); + FeedVersion version = requestFeedVersion(req, Actions.MANAGE); logMessageAndHalt(req, 400, "Validate endpoint not currently configured!"); // FIXME: Update for sql-loader validation process? return null; @@ -240,7 +236,7 @@ private static JsonNode validate (Request req, Response res) { } private static FeedVersion publishToExternalResource (Request req, Response res) { - FeedVersion version = requestFeedVersion(req, "manage"); + FeedVersion version = requestFeedVersion(req, Actions.MANAGE); // notify any extensions of the change try { From 976d672695f0d86ffbe66bc4bd685e1d7bdde27c Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 11:06:06 -0400 Subject: [PATCH 56/83] refactor(gis-export): generate shape from stops if shape missing --- .../datatools/manager/jobs/GisExportJob.java | 30 ++++++++++++------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java index 642fd16a2..623245ac6 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -191,17 +191,25 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds coords = coordinates.toArray(coords); shape = geometryFactory.createLineString(coords); } else { - // build the shape from the stops - // FIXME add back generating shape from stops -// Coordinate[] coords = new Coordinate[tp.patternStops.size()]; -// -// for (int i = 0; i < coords.length; i++) { -// coords[i] = -// feed.stops.get(tp.patternStops.get(i).stopId).location.getCoordinate(); -// } -// -// shape = geometryFactory.createLineString(coords); - shape = null; + // Build the shape from the pattern stops if there is no shape for + // pattern. + PreparedStatement stopsStatement = connection.prepareStatement( + String.format( + "select stop_lon, stop_lat, stops.stop_id, stop_sequence, pattern_id from %s.stops as stops, %s.pattern_stops as ps where pattern_id = ? " + + "order by pattern_id, stop_sequence", + version.namespace, version.namespace + )); + stopsStatement.setString(1, pattern_id); + List coordinates = new ArrayList<>(); + ResultSet stopsResultSet = stopsStatement.executeQuery(); + while (stopsResultSet.next()) { + double lon = stopsResultSet.getDouble(1); + double lat = stopsResultSet.getDouble(2); + coordinates.add(new Coordinate(lon, lat)); + } + Coordinate[] coords = new Coordinate[coordinates.size()]; + coords = coordinates.toArray(coords); + shape = geometryFactory.createLineString(coords); } Route route = feed.routes.get(route_id); From 462d3dc14d2b1c1bc93bf580db0baba6ef94736f Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 12:09:35 -0400 Subject: [PATCH 57/83] fix(export-gis): fix shapefile from pattern stops; update test --- .../datatools/manager/jobs/GisExportJob.java | 7 ++- .../manager/jobs/GisExportJobTest.java | 58 +++++++++++++++++- .../datatools/hawaii_fake_no_shapes.zip | Bin 0 -> 3110 bytes 3 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 src/test/resources/com/conveyal/datatools/hawaii_fake_no_shapes.zip diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java index 623245ac6..af263bac5 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -191,12 +191,15 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds coords = coordinates.toArray(coords); shape = geometryFactory.createLineString(coords); } else { + LOG.info("Building pattern {} from stops", pattern_id); // Build the shape from the pattern stops if there is no shape for // pattern. PreparedStatement stopsStatement = connection.prepareStatement( String.format( - "select stop_lon, stop_lat, stops.stop_id, stop_sequence, pattern_id from %s.stops as stops, %s.pattern_stops as ps where pattern_id = ? " - + "order by pattern_id, stop_sequence", + "select stop_lon, stop_lat, stops.stop_id, stop_sequence, pattern_id" + + " from %s.stops as stops, %s.pattern_stops as ps" + + " where pattern_id = ? and stops.stop_id = ps.stop_id" + + " order by pattern_id, stop_sequence", version.namespace, version.namespace )); stopsStatement.setString(1, pattern_id); diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index d849aa183..68e887d4c 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -7,6 +7,7 @@ import com.conveyal.datatools.manager.models.Project; import com.conveyal.datatools.manager.persistence.Persistence; import com.google.common.io.Files; +import com.vividsolutions.jts.geom.MultiLineString; import org.geotools.data.DataStore; import org.geotools.data.DataStoreFinder; import org.geotools.data.FeatureSource; @@ -44,6 +45,7 @@ public class GisExportJobTest { private static final Logger LOG = LoggerFactory.getLogger(GisExportJobTest.class); private static Project project; private static FeedVersion calTrainVersion; + private static FeedVersion hawaiiVersion; @BeforeClass public static void setUp() { @@ -57,7 +59,9 @@ public static void setUp() { FeedSource caltrain = new FeedSource("Caltrain"); Persistence.feedSources.create(caltrain); calTrainVersion = createFeedVersion(caltrain, "caltrain_gtfs.zip"); - caltrain.projectId = project.id; + FeedSource hawaii = new FeedSource("Hawaii"); + Persistence.feedSources.create(hawaii); + hawaiiVersion = createFeedVersion(hawaii, "hawaii_fake_no_shapes.zip"); } @Test @@ -134,6 +138,58 @@ public void canExportRoutes () throws IOException, SQLException { assertThat(featureCount, equalTo(patternCount)); } + /** + * Verifies that a route shapefile can be generated from its constituent pattern stops. + */ + @Test + public void canExportRoutesFromPatternStops() throws IOException, SQLException { + // Run the GIS export job for stops. + File zipFile = File.createTempFile("routes", ".zip"); + Set ids = new HashSet<>(); + ids.add(hawaiiVersion.id); + GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.ROUTES, zipFile, ids, "test"); + gisExportJob.run(); + assertThat(gisExportJob.status.error, equalTo(false)); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + // Iterate over features. + int featureCount = 0; + try (FeatureIterator iterator = collection.features()) { + while (iterator.hasNext()) { + featureCount++; + Feature feature = iterator.next(); + // GeometryAttribute sourceGeometry = feature.getDefaultGeometryProperty(); + Collection properties = feature.getProperties(); + // Iterate over feature properties and verify everything looks OK. + for (Property property : properties) { + String name = property.getName().toString(); + Object value = property.getValue(); + LOG.info("{}: {}", name, value); + if ("the_geom".equals(name)) { + MultiLineString shape = (MultiLineString) value; + // Check that the geometry was exported properly. + assertThat(shape, notNullValue()); + // Fake Hawaii feed has only 5 stops and each is used in the single pattern + // shape, so we expect the coordinates length to be equal to stops row count. + assertThat( + shape.getCoordinates().length, + equalTo(hawaiiVersion.feedLoadResult.stops.rowCount) + ); + } + } + } + } + PreparedStatement preparedStatement = DataManager.GTFS_DATA_SOURCE.getConnection() + .prepareStatement( + String.format("select count(*) from %s" + ".patterns", hawaiiVersion.namespace)); + ResultSet resultSet = preparedStatement.executeQuery(); + int patternCount = 0; + while (resultSet.next()) { + patternCount = resultSet.getInt(1); + } + // Check that feature count = pattern count from SQL query. + assertThat(featureCount, equalTo(patternCount)); + } + private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) throws IOException { // Unzip the shapefile and read the stop features to verify they are valid. File destDir = Files.createTempDir(); diff --git a/src/test/resources/com/conveyal/datatools/hawaii_fake_no_shapes.zip b/src/test/resources/com/conveyal/datatools/hawaii_fake_no_shapes.zip new file mode 100644 index 0000000000000000000000000000000000000000..219980844e1b0f3a95d9fd06a78b138a6e570c8d GIT binary patch literal 3110 zcmaJ^2|Sc*7at8~$W}vTiMsY~O=HOtrt6|?lgU!HFqpE9b;y!S5|ynK2GK&pkc2zN zzNCoBBwUn;j8P(=b((DVo%+6Cqffo>@BKaVyyraU{LeY>^PK;n&A{BEASe_HdVZRC z9K><)1HUn6vA%9$aC|5pm7p&agAg@j-iiUQbk!?1ksoQuu2vrLj4~nZ(yN!tCsu^t z&;+;Dod4v?r>OkfslUe2WyW;B?nZv}sj$VQQ1?Qy;Az&C=eP+d-%#lNZGM**dS+kc zUpt5$g17FGOKHBJ!^qawd}4a6Mh0yLfqGRkC^!JZBj7>*6r=zkb;I~zecdsEY?ueA zDnikF1TKx{RN$2qw(AM*tvt%BqFmBCDA`mux}JW@?o(aBbM6TnrTROqrlk zjKSjrJzazG*dR74qmEj^XoP^#%UrwMYsv%Bf+E50^1P08S+}b`!uRwkIyE}k+$ay? z2@yXvK#r~!H>AQrk8O2@6;ikl5D{4GE9#!0Bqwg0rLUUAiSUd z*X*6{Dm&hS5aAuEx43@ggS~cukD{9r>d z&DHXO!3iOS!@J^Jzc7>D&2I4@Np@Hu)Wy=_VRSX^T(v*!KjA&y_qt^7Bg3!?;lkpLzOl)qZ#B>hiJjbDq=XBKvlr=eMkIQYoY(9&Kd8C`}Xyv^$+=uX^8NQEF%-3{?G0jGq3_{ zB=0HTcdv(y1`7_Z2GMClTF-cWu9Kbq_b{fmC77i$`Y^%3c4~VAd>tOL`Y2?r zVFyK~n0jY?LUBE^u{UyH#lG(PX!;E90n@Apa=-swl0c)+TDNaT>N<3Z94dP;!@us$ zx^Ra~bK{Pb#F4?n8Z@H7j39Fd3X_fc4>FP7KYHw!jjp2`9=Kuj8E$kT00Z@oD{$w~tQsD4E-c4-{-$ zR_C{};a&24f=qgBopvEoqRb)>VS{z~rhmXZ4Co8^)f zOWFq}@)1o4MXD~FOg%g9!dMu`*9@lua<&A+>4gtPiozf%3yq2)VQ(iHQA9pt36jZ%xgc5v^c;Zi4ltgo?9h^d0hhh&-c3K+GC13nsmv8 zf|CFe1Y0F-UY*q)ajtbJCbYO%Ib=A4aZ5NeVTOe@MaXMg91=&!6H;##WC;+qo14(A zP`u`RM7ar)0+`5cmHOhZXKD9J6<(=G8cetJI(?arpfSvot9@!o@uZ9w4S zEDk4xv!=XNT_!P;;}xat(SX8E;uEA#bEl;K?~+277)&W)H-pIlf1F0f&`nGSkX$aS zIOVUgixc+)$wy!b#o{MWBscF{mAC{?O{0GlU$FqqUyczT zNsht_ajFyXDY`S%!|}$us_|KeeybW%Z&HV{Qw=u1_%+r4KkdoF4Oh8a4cW^?=%r~B zyvv?G)O-4732s#QMNX#?DDbbwb+3q=vk(p63Y!0wKKc%ZOC>ozY!!NFhFExCZkhdg z{A%N;GBBX1xv{*43WQUZHE70=bg9ZJe8DEsogyMbV{^Ivnk0 zH^YfC&&WUI7Z#%jCA`s1(=OlVDXKJM= zvEZB1I)r^1?HS71X2}f#`H24NG-4m*KqvfmkYiJ+frCIBWU_X+#R*5tHMCyb>5Y1$ z(Z0FpRBc)nb^>U*$m*LKBjSiP*21`?JQ&yKk8y?Ec z>A)NGTAT*Q#%zn2@%2$-nyi($M&E7cYTK9UuG&p46PZ=-m!y|%J~7))eI9&{#m@^x zR&gau?djdVrw=|AXN=FhUF$qIJ`tAZbwEMYxR?KZpFTnbT_T!SS%^{0H|oVqqHl^l zLV?FIUHeLBGD#Sny;sO+ncaWOa;5(~(hpN5=uSwWTOFGNgV6TPyL#xz zk~2)0CB!JXJhe)CECP(vx*OQmm8C?%=VGk`m|Mn2{Jp>?#R+MaS56eoi;F+Wim=(G zoNm7e3Z8ATb*1r~VDPoudRp2IGUB4;!o*vm4O=4a*t=@W^58_y_?vI>D7KG{@i1>u znV1@j)yf=y$DQNeX{qxNjuSL&eiz0f2L5>yW+BRZ02LJ@XeVTyn$O6q$dRYeYkWa} zW|Bar7EMQ~`j!P`U1OGyPa)F~YA}m9DOGi!U;ow75ZJn~%00^)Vj^W?`%6yd&Bi`A z=<0u|NK>SLrDf&&d5<>%4JaJUE<4v2QP6kx$Vu7wLG03VUf;Q-jWrJl+;y_c@kaxk zBuij}f%||ZPM-Hu6P$zyw!wrtfO->dwy7m{Q{`kT8>68DmN@7XJDTnvqG220?ALr7 zpq$^rL2teS*la!L4inn2o&qGFO^?3!_@5f#tk*^mMo^Be$+4b?mt8doaQ6an>aza^ Gfc^z-?iEA; literal 0 HcmV?d00001 From f7f6de67d3b497a158e1d07e22dd78d92e53f12b Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 2 May 2019 13:08:39 -0400 Subject: [PATCH 58/83] build(travis): use jdk 8 and linux trusty dist Conflicts: .travis.yml --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 6eaec67d4..9f6d17ba1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,4 @@ +dist: trusty # jdk 8 not available on xenial language: java jdk: - oraclejdk8 From 8645ab8dfe72f8a6a5511d0cfa5b74e0b905e37e Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 13:44:28 -0400 Subject: [PATCH 59/83] ci(travis): create postgres db before install --- .travis.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.travis.yml b/.travis.yml index 9f6d17ba1..e5d589845 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,6 +18,8 @@ before_install: # set region in AWS config for S3 setup - mkdir ~/.aws && printf '%s\n' '[default]' 'aws_access_key_id=foo' 'aws_secret_access_key=bar' 'region=us-east-1' > ~/.aws/config - cp configurations/default/server.yml.tmp configurations/default/server.yml +# create database for tests +- psql -U postgres -c 'CREATE DATABASE catalogue;' script: # package jar - mvn package From b9e95a0b04527cfd45078c3805e22ee84aff3656 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 6 May 2019 14:54:12 -0400 Subject: [PATCH 60/83] refactor(merge-feeds): add description for exception --- .../manager/controllers/api/FeedVersionController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java index e6edde333..a8be71617 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/FeedVersionController.java @@ -280,7 +280,9 @@ private static String mergeFeedVersions(Request req, Response res) { MergeFeedsType mergeType; try { mergeType = MergeFeedsType.valueOf(req.queryParams("mergeType")); - if (mergeType.equals(REGIONAL)) throw new IllegalArgumentException(); + if (mergeType.equals(REGIONAL)) { + throw new IllegalArgumentException("Regional merge type is not permitted for this endpoint."); + } } catch (IllegalArgumentException e) { logMessageAndHalt(req, 400, "Must provide valid merge type.", e); return null; From 3d87e057f24eff1d147c229929a42239fd1e195a Mon Sep 17 00:00:00 2001 From: evansiroky Date: Tue, 7 May 2019 12:05:04 -0700 Subject: [PATCH 61/83] refactor(user): improve test readability and add comments --- .../manager/auth/Auth0UserProfile.java | 2 + .../controllers/api/UserControllerTest.java | 61 +++++++++++-------- 2 files changed, 37 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java b/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java index 4b6d4a161..dc81f72cd 100644 --- a/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java +++ b/src/main/java/com/conveyal/datatools/manager/auth/Auth0UserProfile.java @@ -73,6 +73,8 @@ public AppMetadata() {} public void setDatatoolsInfo(DatatoolsInfo datatools) { if (Auth0Connection.authDisabled()) return; + // check if the datatools field hasn't yet been created. Although new users that get created automatically + // have this set, when running in a test environment, this won't be set, so it should be created. if (this.datatools == null) { this.datatools = new ArrayList<>(); this.datatools.add(datatools); diff --git a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java index f60aa087c..f57b5a4b0 100644 --- a/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java +++ b/src/test/java/com/conveyal/datatools/manager/controllers/api/UserControllerTest.java @@ -36,6 +36,9 @@ * certain responses needed to verify functionality. */ public class UserControllerTest { + private String emailForExistingAccount = "test-existing-user@test.com"; + private ObjectMapper mapper = new ObjectMapper(); + /** * This sets up a mock server that accepts requests and sends predefined responses to mock an Auth0 server. */ @@ -101,26 +104,26 @@ public void canListFirstTenUsers() throws IOException { */ @Test public void canCreateUser() throws IOException { + String newUserEmail = "test-new-user@test.com"; + // create wiremock stub for create users endpoint stubFor( post(urlPathEqualTo("/api/v2/users")) - .withRequestBody(matchingJsonPath("$.email", equalTo("test-new-user@test.com"))) + .withRequestBody(matchingJsonPath("$.email", equalTo(newUserEmail))) .willReturn( aResponse() .withBodyFile("createNewUserResponse.json") ) ); + ObjectNode requestJson = getBaseUserObject(); + requestJson.put("email", newUserEmail); // make request and parse the json response JsonNode createUserResponse = parseJson( given() .port(4000) - .body("{\n" + - " \"email\" : \"test-new-user@test.com\",\n" + - " \"password\" : \"password\",\n" + - " \"permissions\" : {}\n" + - "}") + .body(requestJson) .post("/api/manager/secure/user") .then() .extract() @@ -137,8 +140,6 @@ public void canCreateUser() throws IOException { */ @Test public void canReturnMeaningfulAuth0Error() throws IOException { - String emailForExistingAccount = "test-existing-user@test.com"; - // create wiremock stub for create users endpoint that responds with a message saying a user with the email // already exists stubFor( @@ -151,19 +152,11 @@ public void canReturnMeaningfulAuth0Error() throws IOException { ) ); - - // create a request body of a user that the above stub will recognize as an existing user - ObjectMapper mapper = new ObjectMapper(); - ObjectNode requestJson = mapper.createObjectNode(); - requestJson.put("email", emailForExistingAccount); - requestJson.put("password", "password"); - requestJson.putObject("permissions"); - // make request and parse the json response JsonNode createUserResponse = parseJson( given() .port(DataManager.PORT) - .body(requestJson) + .body(getBaseUserObject()) .post(DataManager.API_PREFIX + "secure/user") .then() .extract() @@ -204,20 +197,25 @@ public void canUpdateUser() throws IOException { ) ); + ObjectNode requestJson = mapper.createObjectNode(); + requestJson.put("email", emailForExistingAccount); + + ObjectNode testClientPermissions = mapper.createObjectNode(); + testClientPermissions.put("type", "administer-application"); + + ObjectNode testClientData = mapper.createObjectNode(); + testClientData.putArray("permissions").add(testClientPermissions); + testClientData.putArray("projects"); + testClientData.putArray("organizations"); + testClientData.put("client_id", "testing-client-id"); + + requestJson.putArray("data").add(testClientData); // make request and parse the json response JsonNode createUserResponse = parseJson( given() .port(4000) - .body("{" + - "\"user_id\": \"auth0|test-existing-user\"" + - ",\"data\": [{" + - "\"permissions\": [{\"type\": \"administer-application\"}]," + - "\"projects\": []," + - "\"organizations\": []," + - "\"client_id\":\"testing-client-id\"" + - "}]" + - "}") + .body(requestJson) .put("/api/manager/secure/user/auth0|test-existing-user") .then() .extract() @@ -255,4 +253,15 @@ public void canDeleteUser() throws IOException { // make sure the response matches the saved snapshot assertThat(deleteUserResponse, matchesSnapshot()); } + + /** + * create a request body of a user that the above stub will recognize as an existing user + */ + private ObjectNode getBaseUserObject() { + ObjectNode requestJson = mapper.createObjectNode(); + requestJson.put("email", emailForExistingAccount); + requestJson.put("password", "password"); + requestJson.putObject("permissions"); + return requestJson; + } } From c88517c87d31723644b6c5e176000ff03b50fad6 Mon Sep 17 00:00:00 2001 From: evansiroky Date: Tue, 7 May 2019 12:23:31 -0700 Subject: [PATCH 62/83] refactor(test): update snapshots with latest snapshotter --- ...anCreateUser.json => canCreateUser-0.json} | 32 +++---- ...anDeleteUser.json => canDeleteUser-0.json} | 0 ...Users.json => canListFirstTenUsers-0.json} | 86 +++++++++---------- ...anUpdateUser.json => canUpdateUser-0.json} | 36 ++++---- 4 files changed, 77 insertions(+), 77 deletions(-) rename src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/{canCreateUser.json => canCreateUser-0.json} (76%) rename src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/{canDeleteUser.json => canDeleteUser-0.json} (100%) rename src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/{canListFirstTenUsers.json => canListFirstTenUsers-0.json} (76%) rename src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/{canUpdateUser.json => canUpdateUser-0.json} (77%) diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser-0.json similarity index 76% rename from src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json rename to src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser-0.json index 2c1f8cb12..b3f89cdf6 100644 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser.json +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canCreateUser-0.json @@ -1,24 +1,24 @@ { + "app_metadata" : { + "datatools" : [ { + "client_id" : "testing-client-id", + "organizations" : [ ], + "permissions" : [ ], + "projects" : [ ] + } ] + }, + "created_at" : "2019-02-16T01:27:19.810Z", "email" : "test-new-user@test.com", "email_verified" : false, - "updated_at" : "2019-02-16T01:27:19.810Z", - "user_id" : "auth0|test-new-user", - "name" : "test-new-user@test.com", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test-new-user", "identities" : [ { "connection" : "Username-Password-Authentication", - "user_id" : "test-new-user", + "isSocial" : false, "provider" : "auth0", - "isSocial" : false + "user_id" : "test-new-user" } ], - "created_at" : "2019-02-16T01:27:19.810Z", - "app_metadata" : { - "datatools" : [ { - "permissions" : [ ], - "projects" : [ ], - "organizations" : [ ], - "client_id" : "testing-client-id" - } ] - } + "name" : "test-new-user@test.com", + "nickname" : "test-new-user", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-new-user" } \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser-0.json similarity index 100% rename from src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser.json rename to src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canDeleteUser-0.json diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers-0.json similarity index 76% rename from src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json rename to src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers-0.json index a8f90cea5..3bf6cc9ef 100644 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers.json +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canListFirstTenUsers-0.json @@ -1,66 +1,66 @@ [ { - "email" : "test1@test.com", - "email_verified" : true, - "user_id" : "auth0|test1", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test1", - "identities" : [ { - "user_id" : "test1", - "provider" : "auth0", - "connection" : "Username-Password-Authentication", - "isSocial" : false - } ], - "updated_at" : "2017-07-12T19:16:11.699Z", - "created_at" : "2017-06-22T19:19:41.404Z", - "last_password_reset" : "2017-07-12T19:08:52.507Z", - "name" : "test1", - "last_login" : "2017-07-12T19:09:28.400Z", - "last_ip" : "1.1.1.1", - "logins_count" : 1, "app_metadata" : { "datatools" : [ { + "client_id" : "your-auth0-client-id", + "organizations" : [ ], "permissions" : [ ], "projects" : [ { - "project_id" : "test-project-id", + "defaultFeeds" : [ ], "permissions" : [ { - "type" : "view-feed", - "feeds" : [ "*" ] + "feeds" : [ "*" ], + "type" : "view-feed" } ], - "defaultFeeds" : [ ] + "project_id" : "test-project-id" } ], - "organizations" : [ ], - "client_id" : "your-auth0-client-id", "subscriptions" : [ { - "type" : "feed-updated", - "target" : [ "test-feed-id" ] + "target" : [ "test-feed-id" ], + "type" : "feed-updated" } ] } ] - } -}, { - "email" : "test2@test.com", + }, + "created_at" : "2017-06-22T19:19:41.404Z", + "email" : "test1@test.com", "email_verified" : true, - "updated_at" : "2019-02-10T18:24:03.719Z", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "user_id" : "auth0|test2", - "nickname" : "test2", "identities" : [ { - "user_id" : "test2", - "provider" : "auth0", "connection" : "Username-Password-Authentication", - "isSocial" : false + "isSocial" : false, + "provider" : "auth0", + "user_id" : "test1" } ], - "created_at" : "2018-12-27T16:46:32.864Z", - "name" : "test2", - "last_login" : "2019-02-10T18:24:03.719Z", "last_ip" : "1.1.1.1", - "logins_count" : 49, + "last_login" : "2017-07-12T19:09:28.400Z", + "last_password_reset" : "2017-07-12T19:08:52.507Z", + "logins_count" : 1, + "name" : "test1", + "nickname" : "test1", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "updated_at" : "2017-07-12T19:16:11.699Z", + "user_id" : "auth0|test1" +}, { "app_metadata" : { "datatools" : [ { + "client_id" : "your-auth0-client-id", "permissions" : [ { "type" : "administer-application" } ], - "projects" : [ ], - "client_id" : "your-auth0-client-id" + "projects" : [ ] } ] - } + }, + "created_at" : "2018-12-27T16:46:32.864Z", + "email" : "test2@test.com", + "email_verified" : true, + "identities" : [ { + "connection" : "Username-Password-Authentication", + "isSocial" : false, + "provider" : "auth0", + "user_id" : "test2" + } ], + "last_ip" : "1.1.1.1", + "last_login" : "2019-02-10T18:24:03.719Z", + "logins_count" : 49, + "name" : "test2", + "nickname" : "test2", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "updated_at" : "2019-02-10T18:24:03.719Z", + "user_id" : "auth0|test2" } ] \ No newline at end of file diff --git a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser-0.json similarity index 77% rename from src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json rename to src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser-0.json index e635e58f0..4265f8044 100644 --- a/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser.json +++ b/src/test/resources/snapshots/com/conveyal/datatools/manager/controllers/api/UserControllerTest/canUpdateUser-0.json @@ -1,26 +1,26 @@ { - "email" : "test-existing-user@test.com", - "email_verified" : false, - "updated_at" : "2019-02-16T01:27:19.810Z", - "user_id" : "auth0|test-existing-user", - "name" : "test-existing-user@test.com", - "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", - "nickname" : "test-existing-user", - "identities" : [ { - "connection" : "Username-Password-Authentication", - "user_id" : "test-existing-user", - "provider" : "auth0", - "isSocial" : false - } ], - "created_at" : "2019-02-16T01:27:19.810Z", "app_metadata" : { "datatools" : [ { + "client_id" : "testing-client-id", + "organizations" : [ ], "permissions" : [ { "type" : "administer-application" } ], - "projects" : [ ], - "organizations" : [ ], - "client_id" : "testing-client-id" + "projects" : [ ] } ] - } + }, + "created_at" : "2019-02-16T01:27:19.810Z", + "email" : "test-existing-user@test.com", + "email_verified" : false, + "identities" : [ { + "connection" : "Username-Password-Authentication", + "isSocial" : false, + "provider" : "auth0", + "user_id" : "test-existing-user" + } ], + "name" : "test-existing-user@test.com", + "nickname" : "test-existing-user", + "picture" : "https://i0.wp.com/cdn.auth0.com/avatars/tu.png?ssl=1", + "updated_at" : "2019-02-16T01:27:19.810Z", + "user_id" : "auth0|test-existing-user" } \ No newline at end of file From defa58ac1e9e048f890534c27e6c095ba44a1ea4 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 9 May 2019 09:26:12 -0400 Subject: [PATCH 63/83] test(export-gis): address PR comments --- .../manager/jobs/GisExportJobTest.java | 56 +++++++++++++++++-- 1 file changed, 50 insertions(+), 6 deletions(-) diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index 68e887d4c..a69c922eb 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -7,7 +7,9 @@ import com.conveyal.datatools.manager.models.Project; import com.conveyal.datatools.manager.persistence.Persistence; import com.google.common.io.Files; +import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.MultiLineString; +import com.vividsolutions.jts.geom.Point; import org.geotools.data.DataStore; import org.geotools.data.DataStoreFinder; import org.geotools.data.FeatureSource; @@ -39,6 +41,8 @@ import static com.conveyal.datatools.TestUtils.createFeedVersion; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.lessThan; import static org.hamcrest.Matchers.notNullValue; public class GisExportJobTest { @@ -47,10 +51,16 @@ public class GisExportJobTest { private static FeedVersion calTrainVersion; private static FeedVersion hawaiiVersion; + // Bounding box for Caltrain is approximately: + private static final double CALTRAIN_WEST = -122.5918; + private static final double CALTRAIN_EAST = -121.5523; + private static final double CALTRAIN_NORTH = 37.8499; + private static final double CALTRAIN_SOUTH = 37.002; + @BeforeClass public static void setUp() { DatatoolsTest.setUp(); - LOG.info("ProcessGtfsSnapshotMergeTest setup"); + LOG.info("{} setup", GisExportJobTest.class.getSimpleName()); // Create a project, feed sources, and feed versions to merge. project = new Project(); @@ -64,6 +74,10 @@ public static void setUp() { hawaiiVersion = createFeedVersion(hawaii, "hawaii_fake_no_shapes.zip"); } + /** + * Ensures that a shapefile containing stop features for a feed version can be exported and + * contains geometry for each stop. + */ @Test public void canExportStops () throws IOException { // Run the GIS export job for stops. @@ -85,10 +99,19 @@ public void canExportStops () throws IOException { // Iterate over feature properties and verify everything looks OK. for (Property property : properties) { String name = property.getName().toString(); - LOG.info("{}: {}", name, property.getValue()); + Object value = property.getValue(); + LOG.info("{}: {}", name, value); if ("the_geom".equals(name)) { // Check that the geometry was exported properly. - assertThat(property.getValue(), notNullValue()); + Point point = (Point) value; + Coordinate coordinate = point.getCoordinate(); + // Check that the geometry was exported properly. + assertThat(point, notNullValue()); + // Check that coordinates are in the right spot. + assertThat(coordinate.x, greaterThan(CALTRAIN_WEST)); + assertThat(coordinate.x, lessThan(CALTRAIN_EAST)); + assertThat(coordinate.y, greaterThan(CALTRAIN_SOUTH)); + assertThat(coordinate.y, lessThan(CALTRAIN_NORTH)); } } } @@ -97,6 +120,10 @@ public void canExportStops () throws IOException { assertThat(featureCount, equalTo(calTrainVersion.feedLoadResult.stops.rowCount)); } + /** + * Ensures that a shapefile containing route (pattern) features for a feed version can be + * exported and contains geometry for each pattern. + */ @Test public void canExportRoutes () throws IOException, SQLException { // Run the GIS export job for stops. @@ -118,10 +145,22 @@ public void canExportRoutes () throws IOException, SQLException { // Iterate over feature properties and verify everything looks OK. for (Property property : properties) { String name = property.getName().toString(); - LOG.info("{}: {}", name, property.getValue()); + Object value = property.getValue(); + LOG.info("{}: {}", name, value); if ("the_geom".equals(name)) { + MultiLineString shape = (MultiLineString) value; // Check that the geometry was exported properly. - assertThat(property.getValue(), notNullValue()); + assertThat(shape, notNullValue()); + Coordinate[] coordinates = shape.getCoordinates(); + // Check that shape has coordinates and the values are (generally) in the + // right place. + assertThat(coordinates.length, greaterThan(0)); + for (Coordinate coordinate : coordinates) { + assertThat(coordinate.x, greaterThan(CALTRAIN_WEST)); + assertThat(coordinate.x, lessThan(CALTRAIN_EAST)); + assertThat(coordinate.y, greaterThan(CALTRAIN_SOUTH)); + assertThat(coordinate.y, lessThan(CALTRAIN_NORTH)); + } } } } @@ -190,6 +229,9 @@ public void canExportRoutesFromPatternStops() throws IOException, SQLException { assertThat(featureCount, equalTo(patternCount)); } + /** + * Utility method to extract a {@link FeatureCollection} from a zipped shapefile during tests. + */ private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) throws IOException { // Unzip the shapefile and read the stop features to verify they are valid. File destDir = Files.createTempDir(); @@ -222,7 +264,9 @@ private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) // Create feature collection from data. FeatureSource featureSource = dataStore.getFeatureSource(typeName); return featureSource.getFeatures(); - } catch (Throwable e) {} + } catch (Throwable e) { + e.printStackTrace(); + } } } return null; From 1bee80eddff9d4b70ec7fb5981d9841ae798d021 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Tue, 21 May 2019 17:17:06 -0400 Subject: [PATCH 64/83] build(pom): update gtfs-lib to 4.3.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index acde8b78f..1df47fa04 100644 --- a/pom.xml +++ b/pom.xml @@ -261,7 +261,7 @@ com.conveyal gtfs-lib - 4.3.4 + 4.3.5 From 2aca2a9e80d167c9c38ab4dd6bcb36f99bb50451 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 23 May 2019 13:50:09 -0400 Subject: [PATCH 65/83] fix(pom): fix jackson-databind security vuln. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1df47fa04..a298e60bd 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ https://github.com/conveyal/datatools-server.git - 2.9.8 + [2.9.9,) 17.5 From e66a97ea80fc6048abb332a05025e0324d2c9f48 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Thu, 23 May 2019 13:55:32 -0400 Subject: [PATCH 66/83] fix(pom): fix jackson-databind to 2.9.9 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a298e60bd..13e04f230 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ https://github.com/conveyal/datatools-server.git - [2.9.9,) + 2.9.9 17.5 From 8ae84981f7d0f31c17adb1296295f5f6d38197a5 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 31 May 2019 14:57:16 -0400 Subject: [PATCH 67/83] fix(GisExportJob): fix projection for stops and routes export fixes #203 --- .../datatools/manager/jobs/GisExportJob.java | 13 ++++++++----- .../datatools/manager/jobs/GisExportJobTest.java | 1 + 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java index af263bac5..b2ececb1b 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -78,13 +78,12 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds ShapefileDataStore datastore = (ShapefileDataStore) dataStoreFactory.createNewDataStore(params); datastore.forceSchemaCRS(DefaultGeographicCRS.WGS84); - final SimpleFeatureType STOP_TYPE = // createStopFeatureType(); - DataUtilities.createType( + final SimpleFeatureType STOP_TYPE = DataUtilities.createType( "Stop", String.join(",", // Geometry must be the first attribute for a shapefile (and must be named - // "the_geom"). - "the_geom:Point", + // "the_geom"). We must include SRID, otherwise the projection will be undefined. + "the_geom:Point:srid=4326", "name:String", "code:String", "desc:String", @@ -96,6 +95,8 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds final SimpleFeatureType ROUTE_TYPE = DataUtilities.createType( "Route", // <- the name for our feature type String.join(",", + // Geometry must be the first attribute for a shapefile (and must be named + // "the_geom"). We must include SRID, otherwise the projection will be undefined. "the_geom:LineString:srid=4326", "pattName:String", "shortName:String", @@ -158,7 +159,9 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds // exporting a shapefile. If there are future similar cases, we may need to // refactor this into a more structured operation using Java objects or // com.conveyal.gtfs.loader.Feed - String patternsSql = Table.PATTERNS.generateSelectSql(version.namespace, Requirement.EDITOR); + // Note: we use generateSelectAllSql because we encountered an issue with some feeds (perhaps legacy) + // not containing the column patterns#direction_id. See https://github.com/ibi-group/datatools-server/issues/203 + String patternsSql = Table.PATTERNS.generateSelectAllSql(version.namespace); PreparedStatement statement = connection.prepareStatement(patternsSql); ResultSet resultSet = statement.executeQuery(); // we loop over trip patterns. Note that this will yield several lines for routes that have diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index a69c922eb..4c5d0472d 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -13,6 +13,7 @@ import org.geotools.data.DataStore; import org.geotools.data.DataStoreFinder; import org.geotools.data.FeatureSource; +import org.geotools.data.shapefile.ShapefileDataStore; import org.geotools.feature.FeatureCollection; import org.geotools.feature.FeatureIterator; import org.junit.BeforeClass; From 9fd302d8b4ac429f3c558bd77601126fa99b5f68 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 31 May 2019 15:00:35 -0400 Subject: [PATCH 68/83] refactor(GisExportJob): fix a few things --- .../com/conveyal/datatools/manager/jobs/GisExportJob.java | 8 +++++--- .../conveyal/datatools/manager/jobs/GisExportJobTest.java | 1 - 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java index b2ececb1b..89f29f559 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/GisExportJob.java @@ -159,9 +159,11 @@ public GisExportJob(ExportType exportType, File file, Collection feedIds // exporting a shapefile. If there are future similar cases, we may need to // refactor this into a more structured operation using Java objects or // com.conveyal.gtfs.loader.Feed - // Note: we use generateSelectAllSql because we encountered an issue with some feeds (perhaps legacy) - // not containing the column patterns#direction_id. See https://github.com/ibi-group/datatools-server/issues/203 - String patternsSql = Table.PATTERNS.generateSelectAllSql(version.namespace); + // Note: we use generateSelectSql for PROPRIETARY because we encountered an issue with some feeds + // (perhaps legacy) not containing the column patterns#direction_id. + // See https://github.com/ibi-group/datatools-server/issues/203 + // TODO: replace with Table#generateSelectAllSql + String patternsSql = Table.PATTERNS.generateSelectSql(version.namespace, Requirement.PROPRIETARY); PreparedStatement statement = connection.prepareStatement(patternsSql); ResultSet resultSet = statement.executeQuery(); // we loop over trip patterns. Note that this will yield several lines for routes that have diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index 4c5d0472d..a69c922eb 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -13,7 +13,6 @@ import org.geotools.data.DataStore; import org.geotools.data.DataStoreFinder; import org.geotools.data.FeatureSource; -import org.geotools.data.shapefile.ShapefileDataStore; import org.geotools.feature.FeatureCollection; import org.geotools.feature.FeatureIterator; import org.junit.BeforeClass; From bdda525c86d41466c026f7d0d9da0ff49f80d224 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 31 May 2019 16:29:25 -0400 Subject: [PATCH 69/83] test(GisExportJob): add test to check for CRS --- .../manager/jobs/GisExportJobTest.java | 59 +++++++++++++++---- 1 file changed, 49 insertions(+), 10 deletions(-) diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index a69c922eb..69d45f69f 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -10,15 +10,19 @@ import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.MultiLineString; import com.vividsolutions.jts.geom.Point; +import org.apache.commons.io.FileUtils; import org.geotools.data.DataStore; import org.geotools.data.DataStoreFinder; import org.geotools.data.FeatureSource; import org.geotools.feature.FeatureCollection; import org.geotools.feature.FeatureIterator; +import org.geotools.referencing.CRS; import org.junit.BeforeClass; import org.junit.Test; import org.opengis.feature.Feature; import org.opengis.feature.Property; +import org.opengis.referencing.FactoryException; +import org.opengis.referencing.crs.CoordinateReferenceSystem; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -87,7 +91,10 @@ public void canExportStops () throws IOException { GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.STOPS, zipFile, ids, "test"); gisExportJob.run(); assertThat(gisExportJob.status.error, equalTo(false)); - FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + File[] files = getFilesFromZippedShapefile(zipFile); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); + CoordinateReferenceSystem crs = getCRSFromShapefiles(files); + assertThat("Coordinate reference system is not null.", crs, notNullValue()); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { @@ -133,7 +140,10 @@ public void canExportRoutes () throws IOException, SQLException { GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.ROUTES, zipFile, ids, "test"); gisExportJob.run(); assertThat(gisExportJob.status.error, equalTo(false)); - FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + File[] files = getFilesFromZippedShapefile(zipFile); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); + CoordinateReferenceSystem crs = getCRSFromShapefiles(files); + assertThat("Coordinate reference system is not null.", crs, notNullValue()); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { @@ -189,7 +199,10 @@ public void canExportRoutesFromPatternStops() throws IOException, SQLException { GisExportJob gisExportJob = new GisExportJob(GisExportJob.ExportType.ROUTES, zipFile, ids, "test"); gisExportJob.run(); assertThat(gisExportJob.status.error, equalTo(false)); - FeatureCollection collection = getFeatureCollectionFromZippedShapefile(zipFile); + File[] files = getFilesFromZippedShapefile(zipFile); + FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); + CoordinateReferenceSystem crs = getCRSFromShapefiles(files); + assertThat("Coordinate reference system is not null.", crs, notNullValue()); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { @@ -229,11 +242,8 @@ public void canExportRoutesFromPatternStops() throws IOException, SQLException { assertThat(featureCount, equalTo(patternCount)); } - /** - * Utility method to extract a {@link FeatureCollection} from a zipped shapefile during tests. - */ - private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) throws IOException { - // Unzip the shapefile and read the stop features to verify they are valid. + /** Unzip the shapefile into a temp directory and return a list of its files. */ + private File[] getFilesFromZippedShapefile(File zipFile) throws IOException { File destDir = Files.createTempDir(); byte[] buffer = new byte[1024]; ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile)); @@ -250,8 +260,37 @@ private FeatureCollection getFeatureCollectionFromZippedShapefile(File zipFile) } zis.closeEntry(); zis.close(); - for (File file : destDir.listFiles()) { - // Find the shapefile and + return destDir.listFiles(); + } + + /** + * Get the coordinate reference system (contained in the .prj file) from a set of files representing an unzipped + * shapefile. + */ + private CoordinateReferenceSystem getCRSFromShapefiles(File[] files) throws IOException { + for (File file : files) { + if (file.getName().endsWith(".prj")) { + LOG.info("Found projection entry: {}", file.getAbsolutePath()); + String wkt = FileUtils.readFileToString(file, "UTF-8"); + try { + CoordinateReferenceSystem crs = CRS.parseWKT(wkt); + LOG.info("CRS is {}", crs.getCoordinateSystem().toString()); + return crs; + } catch (FactoryException e) { + e.printStackTrace(); + } + } + } + return null; + } + + /** + * Utility method to extract a {@link FeatureCollection} from a zipped shapefile during tests. This also asserts + * that the projection file included in the shapefile (.prj) contains a valid/parseable coordinate reference system. + */ + private FeatureCollection getFeatureCollectionFromZippedShapefile(File[] files) throws IOException { + for (File file : files) { + // Find the shapefile and return its features if (file.getName().endsWith(".shp")) { LOG.info("Found shapefile entry: {}", file.getAbsolutePath()); try { From 768b7f7d37340c3cee655f45909aeea08ccb2c64 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 3 Jun 2019 12:40:28 -0400 Subject: [PATCH 70/83] fix(MergeFeedsJob): various fixes for MTC feed merge --- configurations/default/server.yml.tmp | 3 +++ .../manager/gtfsplus/GtfsPlusTable.java | 5 +++-- .../datatools/manager/jobs/MergeFeedsJob.java | 3 ++- .../manager/jobs/MergeFeedsJobTest.java | 6 ++++++ .../com/conveyal/datatools/bart_new.zip | Bin 427758 -> 517359 bytes .../com/conveyal/datatools/bart_old.zip | Bin 382464 -> 456486 bytes 6 files changed, 14 insertions(+), 3 deletions(-) diff --git a/configurations/default/server.yml.tmp b/configurations/default/server.yml.tmp index d95317b46..5db5a6f2f 100644 --- a/configurations/default/server.yml.tmp +++ b/configurations/default/server.yml.tmp @@ -29,3 +29,6 @@ extensions: enabled: true api: http://api.transitfeeds.com/v1/getFeeds key: your-api-key + # Enable MTC for testing purposes + mtc: + enabled: true diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java index 2255e36d6..60b46d530 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java @@ -34,8 +34,9 @@ public class GtfsPlusTable { public static final Table DIRECTIONS = new Table("directions", Direction.class, PROPRIETARY, new StringField("route_id", REQUIRED).isReferenceTo(Table.ROUTES), new ShortField("direction_id", REQUIRED, 1), - new StringField("direction", REQUIRED) - ).keyFieldIsNotUnique(); + new StringField("direction", REQUIRED)) + .keyFieldIsNotUnique() + .hasCompoundKey(); public static final Table REALTIME_TRIPS = new Table("realtime_trips", RealtimeTrip.class, PROPRIETARY, new StringField("trip_id", REQUIRED).isReferenceTo(Table.TRIPS), diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index 5b3d684cf..b61115537 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -614,7 +614,7 @@ private int constructMergedTable(Table table, List feedsToMerge, // route_short_name/stop_code in active data not present in the future will be appended to the // future routes/stops file. if (useAltKey) { - if ("".equals(val)) { + if ("".equals(keyValue) && field.name.equals(table.getKeyFieldName())) { // If alt key is empty (which is permitted), skip // checking of alt key dupe errors/re-mapping values and // simply use the primary key (route_id/stop_id). @@ -742,6 +742,7 @@ private int constructMergedTable(Table table, List feedsToMerge, break; case "transfers": case "fare_rules": + case "directions": // GTFS+ table if (!rowStrings.add(newLine)) { // The line already exists in the output file, do not append it again. This prevents duplicate // entries for certain files that do not contain primary keys (e.g., fare_rules and transfers) and diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java index 722d1ebb2..ec3e261b7 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -3,6 +3,7 @@ import com.conveyal.datatools.DatatoolsTest; import com.conveyal.datatools.LoadFeedTest; import com.conveyal.datatools.TestUtils; +import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.models.Project; @@ -161,6 +162,11 @@ public void canMergeBARTFeeds() throws SQLException { mergeFeedsJob.failOnDuplicateTripId = false; mergeFeedsJob.run(); // Result should succeed this time. + assertEquals( + "Merged directions count should equal expected value.", + 2, // Magic number represents expected number of lines after merge. + mergeFeedsJob.mergeFeedsResult.linesPerTable.get("directions").intValue() + ); assertEquals( "Merged feed trip count should equal expected value.", 4552, // Magic number represents the number of trips in the merged BART feed. diff --git a/src/test/resources/com/conveyal/datatools/bart_new.zip b/src/test/resources/com/conveyal/datatools/bart_new.zip index 917d60d913781be4511b5df4892c70ffdad5dce7..c5ac1373e05fe35f934426655fd16f15e4f78032 100644 GIT binary patch literal 517359 zcmcG01z1(v+AiJQT}p_Qf`~{8(j}sTbO|WZC5UvF3QCtCAS$K8qMIe9ASxhTN_XcS zW1$|;-uwU0x%YYQ-fPXt7<0@yzwwRtd%qZKZ!J|!EGjfS@Nc)OgF4zD|4^clq1`fd zvNSezadEOSb9J$F7I5)!xu#2mHZ#6x5dL{le-oVw?b_2yJ4RVDEN9Ha*nm3kp~cBV z%*HdaN>s08NVRk_YTdW6TXZ<^f~4+hhNV>hXkYMraPOOxonTDw!pfXmWsT&6^raEj z-i3+P15fYDbmPLU+9l0_1Gjs7_iKiwj*i?O>{b{q3NG18`$YC!XI-E8xMZx~FY0F| zM3IN#r6CfKGL0e3?dJESUgUiYpWpj1Atn6OJ{FBr#k2t_c^I7BNwOL)eo2&#Y+%q+ zO7^a+W)+GwB10z#lNKLgt8cyc&+)R5?UB5tflw3`&6U;Q^Ru4s?+}u`MQih3jnd+&k|LLyQx3xUtA6-JQj5WRiY=+`;KVWUfs)?c z=sjZXQcEf(y?e0Li~gB%8cK_NJc-_0{%W*-R;Pw%$`?774RZ0%s$!+xNtje~w(_uB zB>LEyI#ymTEOFjF_{aAT%Y%dTX~`EGoqt|ru=(UH$n{=_++(p5D^URBqqgu&`4Y$S z;PGR;5+*wwtUOr2V;WP(?jeLFNWo*qf{Vll$*zYmHsnX^x#U&abY}|WUJj{9rD4t= ze0IiAF`{MD#$PS8?xPFqcA^xsXpUwGu^~@{v-*+c{hQfbVlN6Fjv7?R`8z8cI|vvu z)R(((W98zd2c2rLG7VqWOW?RqQ*-LuYW-2h*ZU5imS^sL%4cuK&$|BFH521ANg!_J zmCLu8@Lmk%v7aLi{Csv+soBp-rQN_9jrrP}{F~86l+)AaRz|z;u)C(1|99n<8O9-U}iBFt<40pWnVmvkDKhrcT94b6!g>*7=b4g(r~y zixM8D%?iFL+ud{QZ+pdg@7ouAlL``SyEd1*e69R;MT7f9exdu=MXR;GD(gdZEmd4R z2~H)YBMdY&5h64+t>5-!XzlfH_CyTq$;HXk&iR(5)4y5Lr{DvWC8?fn`xqrC&?*@E zQLXz_tD;Z@#aeiecEq?UFQK-plknO&IY(moizr8RrarmHFX%x?#aE+uF6bTF$|Db(ecY(szGVoAj9uAkT&>#m6+rg zgE_g{{xf+Qrm7b*oqv3Ji+Ejn<=JCBJNjYS zBpF}kWGd$vp^S54RpRzlS+N14_ zvf87Sxh2cPt)<$7l`UhRy{&=Tqy1dV!P>pW-1K4Z#iN5A&9c**dxe$N2KIQY4?N{Hrn$jgtm z*AK21j@0h0OD*)er*E=EJ`t$i>GgYyT&lUAQs6c-r9Y&2Uf|x=&H$n7qEP5Vg`7b7 z>_8cdGTBL|$7mcAeCYBxoRN60zVFYT^i`78iT8caRUbMUPhPGh#6i;{i$-3C!9mC= zW1-a$s)ZqcU4@Pumq?yWX7ZA+Op~i`sH*S#Cun}}o5=~~CwCg--m%GtW{{6joG7^< z6&315%0ZY&#nEo_oaD@9KlAXM)j!)d`bn|5B<13i00{?z2)(YXF=T4&L%))tGf#oMI z-G3eKulT5rgDi6S2iw^vLNEIV}t9JvotE9kI&@E#YOt%KC^fw#--9i4=xM8 z4t=Z_!js4;--;k(yK?q}0f)-&Qo4bU#JSUIEh>0Ht-8tqLiFaYz67zwUExBBHfXU? zdvXbUjIN=vr|{xVg~px2dt%w>T3li)Z&<|VzRGd)>7IiTL3~Z`>A=qRicjGl^t6@3 zRgtG(hsKX3v?OSkdEcMAt^ao3;Vs)uxBDu~2~M$f2_;TpNGe`Swf;BS{>V6We4tD&Kw}D(NHft}Vfd%O8v@0dF#5VvRZ_GJYmV+}D!TqJpH} z=^2ShF&ZC@Z!<4Mn7WwSzp4YM`?2lafoTa zu4%x><`#vR=9ZQpM67#dbu}`LNPjfu=x5Uo)R8O#Xe^Dg6f6;0CncV?yX@7oTH*&G z56@@5v=$e2IxV(%9{IcvF&5B;7|-rPbe|?=qFS!=8}-Ai#|*jnq0WzzMGWC3W6r*x zQT*zIV%C_FZ%Y_O#+W{Z2o9%=dGnd96`I!-rco{U=pqLGOL{l(70e&8i3sS773#U; z`zagHQl6$!TODw0gQ+f`?p=~($b+BBj{37@9nxE@W8*TO#bFVl-`lDxx!m#=`G)^&!8-Zb zJWY$iWzw_LXN>bi`yV=HN?5QZKtT%XEyyfmWs|uAc-bagl8vOBa_4aZ^6(=sPGPs) zb=F}ZYQw}~LBmN$?qBOaTn1KCi-cpXg%3@+?3jI2*gkF*u~+7N7!cQ@{m&DJ?O{?k&z{q8RNlh4im+0{!Ull zB%Uh3^`SH(>|&}vep_SH7ui!>1@}oPKbQ$SIzDa25>+#41cyH9&Y4eA&K2@?@}s_C zx+ys1vQNkyxvd|RW@uB^FWlvL9~jn$+sw^DgB9w4ABs>FB7YgUkKxKTz9G|ehs-n? zcS)9T2YXhgY0fXS7n8gYm%}JFG}$&Z1Cz{;n0y0z;InNru@#~FvtTwo?3AZEJVPFImqkE?hb6C0LaR<< zF!Yf}9rhZTl(b82s~yYq2?;UfanqJ;55%bRa+fj{Y2WzR2X77*+X&o&@p@5-SCdK- zqkt8x8Ryn#ik?Ousq!K_3w5 zGVgXcVV2{Ep)7~A{?v8mHbd#23q73$V{pxbhOP^@=?aqNJ_&U__sw(`Go7Bp#$?C9 zu{Ei~!LfZBHYzQoB`pMw2C4oJu8eu9@QG#Ls+T08`S#o-bLq6M$LT9&5A_gib^fY# z4G+->&-WJq76E(8W z2&#yY@wt$26M9$c)&*n#kmoaL^q1qK!6R4AnI`2UJEJRh5xWy(suKfUh;UP^hU=Z` z%DERyFD*=&^yn06S{?;CnwT=_(&5sy`2G3k8NH%TuLU#nf4Bs1(1SOCd%ZK${V1yx*r97N*}KNS8@Lw|mNwgQ6ed`h(3hzRe-v?}1&Upf%h<+-Rk&7w)u zMgl(-`xcq=7MYAGd@cd?m)tMtPSdH=h%3Zm8w6wb-^wgZ=W~hXA|wdYgLg4$(CqHE zUh1#E^uwa0YeAFdTW#y5AJ*XcMc|V`l@LUtThzsjNAqpMB-4<9X1B&as4U|P|D!c! ze$GrXTw$l)vm!c)SAr%s&F3P7R&6i?{OE`20WI-+Jn{PI#^*uaAWBVo& z6Suj6TAyz)Pm^!3xVb?AE6Bf)mf&!(kSR35_`>KF4X&|Oxvk*&kAgE8d|g<4gG{lv z{N@6JK8#s_36OrYL^eAAu#l2)-&-3iKS(D1n0i7|aMYO3mY0#{7J*c?4}nZWmn0bx zw;f}nuL&KVzp2Na=Zol#4zg%C@uSRx9I`_5euDZ!^FCN@I5@Ydi1t{YmtZ%hg@S|B zm;NcstE@s=QYJhXO{~2n2F?h?Ej;mYVKbR#`FKv<5)+dd4d7p_9R~*khbRsgN9sJ0 ze20)$mMKCbo^_NX)41-!`)7W9tG7HIwRW+YWJ7`(l~V*6cRkf#kE30EsS%!Yy*Tma zyT)gJ338Z+JC>Nt%Y(DCe4)7cfgxYKeR2KGSggM+W#b2oC@-lxZoTz-*WzDy(I(zE zBpJ(tu4HVCS6^b=*#pr|L%R3My?;FO>%#S&tu$=Di%-wE?%jOphkW$~_|1jU%y~M- zw#`erOhhcR>ErdK9*9q}D-I`Q#>b)?i<=4=ZCUoqdxgdv3ruIpinYxXrKAxTPTv3i zV2<}YLypELgU0L(58|u+#lbIP^JqWSq&;D_S&M~dEbq(x;U&9&#VRft-N~zv7#82)@Nz# z=BkX$B7PoQT&kf_gRO7OI0Q~6JY+=8uDkO~Efi8-vsH6s)ay5OY#Xoa)V;r6n&%K_ zZfR^xN_`$b2cuqxEr9^*>X=Sgc#xKdC97RR_?uXE-aL^P(`h2q?psW}WEtaXBWlh1 z9;eH-ib=WnWr9>?nhi1Jnt2&{5i&aSD}s!?qW#azj#TwZ^ZM3$rYxPS^ZII&T=&$Q ziGAdof&cFu=lu4AlW7B&dT8u|cHBZ#z7CzvI(BS$NkF)rgLXIZ?L0OUtuZE<=23z? zy0JIClS*XNVy(BADNS)A=$|&2Wf7Z>2?b!AVnzg21q5Li6`|44)S1_O8(_CLbO{mZ{kH&x96X97=|Ep@q{Z+Y6uIk zdPM1pnwSt04d4WHFcM(}_?du8fjJpt9UT^?5KdV{JwlunBS6L3#&|2c-T?z`A`*>` zw&91myuF>yE}FSwF19FnIaYG$2a0h?*ZyI-CTc#ckt4S!qmuHp_``B2zsufms+6oB1m>fNtE>Yjw^N=lk~9Wp&HHA}(+O8pJv~dzfG1W_e}Qy> zxTSJ-v3S~nE5rPY{YuOY8;qXZpi(@)^}3);Qk-w#1**v2fUKl9>h|*^Wj{ z(IxnNL$H_F8~B&lIT(OA{1cM$H>|Q(bYFaCG=e|?j6>bSm{TyZ`T|G3IblctvBm0kX3ylsn=f^^cG^DYYFu5ZKap4 zo2(M&{&rjO`S5K;UyRsICN=9XAxv5v>EgVXcRqJtl5l-Xrpe6N^v0uq!R}8hkfw%M7@8iK|$2UUh;uX;zv(qA-xgJ`f`; zEH`?SJx%b#u5rj+`CcS#zP? zSyx-8&zulejG=H^pUyt($u>ECp)e{xb;o6{pp)L*t-MTqAmR=}m_ zI8z@uWi{~cJ=WPn=P@wT;)@J;$gTY3=ht;>;v|?N_ADn37pE@&rHX&An>zV>Jv=x^NXkn@=VjTd5fB zl+~aw6)vgvyjZpYja9aCVtqtUc7>p0l1}AtcE_j)PpM?ud~)Wdl9vQMUL?0bedDg7 zKPjh#^0Kf0XzoS?mh|f$0!qElt@2-^2rVY$C0>@1t|4MdCJ-?oTwdtGbL`F~PvhJc zxuk;j{t~xDt1AA-Tipb{ukfUz9$w#nawk(y7R^0JbX(-^i+wMj9IcbodJP=6J>n145w`S}JG=`>=*f-(BC{}@7Pna%03iCA7^ z0A7>_8NC68vp#1XlKFfS?t{h&$MH-%W^gjiiV?rSyN*HZkjxyiZgXCj3cy^}$* zCX4Sg#v!&7^fHTDxCU|Par>(=0x!MR;gSD-!*ew6WxF*BiAXY1u6G}FGF`9ry?WVj z%aB@hF26|6TNFYd=@yCL0DI;)!@(-Iwm8;^cI6@!`85qAlfx+!g+aGrc>|+b6&z?^9s`9ITk64 zVIz}-xSpU<=c_IcckO;6mcBDz26~Y?_V^dR477&57Ka<=-V^eJ?6XY`ke1 z(4s8rtgG{$>1)ucv&Ku?VKTF|;D@VK>~BE`en2k2o4UB|}(Wk;bR^of(ntwYJSbr}sGozIrF*KRd*m!M-Z3h|KA z!Gw^Gw!eyb&;k?Z&^eSLJ(-YKh&GzsfNioe#*R`T??i54MQ?0G^ry*ZSxxRQ23+ayd4^shzWJh!J zPS?D^BOzJ~CV}fJp@bus9Ata{J?rwXuVq?L* z`L*wEI=+85%U^VTh;tn42gQEN{n$DUuKB*IE26q77H{sEKk58VY+%AoN!+55<0dob zRIC?&2ZZO2_iy&Udi%_qCU#UBnVV`EfW5Jj-$*`w4c9+LGYdN}1BW$T0sTs`X+*ep z(;Qi`fV)~cD}8Lnv(pJWF45n$G7~!9B&mkJR!eOv*R4Js+C0lSX||!E%6HwK)vVa_ zB7MY{i&u+vs{;*Q8C?>%e&g(SvkemF_E&c6fs~(l*m+X~ugW&8xundNxr?Ndjk~1K zfG>qv;{%rWQEih`0gwr@ip0<2%|*OTy69F%9hnD6WU461VGxQhLJ*K1pE z?XVvrZP+Z~*C!>{&t)e@ia2{-f;gKIwgQS9^1V7VZkT=0xM90weKY4HsVUcJ~GmZ7uy*(awhE4XW-5=f~r~SEZTj86CDdW+#-3p{D z>EH5x(rI*~05|xJt%)v=v?<7srZ>5XEOCioFkr&NNN3GTSLEk+ShSFQh(l!fph2tD zlr8&Jc7tDFrdP+IR0xk~rCVfDF#r7r7RhxopZbOrclze?6V{DxNX4K(bI!X#8$bY3 zu=!qT?0~!VCi+5s(aQZApIoIj7Torw)cWg+#PF+El6R|&0|*}nZHjGHl&Ti@zO&~m zUj8~W8?D>7v|lP~dU>?hRDeQ)^WsSll}%puTnp9EQ~f38Dy8!uoe4_Y=T5 zc1@g19bNeb7U5o1j@0*5hd$wwMG;EP^Z03xo(HlPz33tB!%OpcM*Z=WcV< zY(YGX(O8Q5bFI{WetU)?Msm&~UN7+j=L3D&RCI-MR+G2PCU411;vW9`fWMjH$7Kg! zp&wnLQmCHiVjWCI(P6V6U%_3xj)%P-e5O?~A}J^$?atLr-@=SsbocG{BM=hTrX-R8 za1D0=oTiivewSQ$AgcSD3Jn^ zziyfZi*CWmw_5<4&O1h3sBH)>YXL1Q2rVlR>(>V@YaaD!*A!|a5&9N{5)-fp32e4$ z2vzi;E8ye9k1++Dl*>zWh4YLiF147EBs#v`kCIGAcP3tZ!OD7xCnRo&9{fxgOr~!7 zKDaX&JnM{!i>HVF*nLf*Z>{(WKkoQnaq|VAOk29hXno&qNj#x%Q)pR+1VXzk$tH1L z=n6nFgumX1uW4WA&OTzd@HTgK=fNn=Zp$c5E zY)mF^HPIDD%!ym1P8%j{8j!%f`Jyyhf{o;t} z-R~z17`I0+6at${c4hsHOaIyGETYcBmO>3jz_TCMd$lCyvVSX^09U|uH5^c>ew{#s z^|n8r5*F2+_-Xd5jWjkljIugPU94OyHi_C`o!Rto(Oi(5tMsh0hDZgyZ_;Y^6E=X~gAa@M-p zLMx<|&8Zx-6cd}?pn;TjB==a>;ANS0Anp9^po8^_OtHer$7qmQ@M?V&;47QsvF&N!_wF}sXM zyo61sqnO)+yj zaWsB#MJ}GV)w*ogz*BE4_O!^)MAW)DqT|Jh^QJCH(}1qYm_oN#T#Ozd06j-bnE}CD_=ie==FSLkfX8ve_pHA+Q9WYs+M~J}v%i|QQv|+06 zjZZGBlI5K!HF?YEOsLRbjGYCd<{vbX6i$Q+_&EU-Ibb5L3DL9oi$dZyvU72G!M_kkr>$4PYX2BM7mvYuXw6i-t*4xO^f+_EQ@RT zcAmN)zX;nLU$^h)7>{_iOS4>8mi0iw`yF zykm~u%2|P?#*2+x=jXj_mWYhW`{)-bJTHwTp01Cu{YbIOU8TBAN`1AV7FnU>8^8N} z!_YVW;H9InzYOzoi56}ZpBRqdRXW`IEP^NBho4h8v3qV9od)&!l?X3OB)){?%|YkttIw}gK*j_;j=dl zl}`JPJ9wFk`JWH&p|vMcTyAl|vL|xi>ZjBA=4|ePUw)pWKoxdT1r{BA$IO1ZT>hP3soE3_ZpDzy>{kSv}6}m%Uu|iaZ9KbX2_OcnIU! zMnhy}g?{G4qbH~wh7@@QIk)k!Rls+5`~($GeVvnA)B48Tr8iQS#uVN#Wy&y1UGk$S zkAHzdja{Pgt^NMmx6Bor5X-#?T539~TxPB1{tPxcDy#s1 z6DdKv zJ=m$i662|XS{J5@#my|VFwW-d;53vo z@lM$E-H_GGo?e!azjK<=f(TM<+<#B`jWq)~Yqill}ir;ztjeTD#MN;j8L8FJ` zjAYuk*5%uRhA)Lr(C(QI2-0vh_$lr9z@OddeB^j@`UD!<`6qw=P^iy5?%#gsL;-$w zV{U3|X=h>TWNcyjm){M(?`AZBzZ*QQ!Oz>SrV#~x>!hsAr~F0vwUP!uPix1=2*DS8 zN>ft=ZbaQ@&I-L15jy*}>&)a7!IoQ?JRTi7b>Ob-c8BE8ZK8=S{A4j~8CXRM|Y~!b{f89!L-Y~NUl9vG>vN@0DlvF5X1 zIKnrwe>kw@vk7lLsC}^2>vOR7@xjhPjL-fU5MqDvRYOWJ-w zdNh-KB6mpM>!9eBv2}bx>8uJX>)}qB^wGx=1Lvd%LCBD!?YY{cq4Q-4rTq49ks-!M zo9BJDzo+%MJdYtgS|9K^{BpisHF_Wjyeh)@aHMwoR_jRc0`K5l$kgi84a3!5(;m{5 z?V?4W#;K*o0^{+Ov7_BDKKq^LRSz%CSGdQJ`W&qp9~^+D!o24R7S_YDAGNz?@vAq+ zbw?axNNcwj3LhMFKCY!ivV&)i93B2JUNk(^W~%5zg4V%O&FH7H@%F|Qgs%7YfizIY z$SYQ_)1`ulx#Wnx-t)98+skVs`(w1MF60>~g=p4pH!ev{bELQ#Ow|}k@An8EEr*a+ zgvM@8);w5?7&-hNAb=rK9*PVREHb{|by@6g_uTIGvgXlDeC=*V1e&`2+(e`F(YQOS zD|tq@cQp<zF0u7GM6IBZ2;I(x#^!*=%Ko^GC0oee( zB7CM@Z}XxR+lnkLddh?FgUFLW9wztcD6tP(sBwn#rp5Ay8cd#zBoUme@#9*2j=Fr0 zYNLn>;Zd%u~tM-=DR_1B1_q5KF#{-@i0`i@nDPu_L{H3Ul&89APF8TirAhy+*~n{GtEAU7;`4mm# z<9l)>MV;f7$4wO6iv@i*Ss&|SASxXk`Nj~JNo>Q+@kd>XRhd-LxP1^!#aIqE#>RDl zMyNoSnB5o6;ug?X;eH1W*s5qL4xA7z@8yr?^u5Yg+zc=Efd*6AoY|JxQ$)>RDUe#% zOx+y63!y<|hM)W7voRTv)1#Q}DVq8NGfi{QbxoH{)wku^Rd7_Gr2$ecvZ{mOhe0mf(%grQzkE4f86kG8FiAg$qRr6(QhXr|Y(LVatBP3i4 zH>iF@^6~O4o&!%^o!aU zBt-_b;O2_1zsOFQOAO}Q5`sNA;D$OFpp-=j8t4EXs0JpX8UAQE65kAed_A(si>b-+ z3I&9ReW`maxrRCZ_+rCzpz;VN-72Ikka~E6P2*4q92a>F7*xq}(}70N06Kui$a1}C z!I685VaXA#thKrYJnhue&@Hjho@VfO-9km5N6bV;_29?PCu5AUpbEKhiUWI8W(5JN zuUA1Za7jN}bo9M`9cUFD$P15#puegoO%h&Kz$rPr zT#{r|^g@wGOn{i7EtGiQ6dujOV9x>73Jb17<%4k87^;NFYHHXOGI-}-qu_m}h|69~ zsx?SQNux!p+mDfgaCr+T1Ax_WZqPPSEWNc71bEG8)y(!{%J>_OHBPheg>uSdVXB(p zBdKFzn6cs#6Zvy?qYw>Irek6xX$V zQ0Q!i;_m<*G}>5FL%AKlP=RANz;R$tI4*!d*K{33YV*WNu-Kjot3Zti9%ZvI$}*l( zBdKB}`k*0ro5LUn?o;r(+=$LCF<^2X;8;ljmtiLN{gxP0*(^Ny_EfjS%U)m*6Tkt0 zYu%}*s0%3Q4!9NrqLIx)5;51yo%Wxf5L*Ox-6ZZVP zya7km%?wY$<7+6s`}@Dj%58Uz!}LI&8Cg=50__ZMRt%~(50HTJ0k$g>Agl;*0yt=L zWzsnPvM3`O6Oynv36xiyB$t|$=CdP&?Po{G!r9T7Vv;BBG2=QI#GP~nGP)MS#_p+A zaS|jz0yqJIVV7qk{F_R3(iKRT`+iPLV=!MbdV>-)7aE$uaVRii4yYH13>wU+t{Jm6 z@R-*XeN{KUl=7i)`?w}v0|-3hW%Ks&uIjE410dk+rRP19+~Y>qpun(!xUI5lBpxNe z2ZxQU^l;S+AXFeQN!}^yzEZ01#D6&&Ozf8Qbtn0-kDNB3wx+RAqt%unZ7x`v&yXb7*D_g39_0^J521{TBUS{;zt=o(57h56=s zA0RWF^cGA7%@s4{5!GCv)i0&B?zD zEzmIKEy#?#to(WFlfz2^Q7FZOaMb%R6v6jHHBkd#+$-dTdImH6DRRM|B3Dy`>qus& z!as&Jf3MEh7|fAx*bDrR6$`Pw~E)HdTa19&*LCSC#11ypu8EkL!n`U8#vlw*dnf`9@F?gDVq?*1(n7Y+c7 zG3#XmLW*Yqnw5A^2oO_T0ZM}A0<7|Y>K=2*1aKX&VQ6av-15FDJer05>#`dhg$sfp zl!cx~87)8t=mKE=X}ZX;fhS6R(%mm_>wgtK*E&IqLThRQRG;zzkZ;6B(+F7F3?O90 zjVC>Ayr@P&63Xldk8KoXmeX}W*kIu7X1!)0YXF=gcz~K2Kx_&S_zSL?=TR1RjPPL; zw11jb?t8CmsR%5h{Fpb2ZT}NA{vUZ`fLed) zpLpZgNdtC3ygbG!l==dQC;)w6Xlw~UyB)kU{IU&V1CmHH1=Pf`%pjxyaIQF(8E8vC zemZj3$j)$9aMtVIr*K+GVgMV*K^p*V6u`#kEvLEF+gC=~@7|Hn1qcSwrrt<9C4lo+ zz!bD&Qr+NW5NF{ns5zMbhY8xnVnVlu3cu=FS^w~AC=0dgg(tLJuXuPY1Gecf$i9^X z8^?x9o4n+hf{+UfoS^h#+OoWe@_rlDgB9{tP$X?1Aku<$6-uO4$`zIn2n_&Q;7?F9 zy8$MX2Iv_y6tXbeK?A_K1R$hG_%V13V7jkct4%1490!vj6C~B-kN}{PFvY4(|Kb9< z7rR)HD`CJRx*bpYJUp#7{icodX)haK3(yF!9UI{Tlo8H)mAi+1$Xl8ketrm~;RZeh zxQTAyQ-H?ilR+>0jumM4@8|g^q*Y=x{9L{l8E&Fd;y85ab{`1MU_E6u`!yPk}-m&%+)yfn(zW zYK9&T#K7^I>-iXVw2PEr$=oU7Npp~6D+%1TNQUYJp&-g!VPw}kCH7Nn5s-`kILCqj z6m|NaP_2+f_+Ow}8xdhP*M96*w!*-A*gg82DH=lPs5bsT#Gw~ZL5IAzV2nUFJpgFM zXXDRXtJ&0o0JSYWgzA>MJiBmmg)g8u$ZhBGvLv(eg~rvz=+%7 zyGAUAM*Jv3#6?Ymgm2F4-gr0?z?ebfqZ06Pf4~D+(Xo|XTvtF@88oKR^fWJW?4bv%@25Jnddoh)1&V%ff5Cw)x{GY}P6GPvNfyV~>XIN^0stf>A zEHr#33;?_EALyg^fAufFq<-#jzWFOk5O)+*0fYU`7%K^m@p|maLGS@B7v;*ip$`|c zLuIp|)b%?Ghn221@o3BPG?*AdRHLYR_1j-j{TH8Dcx;P941Y)U;AMm+2orx9BS>a{ z8zW3+LE|_#1Ubv^kn`A92mbVkAejZ3AxvifWwOu?LCsIT;Q+Xo(y8NM8fqBDA9vz+ z0WlcGv_wEZ%_U6^GB;4=f(=x_wE7LjdBD;C-6{S~4k4$YY=!^^(=cfQ@c5PC)y)vM z{|l@T(_g|W@5D?ThJg_a$9~lgo`78dR}MOvk2_Iyk>mW$m9GpHPy@m{j`N29O4Wle z+hBnMvc(N`)Uf|8Xad&%GyZUI{<;Mn-J$?A&@@mD<%4W+98&L_9tWqWXy|xmuR+2N zXEqFN79az9K-B3^Yn+0a%aWr3tSC;dL;%uwt?HuSEolGO2;?u(>FQUMvddntm_Rn~ z_Ok>|7gQDXfO|7MHX2aEg^?7YqIK?GS89EA?@aCjU> zrC*@x1sliJM;PXu1hoTH1mbiDDsyJT=RPpiw6~A-P@XXC9m?CZfvhU+ zZ3!>xG;#U*8fPSDXja5~K-L9_P%va{ngi&>9$}T71{L2P(J`n>r%I*>nf#o~1GFVGIbbv)hDpha=BBq%I zRoUyC0EP9TN=aCI)-OhaXMoW41gh}w2=@sp`anZtaP?`X&(Xt;>MGVHsYggbAgzKq zip4**EouQj9<@2&3_D}fJ(Q1&|G)EuC{XK%~O3qFTcROB#iYXQ-fq=RGDq(I_K&fd_yBmh{ z6hIlk6@zUJgWmY5!yXn#wo%;RB2AK_P*mImu0#Wu1om6t?imU=)dLgY86m^r5IC`3l3;HGWb$C)QV`cl zby=Zu27*-0!`e$~m;infKR{i!!OG=~$RY_?fX9YPsV@ zsQnfVH3*2mRH%j~{(Gq@mK^C8ZBSAVvIFZC11V1g*anD29Z~x!O|7ggV4GkFZVVuS zM}j*Cs4a!2nc-#-gx&Q#4Z9|dVE&BSQaIj$Io=s@yzq6Z!-e;$(w3OaX;j^^C*j`< z#GfQdy8bLqExqN2ML-t@Nr)5cW>^GdR*azpiUma_usL9$7l(psL=*_`0KdRZj8;D& zO4Fa2{7*^#E-&-nd(4II09O)mx$TYsZC00h7obKtme zSWgp=VmYpC!+KhD780<$I7oY7S)&Bj)5K9u6O>qwqrUT~Obq2mbI+rEDonvZiS_Q? z;}R<++;BkcK1IV=1w_5a#{$&m%ysBVkN5Wwg>(NXu>wdQjthXtUKFL(8|o;#`=3;d z+EAQmlH^x`leicN7oFe91eSD;kHZv{_XTxbmfwwbCxiYgB~!ieQ3 zW4TibfRgNQOmxD{3e-l1FQ}uzEE0yKu#WaCNCg2k+~+t>FJbWA3(Ma6AlC%@%}L-0 z;+et;F~>^VViaAL5rU1Ufr_+54VGFIC%=MqVGZ-YRNu3YH|TzsvZJp5k38q801Rfd z4eoQyptcXu2Q%URCYy#mfYz_wPkYo(DBMwOblBVbs!)TJ9pr)z7PS)vcVwVh9&djd z9vdgz`21;hl3y48gN~1b*#8m}Fpl=RiLyI)xE~4-SqDSYzo(P#v;ekDxv!&OpbKI~ zI3c(z1L~@<9!2f&#})@uZq78U)uMK(5d{M%6r-}`qvcac(>rUJ1;|}Wg>tm zQ0Y4?`-uQo0?VsEON>uovGNnDFbP0;jL-{35Sqtm+&BFdnKn9p`?lQ#P!2+Fm}@S9 zBgiaH!^W}Mp;Aun#fSV~K?L=D%nj~72?`3fYc3g~Jh!)57u+I>dkJByEN&r=HqB zI2cMlTtC`hUSRdP>7?W&z~5UuS!{d%X!-V9S(v;}^ViTld8gP(16&sK*8KLecf*z( z{hSx9I1G`G)#L5&ln%(3C_5FjFH(lpBz(MdKhav?Qy<2i)jj))PN^>rt7!8TA4Mx1 z5+%?p?fhPcJZ(KuH20#IJ+OU}-lHSa3%n-kX{(&WbY;I-z2zzuQ$??+umimm&W-A{ z-R0X7Psf}cy!9=rd^~hR!Jl6U^GRzDzr=I99EANC^|%l{@bY`tQWmLw`@_sha-C`) z5B)oloadGA*NwtKEWXoElFnLi%~NU>Sve*<=VWX)AGRu{PMSBWPeb0gY zEU!R+RL8nFc*J|PLUZATB=wQIjLA0EE`?>qiEf<*d!;d*A|jq7o3NE>wN95jv)69v zb^dP2)wwRUN{iU;{@_~-6gVcSiEhea&&7p_!w%b|z%aVQ*37*^R;&SWTxn`HQw-^`{fV^(%VLEUIoiaeuZufx}(4Q0y$9q*r zb-uk5UTy>Ks=(dr16@{DtUyqUoGp}SOK$Li6}`wlwe+OqVQp_~(5w`JQ!3k956(ue zIXmbX3H)e#to))yP0s1P8fh#`oDkZbjD1x?Wn|@K-nwiIqatt z^3U|d3F+7Xoj1$7-b!LPNOb%Z0Kmc^OboD+nwS&(NX05A^AtS3$fTd{5IMJNH<68d zP6S?5*z!zS7wU{Hp8@^JB67m&o$Q@mYFC}(Z&~ML>a7p8D3jh6_(TLGeYrRwHX{p` zLTm=TlS^1q!_%NNey+U4LK`eT1P3un+Btv$6}~TtHcIO^f|W^?R8GRb>8M<9edBCa zas?|9%nMiI%oVWs3O=_|)-!SvqCWtYaQAd4*;v!PcncKHsSVXAf(gfr+y!HTbFu&& z2D9mtZF;Gkd%!>!QYf264)WL0TGYD?%$;Fq&hZmwlHnG-P2pob6gSh#C1oAKB-rb0 z*_sVj-LRx}n&>}>yBjA#|Kfw1T!YqgFuzk=`4EmDBV$=ULns3&{wExN&Sv>{0GbDh%0L%p;@}bB2!Z<#rl7PZOUd5|aU--#|0$VgmArh`8IdfJKR@88``)c{vHfIe$-7*;D3(u%xml;#O>8 z+DXYp!Lr}#oqoc|Ey-qz_B9c(gDzx;=|V8`|5{q_+i7Z$3rw>=CE4`GDLn_O=^}zg z=v@Y8bZm0YvA1k<46k;mLsOJYI4PO&2+DDMGfAG3Gm!|RcTACH-)RK2R}UFj0G(0*2*p{DPZsS7jOXbcnGBbUx_)p3j05TqfI{} za|Tis_)k?=pSpLxK`~r1;4Nan6@cadSAb=BGhL|;hL$Tq^40_Dp5h0Dt=Xn;@TL`> zqT}~aTv2#Qf-}OX-0>bEQ1>ox(^YM=7c~UkCwEUztkOVr7hbAzp95Vh!~D6syz;R^ zIx{cHmWIr3YXwhTw+9<^lFHH(>SxMy`9R7oyEEtD zdk;H+=>S6ZhN9+}!?`H%27u{b5)%u#CYs>Bem`74zrV5+~%~jO9Kf-qdy1T)i2G9cKG|fJncS!=UG(Avo z@GTQKonM9tX9JX}90Q!a9UR=Bop=o_!^2zGgRGM(Mc#l(L$H8n8o(=QN!PaSK3?}# zxCQ46J09Z^v1pxnj7w8mtmh0>lAndpgtd{ff?U!VR4HGI!#c>%I6yyOCOJ_)P_`0i_=OVGRAV6Onq&=^QT@d7MO0q}<4e(*nE0JaB0 z596Teq-2p;phdvgV64KHi4!p3#2ILf7CFEgQJkXTDU;;|WE_Jo1`d$K1-6YMl{Wp- zsVM`!v!{TNNg(i`k1vyHKzjwn3w!>JS3Vw)V7tD7HpdGvF;1fJZ@f+Jt+9_#v(S2u zn#C1>oIC4Q(0YKz!D9fY0P{E(sRL}G=l?MG-2pvz@Bfcg3Y9{ON@*lYH6NUS%>rj*bslfAM&tmN%-l_w$UAeo_lFyC zs#HSqS3(qBBfG)|qp}nPUK|yKFjZ*3>8)Pos;8jd-b@C+*p)zr2K^(dA&T-q6&u7L zeqi(zOFvyT&9&rdMH-Tt`lJ7(ZoJkwt z`s{&_mxHN9ZeDEj(9<$%oO9B_@cRG=C5TT0RO|`(b_^9OAyAI`kVV0iaR=HJ2vHFm z(!ofXOJu;vB-KWTLofr#hAx6JPXb2|b_Y@dM4Ay1Ce<7z(6v>{EeMebA_>#dhTR_( zU&2O&VjFR+4e87lkZ$WkjJkQy^ z+2DCjgJ~h)_#k+Da0=AewxBSDVB0}UjUgO(TISS*MOBD|U3nG+XAg=O1VJpI7&1rU zfsTJ+1i_zS@E+HMjQ3xV-GV3uTOWbA$|go6B60{9|@>PP|Ci!SfcF89c zI?W3prTG_r9{EEfEDl%=WxvNL$Tu1qu6oS|NO91buqn#+4i()~@CBZ#yQz}FJV)5+ngA{NlpMC}@Fcm`dr@1AE zBG6CIg&8d0fk;UnVP#_1ahjVzSS(m^faM9W;sl$beJ2x(XwBCKh7K8FbcmuK4ijbw zs{AG}gnTOQ|4~32y0j{BC0Rp4T8Wr|;0kOo1Xl#j1W6NuLWi|r$yo&p7F&Uu{a)Un z3GM{820B4A>@-y&zJc<%Z2(3;4RD7U3f;P+`6rx7ks}Q2#ARpHLDezUB z0+|2XcovUAC2tK>Mt(vC%ZY)%GiMYrDEK0b#De!hIR3B|qYxuU8cQ+!MyB@-m_v+G zg>VxAA*@W@ZWL)Nf%if5?ZWgEybl)Ke$7Y0?e{W z^UgwX`u{GT{Ym(0Jd08|)(~Vro)qwNo0@|a2U*5ohDB}-R>W2f3#vC^N!#zS@~dv{ zfkgur-uu%7i@i0anI3bJ+ zEIb7C{&bK8*9m45iWJsBHX-*x6$|kgwnt^)A zkUO8PQBJK@tRS!VFR=2zvn#0V`m0?*QEjRQ=JbK2{YRjn_(R}Y)jivFvEqb1>ijn% zhg#15=P{rl0C%+gMaT6|f&$8;d|7Z?)mzNZey;_g=U68B50(YFTW&&L4@I}1bs`}Y zNaE5pus93Rj`AOzI;y(;;`&#;=Nn8z8`h@y!>cJi)NU}!@AsDfj&e{2g6oGWJ#yl! z<{WY~$l%wwNP#Ox^XYE z1|bPT+F*^TM(?nAUJaz2Ye`jj|w2=ucEle&_ntGooOaX{!Zt zP>{WWv8iA6L$K_>0SjodAZB?WyhVkcRiXbN>j!cFRI0`Oj1eJXam11dgm@^`A}_gG zs)bFk!fJ>0Yift4t9~D8(!Vg}sA@!@8w*^atoy?v{zIv@re|>Y<669o+vmH0xxxQp zUV69)hS9Wd!jnM1c-_z1=kMrWt$qGa+$dJEMgHFa1p`J8q#vjOct!{YWwp41N~9=l zUM(5H86Z@S$}A+;1}?wT(pgMP@oTj-??1IvY0~(26-2C{g`DhP5d&%pXAM7$OeZ=7 zL^?Y%jlyxrh)~82g*d3^?zWeO;^W{N!Xa?^Vba%RM5_j!5Gk$=a&v9|!-xLf`Tz8x z1n;;SaG~(FrW&Pdl~enmWGLN+l{!&rSNPC>2D$nnQ<*%ot69a`Aa_ZFfsYV#8Nx{r z%A6rSaKMywbgh!&|3gXt!56IsdmzI<#4Vt>P~k_0AC3cmvZZ8TZ}CxAP5YPJ`EN>b zgcG2Ds<9B9XyQ@F2C?w}Ui>6vp(wZhYx4Y~^n(zC>a>6rl#;d%!jy&~LTv~t{2)bi zFnAiDn)tKY3@1T9N}p@0&3~zU<|{<~ZLNafi~gyog}EZE^6UVBHiv^CRK$RTAXK4k z3jcw0^D4-Q5a0;~((`%G=08A<2{Iy7c+8l!j111$J&41CTqqrvuO0%a--^pXU5|NV@I57@CfIoK6cUy;U2wQ(tpb--k1mhM)CM$cG3X^p`UEze5UU&yC_K+779psLK-0f}nsR$ck!2n$iMD zUXb!*p(1)*g_W1DcxR!vt3BnZ!NFa!`fVvh|VbND79M~hmk0rPKvts_kkwj+>1hL>+; zw#X>LnFNpx2g^TwCODrTKC|c3(5O#90Xl|(Y8+BhI5I?`t(EwX(-f2mp~LQ*Z{YYW zFqTmNjDkw;zd3mO-$48y>xOoKp+ZU;OGQM@{<8zOgx>z!M^d(JJ7Nb`>3Y;f< zjyXM5#Y^Ujlmv)#xQpT`9Y-0p@;b{HcEBg~k%RHj`&L{lX_h?Md0dyA)ZD|YFM9}X z%;NJ~?UR}$W*$*wY{@8aD4ml!g8vu^lf}ErD%s5f9N#T?sMgH!O`ZTUtHip>hS+Tv z=1ZHa4mo$`HBM^{r6(;G`@9;ox4GdTZ7X1%XOxpDCpmsqtT1+#oP2i9%cko?j`_po zao1Oy?Cg*D*GW0^W-_VFjtYx+6US`n(!__Tz}qytiHo*OSdUlAm5!G6aCzFVjF|b{~X4GVL36G{U@bq7Lfq{7y8M^)f zA9KHb9JyPrhTe_#?eM(5c_VvStqPG2k(vIR5I5RxbL?8H#HQmu9@U~pX>hmf^F>O7 zo2o6caL=BBD^ffXV8THn@IJ@WqjmZr`{C*hr}<1jPZk!PIigZPOn$ycthL}!^{i{g zfPIEQ#P~a2SFt=s^@ro^Dowsz%HLcw2JP+MbM_6`+x;=bk~@fdWu?&1RQX3zf}Jbx zhRm;ak_zd8>;P+yo)qfxL__QY(6ppkXv~J{j)r^yA#12jg51nY zCY{9)`KMfYU4^;fT4bi;^^vKP$v^7wW`UcWIW9oz?j=1W{0hZHwD_^fYd|+fDiHZs zg6nc#l{Iah=ywl9qB90Mm{e+TK-*iYN<~a!PZq?u;Qn5hjJ_)`HH_ z191Jrw04>s4b&VBG!Uro=}EQ3C8)NgJ5CNtx~z1;Uj|$OJGQc%*0wUoNXNRTB%WTq zKwgdCHksktf(UEIBdy4~<#QF6L$#Maj9bZHY*!7q@lAwPKsPzRXWmMFQ&0eTvR3!Z zxr)GH`)TUgXP)wJ5>RyKA@hQh-NR@lJ;^^r)MyD^2Q-+y)A_tnOf5 zuFW^L1n69(=-tJTwn-{XL5oEFHgCq*lu5Cn>%-X{M4NO>I=DKYHN7ruE>=jpa>vFq z)S!-Zluhe_5{qf=l1~lM&Zwlr67*+nZN@(u)7hCCx+Z;VdQ@09U25n`s?tCoz3pN~ zDDDf_WSI{4{gP9@MH&afr5HT2PKI!OFb`8;9i9-bd=|LNc6aYlwI>D8^X&HLG7t15 zEwPKY;l8SV+msGv@9By+9s4SmnBPe6-@4D0mpU_Wa!Vn|pnG;4HDXX>ZiGmO+e|-( zWAhC!-EL~Pthd3cl5ig*zPV7Ny@HO9JcYr-EHunpIov!_3pANSztD?ep?z!zM&$FT) z;}g)cW2VHArJPgeBxP?Pd)J<5zk_1pJmXF83+pB+QDcc=yy^Iab!)+#u^z_Uy*sh9 zEE4o5@OuNW(VC`?LaAexc`#>sp7p3&n^Oe8KY-akciW8@PgNbKo34j#(Ko-DJdy<+ zpZIQ;d8n$ixM!UWIoQ|s(1gDC!NmSbr|IPDAPuL_@toI-G&mGe=D!|l1|e}5X)o#0 zg8&O#JlKtkKql$V!gI^0j7dY+qGICt{pQEUF1ET_E=9b?*%6r^ zF=IVJTijC|d~&)AHD1s_gD)1Y?haqnwsl%`(!4~YdNMCkgi@8g<@dzh;xu)j3=LxU z*~!SpE%xQkK5pXV;@}e+$_#baPH2#6d8GwrJ`~HNAJ^$D)NKhV?&%)T_aUdE2HQ8s z%V+0-e#|=tW<62gh_+)`qupVyh3UOsxbo%_pSqfEO>}MN0;HgE_FYBA%@Y~UL{aGeh07J-Me-E53Y=elOQ z%9SKqOctG6^ukO>i$qs?t)cJvneFpqW;qZ91fd|H*{>}i;$s);Vzig6U!canQQ+NH zr}Nx#BBjfcCRoG9zfR{QH-CKqIcn-3whSYS38bfl#(jM+VP%g~Cm0Vadq}B$oJP+T zw<~?rxzA55dBQ{LV#xI%OPZ(pCHyBmPRS?pp73bZPU30B8{H+_kYsE?G{9RVZs;iy zMaJS!(#o`lNTbPN>qnhpzG?cWMK?KVpD^u_-Ccx756b&C4)Au)rLzz4PSC`%4e*Y6 zYaaio)6Ewd^t9-`?!yO9i{5e$`0d*x%h2_9-yVb9SYdeEy;xyR9ua0!DjxiEHWhPq zElU}Ou21{+5NUax0mAHje_m}(iE$>;93spr4H49P?!^xJ`S_;~_hj!@lJDc%bH0pf z*S4h&_3CR0`$fY|y%N3L<*wpWRdtojwN3ZG^m1Q_G_{L+_1u^#`es3d#zmM^G?pp;P0}dwrK6St5tJ@8+UkRY&d#($*^E4_w3pEZymCm5%vR1e zvS9LKDzENW2i2Ty`J?XCM7X@^C!d}GcJh*-a9f(ELG1cNamA0_ zS($l$u}&*vDJO!6yPikxcCw{;Rvt92cZoqD#ksRK)9DmfYsdWnc3DqObv;HE-yIs| zI~|4jj%u73b`s+|Z6>xjK3=@poRws5y!iM#KGiYQdPecJ%j@3lnD8ar%Wj#0bXzG| z?#Kzy?~^4B*d=`2S9tV_4kK!;)45BtHyQqS%;Mu6e3@HdR9Pm^ao-(L>)&K5z8Tvg zRHpy3duJ#m8e7c<4;VJIGVvYN^16l15F>*bv2U5U&#;;{OqarcBn^PToz3X#$<7m$ zatWn*?7p0$;Cr%2JdvAkz0wH@ORw!$`}4DlHw&`f`@kw2r*k_CJ^tdu&3E}hpNw%3 z%-G^4#CLQ%%aRb^`ctoxu3vUze((YHgw9;Qyz$AoYLk*H!Cs!bUMu;YEM7E>pm}`! z@a2+@z*liJ*sw%B)TM1&q;~g}Q3F?-dAlz2$JS=^m+(V1UeEeM!Pl6lAofKC;O&9njH_ zpt%(X-?v85Qgc%T62BZ3FIA6Yv!B>LEPspnxovas`eTB#!}9B% zTy{nG`dRqI9ZUzLta462^5ny=*6Eu2|2*rfP;mN@ch)=SXMYAezqp=yhxA-I{S4=( zmzK@5<+~1?tK5$@4$na2tVhydnDOJ&tbG=W=_d=~W=z_+FYNzARp`s@;PvLLw##$! z>oNmHHlHUgHrGCQVL#2t{#J^F9iF;lyAyWY@O=wU*zuP0o_6YKCY4dymaC7)XilI(Q>i71yD%ADy_MT}Ixu)W$f#WY z7NjVdpKni&kn&IORoj0z!-v}RaiGmk9{kZw5IUElISmmt*K_h)LIhN+Zd^m+nfJ7Q z_UHB+448OEKs+)fL>Zi$yu;QTsgmyCi!(vj=WwOiDcYO_Vk>>7z5irMi3NyCzTgvI z)0s!!TLzHCOct<)&ye%8OD}m=YR(bqq{jaFdGBXEm0K?(&UT64!A)2=3{W<`b2Dt0 z?>!PWW}Mjv|CbC^l$Y*Trm(TC8YgxTqek{#)F6p+C8;Sk-@t_B=a!z*-T{|*LC zdH#-YF_8$EXzMegt#Rj~E&NXrq;JMX(5UW2(yg5bJ|R58TVe;R16o=*r~L84Z<<{tDq=?A7yLqKUo}xt};kaic@+T^TF%SX&jsd08L%0u1I}!fFLNX zk7{bW&S~hO2bPBo^wmx#W+$O83+|xQ1l)|iQ!Q(%Yw&tA)=9vMC+EA#GF8&I!Jnj3 zPBZy?bzXY*hsKG+8#y<1(ufgrZfdU}(n1dmgaCdvMru1k^>;E<83Sg(daCWG8Qo6+ zli`D(U@GO}#vKro4Ft^O`q&Oc9qrgp8GuWD&&kaSxREmqO4#wfZpjCFnl1Cp)y{Ve zEP3KmNmXu1X@nfZCxO|7MngoXzNWTGUv0m|-5B-#JGMK?WSr(;?iI@hIhC~7aBiX& zZ)!Jrc2Y)hoh9cT=F2Br6L)xn!eyL(6xY~f^6bx3eB8tGkK-~g0KASpBffDu_T*WO z;~AWHo_xF>{b~P>ozzVL(U(d#y68!E(uv5Ur^>SwzwY2J!(AT)AR*(GaO=?rW&y) z5xSH+CNkQe;%;w(S_JF$oo=+nJ8K|G+>n_%vbk_;XP7=|;a2cC=WauqZI4G41HBcL za?h8;y-9GmH~A52h6ZuSgrVeuRV=XTg`2`^^&-}WMWS27)>0bAL}{hZ-M!H;8{ZL0a2Vi~6B_0p`X0JZhGL4Yf2StM%Tl1rVx$$tN%stjX&uGC7R6D-^X5o@m zVEMCnQDjyVHQNOh0gV`}p5jFZJeVi5pdtV&1$gRyUZHY4FqWNFaxaON zdC(84f2p>|U&wVG%+v(l6G$+gp>E;_u8)Lrm22IP8Fg);U}I)16)C?#LYu_uU|BS7X9YODxNv zdaYa-0@CK=rMK>}XV5by9}vrathbxSjv6v;*^Y9*vaeIQ!W$~mc1#*tLFUKrb zV43dgkXqQDLmCsHx-%-3c6|K6gf$2j4agfGe>pf~(U#3>i3&mWxv1VUoy$lr;MqlY z2uV@l6DqNwLdzde=0f+V&|=;hg(@u+>;gNZt2m(0!gEE)HMf&32udm0SbZq|&Av*g z75PD}NX6u^M1+)6$ zhrdAY+y5W{miq<0Yie%@y%DE=qW1^2cM*CK8Gv5Yhp2s+Vf34#5G27}_L}hb{C*18 zywkZ5)v=iTuYp|uNIHmBv)JTONv;zLbFRW8%SbUxP^r+I|IB!kZ(&^!WpowOe=EDy z!qO?2)d<()ezS`j6H?%rb zEs)eBqN_4_co24fBU-RzS76r(Rn6em0t5%7W;aE5oasSDy`VrK6)U*;LUxGIkW?SY zyCJtz2o>3~S{H#l%r4-MA@ZVHY@LNRVE+X1v_ti2>Oy7x!i zi-uxb!*nlJI0S-Ca1*Ie&%AV%+)TfUUU7I`l07~^Wq2=$73=e&Q-p@sN7N{pBs$~Z z*)^ig`=-oH#hE|si}b_Fvl4AV09yny?+C@`Gj~DRU`jyz8@;RKwk6m1opFGQW>ufV zZPk{O{BJzO?wtGPs4_8?+dU~>UN;$7GrJFzOrnh{S96vpdKB3Jbj1fa=Cj*+q|&0n zmU)CLY+`eI?ocbG2rbJY@Au!fRf|2Yv09R19#jZq2R=4;aRAA{?MnJw#_&VDMTHnJc zxx+jBwiB!Hs7vg=3w4`sW`B;6VLua74&6oT%IlVJ9vkRPKOc}~M3aU)OQ18yo0^<> zBMQoX=wRj^7aw&xxu{AeYpB4o33#fsr1fnxpx6LKV}930bA7J|l}tn+V?Cl*UEY04 z=t*k<)`(Vw#&^>ozMmjtUjqtPxx=(oOhh1KBcfN6-p!uSg=t$yF8kpf@WgaG50r~D zypRPJ#Vl|ux0(zZ7p|V`anOK=Kj$^P-u&aPmwnrwGpkq}%nLPlU5|W9IBGoPr20QGoF^n%`@yk$9|* zJQB_lP*+x~<8uWZ==7}I}BoR0_ zevvA3u)e6Vq=y>upmp%tW0UB${cJI{SE`{ZPZvo9zOA-juy1F^c0c6}kXWEm*^iAZ z>1^$rFskgz5k39r=Wc8pOZ1haP)d`iE4Ga|&o@s2lT4`*av-y)Hn^G559L_GzJLMZ1YKY{Ux`^UlU?vDXK@>xS9W}}odjyn_ zRjUzP2L>2XWEljcj%8l-k&Qh9?hPaIFc4YlU?Gj3{G$m5=6*uBncV<5LX@IwjX_JO z)xbYUc(*F$GuVRmenhT69D865M6Ul|tuS4r^#mL)35sk3GyDV-Hw%b6s>KAETY`kC zF_!@d2A_Zs3{R@PRQd+eV>Z z&+B(oJ0SR7qjJOlUjumI7XTxLyAA*bMJNIjAt-YFS_TK`xjUE$5Kvd9jGt^Q zZPGq@=<|>1gU0pY5p6+0#}rblqCMU(FnvFP6dgRWpRz-rcviVF$TssL4yJ;}p+>iL zC`1n+Vj+<#h<{Pg0|-{6!Vrx1AK5g7U@#j9!9Q#oLNLM-Aedm&P|(v1CYV4Y-pKMx zy~!zAFc)Bgfh;q9FFHTv8@s9CPn`=E?X02qQ*Qp!S^&dDN6J;uICgz)fK00K!O@`dB5g6H*lB0EEHKAqb-YC=XLY zXHY^6!e}tE4Fn(`#MPUu&li~p@PEsvp|%O#DZe$}O?@lbe=%l*nNag~-2)S!@3~km z`*rm_H!(?aQ9FXx4>&DM0Hy(?OLi%Qs1Wc-hNFw;{gQkWpgX zV#r==aj1wL?=M~B6X`TJ23!uzrlgTGGDP-@wMt4ZP!uqFoF{?me-|7Ga70+Q4@oaN z?-p4wBiy7`5m!qTkCr`7BZnJD%je}L5mA+g?JFB}L>V-d77WCFM}y6_B}xV{@0+F(CxmlvD>~ege|(bG)c)wyuM7 zO`M@SCVlt2Hq<;(wCnNBO&(oTFrsd{7rT}kGMbd7Ha|ajqpH>@wRPrXu(6$^r)<#h z@Gb(qfFqzcG!D@lETacJm`~-x(7aYnAD|Zu44slerZnF<$C<}tQ%{Qx8A&0GrdOJ& zcCZKniu>S$0Y5eY^koAy%7@{FFo1(zsTb-c;~URTbeDFek#{HBYjviP-vJ*fu>je= z%XkyejTi^JSkBq6u^s z1X@9Ph)$_jm<@DR&m9tMI;HfCoNGY3O-s;PS%X#l4_RMZBkL9u2?1oqQ)~6AQ5don z3qu63Fa+d|R92c0hU~?{5V%4Z;!X%dU@)lc_iIx~tB_y#mH^oxT9Y$Ex?9p{i_g_W z__7ITsKsCyVZAE&z&K+`1fv9PN1DJTB1i+d0BHh5z|u51Q!Gi>(@ChKtFuy0voZ_hU0k!(j0bHSQ63}p$9{ekQSx^0w8ap zS2BRS1;HVx8RhrLoP!#!n)6Bu%$)x!XM#EZjt$J51E`QW$FPCSxySVierg8Lwuk=d z#fAbm~sqe8=tcLW2c0^60VWnEut_LVoDq#$0L024MaY19}eGclchy zw=T%gKys)lgpxy>CX^ihFm?h-%@(he)OrgM3eE_zh(~l}8X^_EvAcm_;*bhfnk(K% zFo0ZF@WIeWOwL(@Rwc7stf&3KB}Em!9M~CWcr~ zeD>EakYCVa(Yih}eC-YO6`s+VZ_95ky0?(4FHXFZ^rSM2SJFFL=)Gm9HHRu)88W64D9sO1D#=dMCUqM>IpyT9Tfs*6*)TKJ zoWk$xjomD@MrYfewQdWLoj&4kt}FPm#>_+UhJ>_-*n@oIv(b}AWND|IMss6R_~<|P zi5c*uo^mSXB;rDiFPUfnO^ANX{6qGPwBjc5i5>O50+w%~P}nVCiN&HH_NqWE`gjBW zIpiVzcOhAgek>hz)X&kK%oh9vYM|>4O>XPsw;ZHv<0Q%k;#BR=d%;I!L5SFDjM%_b zFGL?bF$}=$*VmlaIUTie`2;@!kK%n0F_}j1fl*{`p#g9`ejGV&Vb$HMkb3yXsj8&7kr_bkbgISIcFMI)aj*T|Ab)2UI1cvfO*DFR! z3}p{Q|_i=PLjVJ<4BTL++Gx-~iSLTDV6Pg>QJaaK)jRpK@4 zs|!u8(u&j+ni%0MYRGZb@>o4<2qbS>L z!257hW?`UMMd^5x*PS7|BqUnu`7jK^G$yMgtP zd)O5TBVwjpwi4vV^U?WSdc;L;saT!ECH5x^CJu5ImwZ($GV#`bQZRCG@cIH}S~RVC z)E-Y+9_?YphYT6EY|Lgz#d+wHx_M)2asIlb0(5!CnW?XK`)OGt6`z`TBhIxGHM&ZT zrcyg9u8Pv<4IveuN<}JOizBEw^chU1*5WV~hX$xP3_vO#8p)nP6|K)DcIVAEMHxaa zB!dN3+fmWakoh*23wdIJ6?0(hNtS4@&2V^DWe5!@v8Uqwd#-vkW~$Nw6%PZ;6&|#1 zfV!&QRBBgPninGdsqqsay$cX+-vo74*_hDe;VUnIbV525x~J^(F(LaVI}Jg-m{9a# zE^1f?HTCQF@j2Y{(-K1QD>P92s#eYk@hdQJ=N#H2^l2H84&Rxf#_0BFefTH>J}6Ax zh3fvei?;TXooNZ(dyuNBZ9!Ou(V+fR=4weu5ux~^4~l3|EU^6+a`{NMvVO8WqEK7~ z0zX&ZFzaHX%Nv5qA13NOlt|RzL4gzGL8}q1L ?kalw>%etIsi&4ua}qso=jV>TVyPWEa%WzD|H1zsGX3wAwAy>&SIBa$)B z(*ychEfz9MUs2oT)cohz&>jn1#RB|Bs~=j7SK-0+gjh|$?_dwd8CbD4S?;OhijqtY zK2_0qc0fNbiYKTIR!{DWeKRVNcd$V{#1DQG8dwhJudqGQ7>(8M&w<&~WJ$Brsv8&W zBL|(9cCIVHmrv&}d*9R^CH!iRURp-uwFBA~mJV-Uvgg5u57{ri>s@(=Iu`Mx1z!CP zU9-+BO2w15-bO>Cg$46d6K4dqw1}LRfTEV{3Fk?SA6WuFl1~WyO+1;x7;x-C{WXd6 zv%uc8MZPlOae35NOk$q*u{TWWPXNK%4GUMo7e_!W;*yC@z-Sge)z}d+%zzu2ZIhWA z{Kh}k3d`8r0Hw`a3m9;7r$eW5k3AdjT&qYM}px zt+MeQr|R48xWKOD?M~!sn=zQ{sSlowK+<3I{k}Qdr!i(0j}53sYlYyrI7i{v+2nIU zvP7Pv=1Ag#vKa2Z>5uI>EP;CrD`Ni3Uv+QxBi!%>WS^QTK?@;X~ZZx zwMBF^=pJ5iGIiIk2`&E)IrN**Fj@Bnhz|iKN--wx(YMVS%uPGe&SU!+IJ|&|eHx#D zxtgQc{b zT^BzW@0%WFYm>j_XnD?-N0|Cz>OCJMZG68^~ zXCmJ)Al`q0Ntfj`0*@}0s4yonF36$&|*lf+86DSTHQ<|s1-~? zYPF#{8B?ouh6J@**N0h)ZJCp{(`C<92h*zNY*wafRu;8a%A!}A-PLxj%xW2Ru%2MrE$i`({^|AjSw;FIBV7xT55f` zh6PbNyR$m-ONJ(ElGwOEvDl)J$%jj~RxOM)*SQ4O@h@*UJ4z2eyN2#7-f(pgaUC;K zFWhrE-9ZDcboLsB+vr;Go(h@Lip6l1Vy`tTWo_AOGU^Lm#UE%x%{(|d4AEHT>P)vS zmScgz@6z2w1#fmzj@(sEx=wPq|B)<%If+gGMsJwWg5Mr$=1P~*0FNnFPWvd##kcya zU0mu}Npe%^?faMw)a;hQZx1ok4VeJas^?yqs}}mH&1mLOj`)r~LYyVTy-DTiZ0ug6 znbPFLX}5Hs$zTD|l>eeB#OxN?Wq(A*)OvWS6mjq%VgP%$2ZxOuP;3833Cv*YL@fDv z83BEsZJ$<2jyuDG*ni?So9QN6JUpH0MlYC|2b6ovh00zij5f^i(~V)jE}tn7$>RGa zthCbNK=b{vJCBD7h$ARRD$9N1XD^*8q%KuajiAiu)$$Nx)d-KSK93rDLk=nXJE{*( z>!}t}zgH+q0wV1e95h_wX9p?s|IC+c3Le|kIfHkF{fZOVKKd@njpwf6H@H${#4>KI z?$p`84Mg$bQOZ~1n`xdjif)c`v(&7Pw*Wh^q15kvKERTel!Tcd_VhErdY8Et1V>Hf zGmrY^>ZfpaY_TNHmSb&sT=S$Fri{von)IDx+g~>N?ztO}@8|@g*43Yq2(gmN_yrhK zvlc4g?%2}ha9@eU#^8lCVq{}0#)xHayLclE8Mja6>>%TMrUNv1HucsRx@f}9mAU?1 zu*`?@VW;J<79bK&FI#eJpjHfL!>aMPRDqZ%2e{UvLw(AR1P*j;nfk+C1{zv_CdUCE zV-ZLa+DsMjHdx;&oqQ`ADsnPFer~s1TbQ1zsFQJU}R^uzOYkDV`u6C!G1k;FQ<<(t04GW7V zj_$kdtT;JJ;d-6K<#pFkL|_KeO!fp#lEb}E6{F@u`ANDK9&3_N_x43rJ$Dm@-GE21 z8vqAi#vovWmVZXPF&H$*K9#G3%>pg3zOdPg9o~(`(v43!?SIV zKtVmC{;WxHqn|p`C;%_=$jqy06C6RSWhBCJmpBa>635ps#Rg^s2}F)l)hkyE z_A)VCK2nFa0=fWL^r#V#ik^$0E}a@WTzKi$UZxP}u}=*a*mhCA=zO)MXOnWbqDPp! zO!ba97Q-3EYRmpjJ8#WMRWo`Y&1he>lv zUJnN-dbsZiY@0V`v}ZFEk?~W6{>(g?YC$722lTXNVA5(-lVmipin?E+yctQ6sy@k$ zUVtO$@xv_Md`1A0Zv9We+msH1qHU>D<90Y`$i0=8z9JkcHJHu`BtD`;Ga9cRX8oxs zy``rT^ch%wTrE><(YxL*#1z>gEtqvT)E(@j(a8(CM{a=rUZ~b!Vq*>wp!RG7#>gUN zWMIsPJskI;hmIB(PP%QvdLOLNdg~~xrqavb7&4YN{cXL|e!FJLVZKt83-A-J*mv$) zK#!tf$kK-y6$f9Ca1MGn%K;Bh0b0;d_eWb`gvbqwitsI6(|Rkh;-sLt@I%DcOrRPh zXldbq-6JZ%0xhdJunFE}lx4=~UW%Tfv0Q%#s1d(;6sXtw^YO!h5ARI9f!il7B^J-6 zqlb%*cSA$A6b6~YQUfRZKnyo-*($$!_|5jUg!UsIR?~%8@e08BFf1p1+0Ej)0M6M6 z`bt4ZTcc+<(uPi@yL{30ZFmeLIBujGZtJPMqeFJ|$eHlyujN3}R*?2e9fNBW_I@d| zvelRAGNYG?;bvhzMFur4d`mZh#Zw^ey1i#BWquX+HfAJxqdyQ&r&!PsVD1As z8!Gx7c7AEc3(bd(UOCoap&fEAvNGYaROYg5>arZ| zvK+cH-L}%xFtlODJh=M2zIIA-yy6V=LP%rMyXa+zu4Xc-j@}d3aba8>Zd(bJTuK+< zNNu@M7Cr&D+u~l03iKbE<9fL~)%-wPFT8KIJ$ZR9z-6I%y|!*!{D(txgOba!1uNGN zC8szp&d@CuwJr7)%)hdv?pU{I;`Xh^WjdB|aEf6hqc78$@6?g2r>-Q_oTm#eop6)m zIuI=GRgtzUxRf&3kn4b7PgKptv&y@YN3Y$LefEmH@#5J74isu=*!7e|nqVTTV7T@T zTQ$2`!UFTg&rV$#+LFF2xFTOWOUqU8fS%3tQ5%oHW*Ktm$R|QAs&v~gr?6!zgr1~k-loTiVT9g0r|~X$Ps-<=Etl5EXWyRf zsu$WD8Et)kx~W1%v|_>yI7p3*JDAiCf<+vRAPz)5D>_L{4o+&oTyd|2PErZA#n~jO zj@L0`eq;U}7|i?3sV8QU-0 zXP8pG;Z57pvv1QYo;|NRR%RM(P4y8dSBp+Wqqbn9(rz;XrH%iRnF9Zq>qkX^gu%36 zVCmm(jbmzj!x2~p%Z6!sha6}VM3S%A+R@J zc&Bc)>F~@tb@5@v|KP>>HEhh5*gZN<>7;PgPWfC{ttZK88xK;Af`)$zhLQB`KQRI@ zLod3SnAA>0b>Z{QMX`$j)sELJfOxnbRLO*GXeLmAVXY?$?UXAfUw)9UhFbQkmz;BY zqMWuo$?X8Li7T;wO2?^{MGNPRcfyshwd{WZYV<*uQkQLrN=A%Ia^`sSqD%3dneSxu ztv0#rSxP4v0NDWA;o3-TJpEdrsfH8}175L1gXJI+Nbq&ScH5z?x5m~G#n#w(-fEMi zKVE3Brtt9Q!L)O5#Ze_$r;-3KSJ@*{W%SF*+RnCv4;me~!U z9JD88T3P58NrF9lbJMT;!)=qQ1nl&{K6q8Yy8*6QLDv!3U{#!0sAv-#*feJG1E7%kQFEaXB zK}ulO5Oq=*UHXWwAh2r|?DRvfI~T{PEmKLvZsKAi7ycDTtrmj6K>Gn^8unw2Y=ia?nCr!u3qn$PC!zK(+C_>z;_Ze^$1irizgh$W z-DojElSzmo`Ni zlOmhlcSzZpPvy$PXK{ivBntS$TwuG#4_L13_Q(J_0Ov#!S@uuMLM9UD?4e`R&1GtV1*Ck)!$^qgA39Eu9MDGL5En>YDGi zv890XjNb#s^hXH7V% yYF5fxy|4`$Za1E`RQ|kn*&MhK_zj6bUTzqN!xDuoU(hZ zYy8tUgb$UYXy|(^h2k)kT}8Rqu#Lp5bN;3H*vRs~hIV-MoHaTYKJ*S-gbX}@+;_WK zD*lr;EGz>b1uR*=MbRNi0z`-D5ZJ9cUB&cC6xqG{8I-}^Kx9X+fJHXpeOQ#Ew^Mbj z{PHKOZ3kla-1=5w1MdH|(ArgIy8j{)b{`!)=52eZ1|VAe9v*;EhcG~>5kgn+xti~^ z6We}Sr5#%ZIRF-j2JOFu8+V~-<~wzNA46PRYth*NYbZFy0$Yp)ed53F?#w=jFz58j z=F4X*uEtG4E!xyO!Tpa})s|1Rj-w#`CRdd8eW$m(Ku?7JDqC>5DBRtEg}ax| zLAX1Nwr4Io4#kY66GDt_$w{@T@07%i((TCSJ}^Y$P>&2j%BWP&;FI-|x1vkxs)vQ? z%r=-b@NlO+EpixJ;2}fYG|slqYVStey~|Hxgd3CDwp}5T%S(*TPlrcWS`N*Lr#dg> zxh(g&EFE@PQdt?)cB#s}WUw#8&Cawd>D_2}oj@uB1ms!T;rM8v#NntuPUEYn-E^v;FiU2RSqZe6*XaJ?Y=h<=FhlDJ2jgL>!G?1S-m;d8xt19?OR zsy*5zFZjBzMr6&$3m+=&nwr&EI`{BEUAU{njcHZ$t6Oh;FicuLpd3uw{WUCW9w&Ur zQ+SVnnhR|#5#JVFgF&9IvyX%BiW+7=H@6Q=?yGEI+2S7LCeEspW+WW$d4^Jm%!Bw! zaeHKnx!9$BH@4wP7UFLTo6cHqVn}P~bUWn!_L_O&fwYZ-LOOoqms;5p_+8!hm>1GX z7y1iB&q>t7e#5MkDeGpe?KyO^(ZLDzAA8?332VnS6lFT@&?VJ~43NO*F$RLTYq)cdbJ5=gw6_HXQNGa4r zNiSW?}M~G$ae;dc{{MmCAbF;BHD&NF!6HU^69s@j*TH%XgHIa>Kn$p@I5k zV8&R%n1brwbuad*eSS1URP~R@cCZhbw=m?qaSTnVo;#hda6vcZQY&kM07F8K+aXwP zJfxA9QV35e3cSHX|28G6lDP(y!VL$qrGK08YNpIs&zTiQG zdil1OhcrGaHI+{M!$vNO@*Nrx*tk#}xO5c}m+{?xcf)Sikf>-YC z+}ljan9&FCGV$^of99A2vLUG-4rzp48xFZZSWfqNqn?7Xug6zwg@pf|6q!Ma8O20a z0G@^6EOp!lwZ1I%iVbRp01={8e_n=!TL}W;QiW`$UVeLZf-;IrZR3bitMx#Pb_&K@ zZ`{pgjjHtF8s~IUFa}HpTWz#o_bj#AjqJ9lgM#tN4f6VXZV{b4Fu1u`M$go1=hemM zLtL)_H8UY|x#Bk0?3f0{Y!u+C2+aLizrED;&|RxbTE<@5O@NLO-tYt#UyrNsxVL>B zE0ADUs0S~nBZfvB_{|I7IO9UFjiQct0kWv zd?R+(N-O6XT-nk#USk^E-1Uy`y+{zCJe5_*9qq+;21Rbb9{K4YWP(msr56)zk44Bd zfPLY#q_jZyltQb>4D&QraFin6b-RHn&}!q?KVKwFeo5@P1y?S(3II+vsL8?B{aGJg z$)p1qRy-QXvNEvM;aYNFJx4Cr&A-25Ve-n}f zgz3*#XYx=FkojGV8{c}j)ef129+8BCh%E;$bdyOH^5l{m#;RHZX%9I{kdt!s7GaLOI z&DK$kHCd&=J~E!IO1-$AE8b0Sd)TZgi#C%0+R%u$*D*ZxFaY1tbpJ3S`7YxnF!7Pz z8>x_YOBuj-+%jKY|BZTYcT{~QVx=Dw|9ws(AEr5Ep&0ecgC=HFe@TSRG#S5>7qOQw zfE6vl2`XPaoF3X^#%Ttn0PH1#J`0B81D_ZD1kJ+`F8s4;&}W*mDVNGCF$w|`%;t&~ zRG`ie2eVl!T!ZO9iosi$2Z?)|rOl?%dVKT6zj586MIH?wj38+2&h9kjG?UdraR8VQ z5d%IjV+>i2F4>a?fKj6Km>iaW%{n3~i5%}-+ZVX1F|h@_!e&^E%c-V7^qI--$Ik&i zy8$ks>;R0ABgOs)h7olK7kP`;D^VH>-M=z7DJ&P<=z}N&Au~=#yAa1B+jhd~9H| zH#?%`226EGI+*Zf&lALXtbOALLwhRw6)KPZ1;NC^*V>i=c-0xNN1S<&IFmmgs#c*a z%vh`s_!Yt+FtL`BZETD-R#OHWV_d@L=UazDpK!aUhf=5RY5WU^+(rN+n8`q&4L`i(+8rQVPzjvbH4Mg&KZ6MZcUU zfK?fyh!g6@cbl~grs282t3Bpxtc!zEuF>3pj6?9cvZ+X|D%cn#KE9BDZi*e3V7R4K zxfC+Icrzos<9+9|`!*HgBt1@_JHKOh)dDCzFbyyxX)NC^UL!0PubKjOfX$Nf__@)8{p4)3+CAAR=)F_48pP8_M=Ntp8jjdW|(j zxX&Rp9nFndiQ-FPeadhM$Q_kSF(6B;Fd!v<8<6O%Wm2&IY&@b#OBBsXj^d|`Km8YG zEF^sP;8&l`e-^9tJ2Q?BY(5+TC0zo@%P$eKm;cE=Mk(JNRWmNyM|K)J*=e6vg40Ut z4}b;RYy=@rUW#DZCOHE~A?U!h6v3?|j1w|Df#MA_&sLbOu|`b$#b>}MamEL|$ZL#p z!_K|)={hq~{#x>!DJT4+1fhV8c$uZ*s` zvinv(SsK?##>dbIKq$WWt7=fWuBXs!#ULlm1|-ZpTLEc&1rpnav<76|NTGQy@_CIl zBNXjApWQ$wrHvV(-T+vc@SbFp;*qzvqvr+6w-}%-kcj@k-v*?lF(Xjd-Bmth6oG&Q z2!epTo{}$Hy=)5|V22#R9a$i<)u6|*1LXRt&PW^IfTG<34_->ips59dK%H88I6W9f z(@+2_07D?K)UD6}U4w1^f{)M%lrXNj;;;tj3M%qx11h3dw7Y5zl$qbC_Lzp=V;>r! zFX%?f-?ag_8u*tL^Ouo~SG1@eQESsK&XsxW4&H&;ZKJj0QIp$VO&_7@F62 z`-asLpneWe3|zXge!6sr!gvk3QZHyQsG$!~gH92$QVc1NI1EJ6w-$ts zXp0#${*u>Vil6ctOy>jTdd7_r1c*fZwOETjex3~54wF$^10Be1>_9d-D*y`)D+obe!n|aMuHlt79#hCmj?bH#zi1{RlZl8-{tqM4J&e1o zZ`Bg)WT=tp3{n6{&;Tn3U4Lp9Q9Y>HGtu*R>YWPXPIFkI1dU<|Cxqa13apU51%dKk zTT{~5>Tf#^h{`#Y6nhYeN}NITVkC!=((|JTCuxv@G|=9Fv8QPdQM;cj0}QY{KWl?U zQsAA}dcD|sN2^inX|DDI#fPv&3d>N5pLu?wS~&9(%UZD*^);H>g5EcoR!fRD)5@I& z+IO1;TBU_>9E9@dk)*RDF(|-~esjQ9PdcZCeVsi*=ePJ8%{Rjq0W!j>{rcrvM{TgAoM= zDWIA0f7Y}*Tf{U=^Xr6%}V`a$3!>+9Yc=&U9N921?NVKh&^QgTN=RX_Hm?qB| zXW`&fktdrPxK#Nc>~K8$ygrAxU~FgOPgDxwfz=hnK;U_Q$Ta`$_{J$_yeTTo9%kJ;D|tM zT&4$b34Y9JVUOafj)lshc_?#<-Xs?`TI12fc*6B5)0J5MEUO;0|*;nvR!To~lPu=C`}6%S{N zkC=9xxtX`J`PAgI#);QkCYuTw@~Fmi8yG+F$$l`JDm{36e!E;%-k?#Iw{T3HD`1;2! z^4HybW%4>e{sQSDMysjihi+31Zd!QU&|CPO%l@AHNx3JA%H3`$o=a_(T$$wRZ1fS{ zP*gZ%~UQ&8}rz8kKB7R=G07eDZnC|mTqugN>AfOj^}T43KCKjscBBGN=Vta zs_0T8X^+bYg}=2##8s}ctpF#uC`FQ1T^HW)onK_4RmI9Eb?}r z%7uRyp7-vPHXQ9mqm=MXJs>6ctYL3yodB1%x{h(|j)VxX~X1>f|gXJ56$ak-=4rm|A9u5SW9X_#3UN9|D(l%bO;U@V1sagJ)e zD#7Ayj?0&S&7bVN6z&_??AT~iGc5X+9yQ%f)-+c5VdBEE;V*=R_evL84NeARDtTM` zmyzf`=jVFH-Y86ooBG z3u~Dii&V#?z}4(IyN$gUx5~=Xi3U-_487&JYM-97*N!0g%UCT7uz0VM%ShM0DnTwn zM1>HFP~Qk5z?UdG_yUf~pszgFv^X!1U5UqNIUaWIcr1v4J0p(%faM?vH7RXQOWCTL za(rLa%E_1!kQ_sgnuQb=L@;;xz};k?sh8=UtNBA zzoJv9!mEp`+DkQybbW5gsIC<4!YS2&#hGbLyc~@B`)@^_k%QakVmTsxIXCYJQe$!S zTkz7}I97K2PPa&m!QP`zp?d=!7Q@Vr1iV>Y1Rn)huC24y;$OdB|4AcRT1*hX4$4gB zqsdHL2f4Tsg{s0nVuC)jgXmk{o7C;Wzg6DdB3|rMns?}Al+T!EVj`B!igVVwwhl5s z5r0&itL*PhN^68yt@<6c2>(hI0Gw%a_&SC$qPX*B?GtxQ|z4f z7J|=j@@HZWQrGLz_KB{B&)$SyVFR#M@iWn{rJ8=*L6AzgkLFz>1z{Iq0VwF?r7t9< zoT|v23a&3Nx-#k?;u10RC((7yar zniYIqOK2{C+d)_Gq4B=ryYLu58W`W5-j$UWoVhioUT>G&?TT)Z+l$TlIxacJlV@&K zbSJhszJ+CJ9 zp2%(XqahF=yh*8PDf>!P5Qa`d!~}d*R=GF$$xjsxK`-M+z%p+*~CDB)>tgd0VT^1}GFr zWfsSC5HU?VIZqAsu`7c>vRL}Khcc@7WVC9)n~XwTrOUn=Nx??$Ee>(C5d4PzHTb9b zcZKT<&BO`}870~J=iYuoUWQt1J|umL?Vl3&Db@VhEp0 zI#`M#PB<<{AI_8|atgw`Jt76K{(}^ZZ2(J?Lo_eg)q-Zjj-Wb-lUCW`Qq9>MbhDrV z{LF9))s$_*yXJgw7h=@SLjN7q!J?eBi?vW3dP>&=*=Y=q!Rp{-A&6D5Tf{s2VNX`t zA}9|%rJ9h0*PKEXxjNwna-0&GS3JvBeJj2GPSH#LWRFOc>^NWs6v4`HGl0;J()C|y zLO^K;F^+pqp&I0wc`(D74tR~CF7L;sLOEaN!ctJ_>-DhgqV#v|?jXwaaBH~a?Z`9m zu-OuI={LUgfT8bXUJ0Ps^`K%q$e=_SQ2%hgLI~#ls(0k1`QJGd-JrM2ftT-F>1LbS z-D4<1JrPz#X3>bt>iD1xgPLI!8_)n^?Zw)DXb33U3Swz4yTbC<25@#%3#$)3c<$=YLN zMNGP~(wGi7t|BZuN1~!Z6evndpDI28uJ$JE|1vMw#ez-w3|Q)lB~yE-n*|%hsl5f8 z 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

Lk^y-J&Nmu_;$@!l)}WW2)}>p!j_ldnIiOszM$e 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≪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

dGAz|hZd$hYC~jyvvQq8T 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%0AW&7b`?64OudS7K3 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 literal 427758 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

JWtxKqsr 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%0A&;%pB7dXE1)JLkDM3>W^EYYRXls(MsH-%Tv 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 z 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%0Dj0VK*O^^cUYN)ire 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 YzE(e=j~$0Pkr4cCKMHP(c>)dpA20bQ=l}o! diff --git a/src/test/resources/com/conveyal/datatools/bart_old.zip b/src/test/resources/com/conveyal/datatools/bart_old.zip index 6f4af8fcdaf5e0ceeffe360f1049faf336eacedd..191c3d2fc9e7b147ad9040ac7e5a97feadd63f4e 100644 GIT binary patch literal 456486 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%0A>5VG22Po7a2-~ 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 qRDn>QsU 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�iltc( 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

mdB%fYa+us(>Nz86`Enuy)~q1c{fLW=%CTP1$5< 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 literal 382464 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

N4zEv0Zeq7#sLs=m|K}mli@pGpZzil-R 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%0Dc%~CIV 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 From b8617fd6930f2b89a2e5a1561bd2636a1117a661 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 3 Jun 2019 16:38:31 -0400 Subject: [PATCH 71/83] test(GisExportJobTest): refactor CRS assertion --- .../datatools/manager/jobs/GisExportJobTest.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java index 69d45f69f..aefbf51d2 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/GisExportJobTest.java @@ -93,8 +93,7 @@ public void canExportStops () throws IOException { assertThat(gisExportJob.status.error, equalTo(false)); File[] files = getFilesFromZippedShapefile(zipFile); FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); - CoordinateReferenceSystem crs = getCRSFromShapefiles(files); - assertThat("Coordinate reference system is not null.", crs, notNullValue()); + assertCrsIsNotNull(files); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { @@ -127,6 +126,12 @@ public void canExportStops () throws IOException { assertThat(featureCount, equalTo(calTrainVersion.feedLoadResult.stops.rowCount)); } + /** Get CRS from unzipped shapefile set of files and ensure it's not null. */ + private void assertCrsIsNotNull(File[] files) throws IOException { + CoordinateReferenceSystem crs = getCRSFromShapefiles(files); + assertThat("Coordinate reference system is not null.", crs, notNullValue()); + } + /** * Ensures that a shapefile containing route (pattern) features for a feed version can be * exported and contains geometry for each pattern. @@ -142,8 +147,7 @@ public void canExportRoutes () throws IOException, SQLException { assertThat(gisExportJob.status.error, equalTo(false)); File[] files = getFilesFromZippedShapefile(zipFile); FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); - CoordinateReferenceSystem crs = getCRSFromShapefiles(files); - assertThat("Coordinate reference system is not null.", crs, notNullValue()); + assertCrsIsNotNull(files); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { @@ -201,8 +205,7 @@ public void canExportRoutesFromPatternStops() throws IOException, SQLException { assertThat(gisExportJob.status.error, equalTo(false)); File[] files = getFilesFromZippedShapefile(zipFile); FeatureCollection collection = getFeatureCollectionFromZippedShapefile(files); - CoordinateReferenceSystem crs = getCRSFromShapefiles(files); - assertThat("Coordinate reference system is not null.", crs, notNullValue()); + assertCrsIsNotNull(files); // Iterate over features. int featureCount = 0; try (FeatureIterator iterator = collection.features()) { From 1169a5a54edb7e45a8780f80bdbd190436de7ba5 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Tue, 4 Jun 2019 08:01:10 -0400 Subject: [PATCH 72/83] chore(pom): bump gtfs-lib to 4.3.6 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 13e04f230..a37fbe65a 100644 --- a/pom.xml +++ b/pom.xml @@ -261,7 +261,7 @@ com.conveyal gtfs-lib - 4.3.5 + 4.3.6 From 47edfe4a3156d7814b13548340dd2257da026072 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Tue, 4 Jun 2019 08:07:26 -0400 Subject: [PATCH 73/83] ci(travis): change repo name for deploy --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 6ed642f26..b69934f9b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -74,5 +74,5 @@ deploy: local-dir: deploy acl: public_read on: - repo: conveyal/datatools-server + repo: ibi-group/datatools-server all_branches: true From 4fcb583378bdaf6c8042075806c2440d3b38cd0e Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 09:13:02 -0400 Subject: [PATCH 74/83] fix(GTFS+): add check for missing, but required columns fix #206 --- .../controllers/api/GtfsPlusController.java | 55 +++++++++++++------ 1 file changed, 39 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java index a3ec1a275..019c59eef 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java @@ -303,23 +303,32 @@ private static Collection getGtfsPlusValidation(Request req, Re */ private static void validateTable( Collection issues, - JsonNode tableNode, - InputStream inputStream, + JsonNode specTable, + InputStream inputStreamToValidate, GTFSFeed gtfsFeed ) throws IOException { - String tableId = tableNode.get("id").asText(); - BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); + String tableId = specTable.get("id").asText(); + // Read in table data from input stream. + BufferedReader in = new BufferedReader(new InputStreamReader(inputStreamToValidate)); String line = in.readLine(); - String[] fields = line.split(","); - List fieldList = Arrays.asList(fields); - JsonNode[] fieldNodes = new JsonNode[fields.length]; - JsonNode fieldsNode = tableNode.get("fields"); - for(int i = 0; i < fieldsNode.size(); i++) { - JsonNode fieldNode = fieldsNode.get(i); - int index = fieldList.indexOf(fieldNode.get("name").asText()); - if(index != -1) fieldNodes[index] = fieldNode; + String[] inputHeaders = line.split(","); + List fieldList = Arrays.asList(inputHeaders); + JsonNode[] fieldsFounds = new JsonNode[inputHeaders.length]; + JsonNode specFields = specTable.get("fields"); + // Iterate over spec fields and check that there are no missing required fields. + for (int i = 0; i < specFields.size(); i++) { + JsonNode specField = specFields.get(i); + String fieldName = specField.get("name").asText(); + int index = fieldList.indexOf(fieldName); + if (index != -1) { + // Add spec field for each field found. + fieldsFounds[index] = specField; + } else if (isRequired(specField)) { + // If spec field not found, check that missing field was not required. + issues.add(new ValidationIssue(tableId, fieldName, -1, "Required column missing.")); + } } - + // Iterate over each row and validate each field value. int rowIndex = 0; while((line = in.readLine()) != null) { String[] values = line.split(Consts.COLUMN_SPLIT, -1); @@ -330,9 +339,22 @@ private static void validateTable( } } - private static void validateTableValue(Collection issues, String tableId, int rowIndex, String value, JsonNode fieldNode, GTFSFeed gtfsFeed) { - if(fieldNode == null) return; - String fieldName = fieldNode.get("name").asText(); + /** Determine if a GTFS+ spec field is required. */ + private static boolean isRequired(JsonNode specField) { + return specField.get("required") != null && specField.get("required").asBoolean(); + } + + /** Validate a single value for a GTFS+ table. */ + private static void validateTableValue( + Collection issues, + String tableId, + int rowIndex, + String value, + JsonNode specField, + GTFSFeed gtfsFeed + ) { + if (specField == null) return; + String fieldName = specField.get("name").asText(); if(fieldNode.get("required") != null && fieldNode.get("required").asBoolean()) { if(value == null || value.length() == 0) { @@ -398,6 +420,7 @@ private static void validateTableValue(Collection issues, Strin } + /** A validation issue for a GTFS+ field. Use rowIndex = -1 for a table level issue. */ public static class ValidationIssue implements Serializable { private static final long serialVersionUID = 1L; public String tableId; From da07433c6f8c1f69ef17397d8c1182cfebe30eb5 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 09:13:34 -0400 Subject: [PATCH 75/83] style: white space formatting --- .../controllers/api/GtfsPlusController.java | 51 ++++++++++--------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java index 019c59eef..0a2706dba 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java @@ -83,7 +83,7 @@ private static HttpServletResponse getGtfsPlusFile(Request req, Response res) { // check for saved File file = gtfsPlusStore.getFeed(feedVersionId); - if(file == null) { + if (file == null) { return getGtfsPlusFromGtfs(feedVersionId, req, res); } LOG.info("Returning updated GTFS+ data"); @@ -101,7 +101,7 @@ private static HttpServletResponse getGtfsPlusFromGtfs(String feedVersionId, Req // create a set of valid GTFS+ table names Set gtfsPlusTables = new HashSet<>(); - for(int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { + for (int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { JsonNode tableNode = DataManager.gtfsPlusConfig.get(i); gtfsPlusTables.add(tableNode.get("name").asText()); } @@ -117,7 +117,7 @@ private static HttpServletResponse getGtfsPlusFromGtfs(String feedVersionId, Req byte[] buffer = new byte[512]; while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); - if(!gtfsPlusTables.contains(entry.getName())) continue; + if (!gtfsPlusTables.contains(entry.getName())) continue; // create a new empty ZipEntry and copy the contents ZipEntry newEntry = new ZipEntry(entry.getName()); @@ -170,7 +170,7 @@ private static String publishGtfsPlusFile(Request req, Response res) { String feedVersionId = req.params("versionid"); LOG.info("Publishing GTFS+ for " + feedVersionId); File plusFile = gtfsPlusStore.getFeed(feedVersionId); - if(plusFile == null || !plusFile.exists()) { + if (plusFile == null || !plusFile.exists()) { logMessageAndHalt(req, 400, "No saved GTFS+ data for version"); } @@ -178,7 +178,7 @@ private static String publishGtfsPlusFile(Request req, Response res) { // create a set of valid GTFS+ table names Set gtfsPlusTables = new HashSet<>(); - for(int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { + for (int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { JsonNode tableNode = DataManager.gtfsPlusConfig.get(i); gtfsPlusTables.add(tableNode.get("name").asText()); } @@ -196,7 +196,8 @@ private static String publishGtfsPlusFile(Request req, Response res) { byte[] buffer = new byte[512]; while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); - if(gtfsPlusTables.contains(entry.getName()) || entry.getName().startsWith("_")) continue; // skip GTFS+ and non-standard tables + // skip GTFS+ and non-standard tables + if (gtfsPlusTables.contains(entry.getName()) || entry.getName().startsWith("_")) continue; // create a new empty ZipEntry and copy the contents ZipEntry newEntry = new ZipEntry(entry.getName()); @@ -256,7 +257,7 @@ private static String publishGtfsPlusFile(Request req, Response res) { /** * HTTP endpoint that validates GTFS+ tables for a specific feed version (or its saved/edited GTFS+). * FIXME: For now this uses the MapDB-backed GTFSFeed class. Which actually suggests that this might - * should be contained within a MonitorableJob. + * should be contained within a MonitorableJob. */ private static Collection getGtfsPlusValidation(Request req, Response res) { String feedVersionId = req.params("versionid"); @@ -281,9 +282,9 @@ private static Collection getGtfsPlusValidation(Request req, Re final Enumeration entries = zipFile.entries(); while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); - for(int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { + for (int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { JsonNode tableNode = DataManager.gtfsPlusConfig.get(i); - if(tableNode.get("name").asText().equals(entry.getName())) { + if (tableNode.get("name").asText().equals(entry.getName())) { LOG.info("Validating GTFS+ table: " + entry.getName()); gtfsPlusTableCount++; validateTable(issues, tableNode, zipFile.getInputStream(entry), gtfsFeed); @@ -330,10 +331,10 @@ private static void validateTable( } // Iterate over each row and validate each field value. int rowIndex = 0; - while((line = in.readLine()) != null) { + while ((line = in.readLine()) != null) { String[] values = line.split(Consts.COLUMN_SPLIT, -1); - for(int v=0; v < values.length; v++) { - validateTableValue(issues, tableId, rowIndex, values[v], fieldNodes[v], gtfsFeed); + for (int v = 0; v < values.length; v++) { + validateTableValue(issues, tableId, rowIndex, values[v], fieldsFounds[v], gtfsFeed); } rowIndex++; } @@ -356,16 +357,16 @@ private static void validateTableValue( if (specField == null) return; String fieldName = specField.get("name").asText(); - if(fieldNode.get("required") != null && fieldNode.get("required").asBoolean()) { - if(value == null || value.length() == 0) { + if (isRequired(specField)) { + if (value == null || value.length() == 0) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Required field missing value")); } } - switch(fieldNode.get("inputType").asText()) { + switch(specField.get("inputType").asText()) { case "DROPDOWN": boolean invalid = true; - ArrayNode options = (ArrayNode) fieldNode.get("options"); + ArrayNode options = (ArrayNode) specField.get("options"); for (JsonNode option : options) { String optionValue = option.get("value").asText(); @@ -373,7 +374,7 @@ private static void validateTableValue( boolean valuesAreEqual = optionValue.equalsIgnoreCase(value); // if value is found in list of options, break out of loop - if (valuesAreEqual || (!fieldNode.get("required").asBoolean() && value.equals(""))) { + if (valuesAreEqual || (!isRequired(specField) && value.equals(""))) { invalid = false; break; } @@ -384,35 +385,35 @@ private static void validateTableValue( break; case "TEXT": // check if value exceeds max length requirement - if(fieldNode.get("maxLength") != null) { - int maxLength = fieldNode.get("maxLength").asInt(); - if(value.length() > maxLength) { + if (specField.get("maxLength") != null) { + int maxLength = specField.get("maxLength").asInt(); + if (value.length() > maxLength) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Text value exceeds the max. length of "+maxLength)); } } break; case "GTFS_ROUTE": - if(!gtfsFeed.routes.containsKey(value)) { + if (!gtfsFeed.routes.containsKey(value)) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Route ID "+ value + " not found in GTFS")); } break; case "GTFS_STOP": - if(!gtfsFeed.stops.containsKey(value)) { + if (!gtfsFeed.stops.containsKey(value)) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Stop ID "+ value + " not found in GTFS")); } break; case "GTFS_TRIP": - if(!gtfsFeed.trips.containsKey(value)) { + if (!gtfsFeed.trips.containsKey(value)) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Trip ID "+ value + " not found in GTFS")); } break; case "GTFS_FARE": - if(!gtfsFeed.fares.containsKey(value)) { + if (!gtfsFeed.fares.containsKey(value)) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Fare ID "+ value + " not found in GTFS")); } break; case "GTFS_SERVICE": - if(!gtfsFeed.services.containsKey(value)) { + if (!gtfsFeed.services.containsKey(value)) { issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Service ID "+ value + " not found in GTFS")); } break; From 87a4769e519bafb263379230e7b53080eaf1178a Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 10:36:47 -0400 Subject: [PATCH 76/83] refactor(GTFS+): move GTFS+ files around --- .../datatools/manager/DataManager.java | 1 + .../controllers/api/GtfsPlusController.java | 182 +--------------- .../manager/gtfsplus/GtfsPlusValidation.java | 198 ++++++++++++++++++ .../manager/gtfsplus/ValidationIssue.java | 19 ++ .../{ => tables}/CalendarAttribute.java | 2 +- .../gtfsplus/{ => tables}/Direction.java | 2 +- .../{ => tables}/FareRiderCategory.java | 2 +- .../{ => tables}/FareZoneAttribute.java | 2 +- .../gtfsplus/{ => tables}/GtfsPlusTable.java | 2 +- .../gtfsplus/{ => tables}/RealtimeRoute.java | 2 +- .../gtfsplus/{ => tables}/RealtimeStop.java | 2 +- .../gtfsplus/{ => tables}/RealtimeTrip.java | 2 +- .../gtfsplus/{ => tables}/RiderCategory.java | 2 +- .../gtfsplus/{ => tables}/StopAttribute.java | 2 +- .../gtfsplus/{ => tables}/TimePoint.java | 2 +- .../gtfsplus/{ => tables}/package-info.java | 6 +- .../datatools/manager/jobs/MergeFeedsJob.java | 2 +- .../manager/jobs/MergeFeedsJobTest.java | 35 +--- 18 files changed, 238 insertions(+), 227 deletions(-) create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java create mode 100644 src/main/java/com/conveyal/datatools/manager/gtfsplus/ValidationIssue.java rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/CalendarAttribute.java (91%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/Direction.java (91%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/FareRiderCategory.java (92%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/FareZoneAttribute.java (90%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/GtfsPlusTable.java (98%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/RealtimeRoute.java (91%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/RealtimeStop.java (91%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/RealtimeTrip.java (90%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/RiderCategory.java (91%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/StopAttribute.java (92%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/TimePoint.java (90%) rename src/main/java/com/conveyal/datatools/manager/gtfsplus/{ => tables}/package-info.java (80%) diff --git a/src/main/java/com/conveyal/datatools/manager/DataManager.java b/src/main/java/com/conveyal/datatools/manager/DataManager.java index 86b0f9bbc..8b9ccae41 100644 --- a/src/main/java/com/conveyal/datatools/manager/DataManager.java +++ b/src/main/java/com/conveyal/datatools/manager/DataManager.java @@ -68,6 +68,7 @@ * referenced throughout the application. */ public class DataManager { + public static final String GTFS_PLUS_SUBDIR = "gtfsplus"; private static final Logger LOG = LoggerFactory.getLogger(DataManager.class); // These fields hold YAML files that represent the server configuration. diff --git a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java index 0a2706dba..f340ccf32 100644 --- a/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java +++ b/src/main/java/com/conveyal/datatools/manager/controllers/api/GtfsPlusController.java @@ -1,33 +1,27 @@ package com.conveyal.datatools.manager.controllers.api; -import com.conveyal.datatools.common.utils.Consts; import com.conveyal.datatools.common.utils.SparkUtils; import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.auth.Auth0UserProfile; +import com.conveyal.datatools.manager.gtfsplus.ValidationIssue; import com.conveyal.datatools.manager.jobs.ProcessSingleFeedJob; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.persistence.FeedStore; import com.conveyal.datatools.manager.persistence.Persistence; import com.conveyal.datatools.manager.utils.HashUtils; import com.conveyal.datatools.manager.utils.json.JsonUtil; -import com.conveyal.gtfs.GTFSFeed; import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.node.ArrayNode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import spark.Request; import spark.Response; import javax.servlet.http.HttpServletResponse; -import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.Serializable; -import java.util.Arrays; import java.util.Collection; import java.util.Enumeration; import java.util.HashSet; @@ -41,6 +35,7 @@ import static com.conveyal.datatools.common.utils.SparkUtils.formatJobMessage; import static com.conveyal.datatools.common.utils.SparkUtils.copyRequestStreamIntoFile; import static com.conveyal.datatools.common.utils.SparkUtils.logMessageAndHalt; +import static com.conveyal.datatools.manager.gtfsplus.GtfsPlusValidation.validateGtfsPlus; import static spark.Spark.get; import static spark.Spark.post; @@ -60,7 +55,7 @@ public class GtfsPlusController { public static final Logger LOG = LoggerFactory.getLogger(GtfsPlusController.class); - private static FeedStore gtfsPlusStore = new FeedStore("gtfsplus"); + private static final FeedStore gtfsPlusStore = new FeedStore(DataManager.GTFS_PLUS_SUBDIR); /** * Upload a GTFS+ file based on a specific feed version and replace (or create) @@ -256,187 +251,18 @@ private static String publishGtfsPlusFile(Request req, Response res) { /** * HTTP endpoint that validates GTFS+ tables for a specific feed version (or its saved/edited GTFS+). - * FIXME: For now this uses the MapDB-backed GTFSFeed class. Which actually suggests that this might - * should be contained within a MonitorableJob. */ private static Collection getGtfsPlusValidation(Request req, Response res) { String feedVersionId = req.params("versionid"); - LOG.info("Validating GTFS+ for " + feedVersionId); - FeedVersion feedVersion = Persistence.feedVersions.getById(feedVersionId); - List issues = new LinkedList<>(); - - - // load the main GTFS - // FIXME: Swap MapDB-backed GTFSFeed for use of SQL data? - GTFSFeed gtfsFeed = GTFSFeed.fromFile(feedVersion.retrieveGtfsFile().getAbsolutePath()); - // check for saved GTFS+ data - File file = gtfsPlusStore.getFeed(feedVersionId); - if (file == null) { - LOG.warn("GTFS+ file not found, loading from main version GTFS."); - file = feedVersion.retrieveGtfsFile(); - } - int gtfsPlusTableCount = 0; try { - ZipFile zipFile = new ZipFile(file); - final Enumeration entries = zipFile.entries(); - while (entries.hasMoreElements()) { - final ZipEntry entry = entries.nextElement(); - for (int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { - JsonNode tableNode = DataManager.gtfsPlusConfig.get(i); - if (tableNode.get("name").asText().equals(entry.getName())) { - LOG.info("Validating GTFS+ table: " + entry.getName()); - gtfsPlusTableCount++; - validateTable(issues, tableNode, zipFile.getInputStream(entry), gtfsFeed); - } - } - } - + issues = validateGtfsPlus(feedVersionId); } catch(IOException e) { logMessageAndHalt(req, 500, "Could not read GTFS+ zip file", e); } - LOG.info("GTFS+ tables found: {}/{}", gtfsPlusTableCount, DataManager.gtfsPlusConfig.size()); return issues; } - /** - * Validate a single GTFS+ table using the table specification found in gtfsplus.yml. - */ - private static void validateTable( - Collection issues, - JsonNode specTable, - InputStream inputStreamToValidate, - GTFSFeed gtfsFeed - ) throws IOException { - String tableId = specTable.get("id").asText(); - // Read in table data from input stream. - BufferedReader in = new BufferedReader(new InputStreamReader(inputStreamToValidate)); - String line = in.readLine(); - String[] inputHeaders = line.split(","); - List fieldList = Arrays.asList(inputHeaders); - JsonNode[] fieldsFounds = new JsonNode[inputHeaders.length]; - JsonNode specFields = specTable.get("fields"); - // Iterate over spec fields and check that there are no missing required fields. - for (int i = 0; i < specFields.size(); i++) { - JsonNode specField = specFields.get(i); - String fieldName = specField.get("name").asText(); - int index = fieldList.indexOf(fieldName); - if (index != -1) { - // Add spec field for each field found. - fieldsFounds[index] = specField; - } else if (isRequired(specField)) { - // If spec field not found, check that missing field was not required. - issues.add(new ValidationIssue(tableId, fieldName, -1, "Required column missing.")); - } - } - // Iterate over each row and validate each field value. - int rowIndex = 0; - while ((line = in.readLine()) != null) { - String[] values = line.split(Consts.COLUMN_SPLIT, -1); - for (int v = 0; v < values.length; v++) { - validateTableValue(issues, tableId, rowIndex, values[v], fieldsFounds[v], gtfsFeed); - } - rowIndex++; - } - } - - /** Determine if a GTFS+ spec field is required. */ - private static boolean isRequired(JsonNode specField) { - return specField.get("required") != null && specField.get("required").asBoolean(); - } - - /** Validate a single value for a GTFS+ table. */ - private static void validateTableValue( - Collection issues, - String tableId, - int rowIndex, - String value, - JsonNode specField, - GTFSFeed gtfsFeed - ) { - if (specField == null) return; - String fieldName = specField.get("name").asText(); - - if (isRequired(specField)) { - if (value == null || value.length() == 0) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Required field missing value")); - } - } - - switch(specField.get("inputType").asText()) { - case "DROPDOWN": - boolean invalid = true; - ArrayNode options = (ArrayNode) specField.get("options"); - for (JsonNode option : options) { - String optionValue = option.get("value").asText(); - - // NOTE: per client's request, this check has been made case insensitive - boolean valuesAreEqual = optionValue.equalsIgnoreCase(value); - - // if value is found in list of options, break out of loop - if (valuesAreEqual || (!isRequired(specField) && value.equals(""))) { - invalid = false; - break; - } - } - if (invalid) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Value: " + value + " is not a valid option.")); - } - break; - case "TEXT": - // check if value exceeds max length requirement - if (specField.get("maxLength") != null) { - int maxLength = specField.get("maxLength").asInt(); - if (value.length() > maxLength) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Text value exceeds the max. length of "+maxLength)); - } - } - break; - case "GTFS_ROUTE": - if (!gtfsFeed.routes.containsKey(value)) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Route ID "+ value + " not found in GTFS")); - } - break; - case "GTFS_STOP": - if (!gtfsFeed.stops.containsKey(value)) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Stop ID "+ value + " not found in GTFS")); - } - break; - case "GTFS_TRIP": - if (!gtfsFeed.trips.containsKey(value)) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Trip ID "+ value + " not found in GTFS")); - } - break; - case "GTFS_FARE": - if (!gtfsFeed.fares.containsKey(value)) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Fare ID "+ value + " not found in GTFS")); - } - break; - case "GTFS_SERVICE": - if (!gtfsFeed.services.containsKey(value)) { - issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Service ID "+ value + " not found in GTFS")); - } - break; - } - - } - - /** A validation issue for a GTFS+ field. Use rowIndex = -1 for a table level issue. */ - public static class ValidationIssue implements Serializable { - private static final long serialVersionUID = 1L; - public String tableId; - public String fieldName; - public int rowIndex; - public String description; - - public ValidationIssue(String tableId, String fieldName, int rowIndex, String description) { - this.tableId = tableId; - this.fieldName = fieldName; - this.rowIndex = rowIndex; - this.description = description; - } - } - public static void register(String apiPrefix) { post(apiPrefix + "secure/gtfsplus/:versionid", GtfsPlusController::uploadGtfsPlusFile, JsonUtil.objectMapper::writeValueAsString); get(apiPrefix + "secure/gtfsplus/:versionid", GtfsPlusController::getGtfsPlusFile); diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java new file mode 100644 index 000000000..d8c474622 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java @@ -0,0 +1,198 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.datatools.common.utils.Consts; +import com.conveyal.datatools.manager.DataManager; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.persistence.FeedStore; +import com.conveyal.datatools.manager.persistence.Persistence; +import com.conveyal.gtfs.GTFSFeed; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ArrayNode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import sun.plugin.dom.exception.InvalidStateException; + +import java.io.BufferedReader; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.Arrays; +import java.util.Collection; +import java.util.Enumeration; +import java.util.LinkedList; +import java.util.List; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; + +public class GtfsPlusValidation { + public static final Logger LOG = LoggerFactory.getLogger(GtfsPlusValidation.class); + private static final FeedStore gtfsPlusStore = new FeedStore(DataManager.GTFS_PLUS_SUBDIR); + private static final String NOT_FOUND = "not found in GTFS"; + + /** + * Validate a GTFS+ feed and return a list of issues encountered. + * FIXME: For now this uses the MapDB-backed GTFSFeed class. Which actually suggests that this might + * should be contained within a MonitorableJob. + */ + public static List validateGtfsPlus (String feedVersionId) throws IOException { + if (!DataManager.isModuleEnabled("gtfsplus")) { + throw new IllegalStateException("GTFS+ module must be enabled in server.yml to run GTFS+ validation."); + } + List issues = new LinkedList<>(); + LOG.info("Validating GTFS+ for " + feedVersionId); + FeedVersion feedVersion = Persistence.feedVersions.getById(feedVersionId); + // Load the main GTFS file. + // FIXME: Swap MapDB-backed GTFSFeed for use of SQL data? + GTFSFeed gtfsFeed = GTFSFeed.fromFile(feedVersion.retrieveGtfsFile().getAbsolutePath()); + // check for saved GTFS+ data + File file = gtfsPlusStore.getFeed(feedVersionId); + if (file == null) { + LOG.warn("GTFS+ file not found, loading from main version GTFS."); + file = feedVersion.retrieveGtfsFile(); + } + int gtfsPlusTableCount = 0; + ZipFile zipFile = new ZipFile(file); + final Enumeration entries = zipFile.entries(); + while (entries.hasMoreElements()) { + final ZipEntry entry = entries.nextElement(); + for (int i = 0; i < DataManager.gtfsPlusConfig.size(); i++) { + JsonNode tableNode = DataManager.gtfsPlusConfig.get(i); + if (tableNode.get("name").asText().equals(entry.getName())) { + LOG.info("Validating GTFS+ table: " + entry.getName()); + gtfsPlusTableCount++; + validateTable(issues, tableNode, zipFile.getInputStream(entry), gtfsFeed); + } + } + } + LOG.info("GTFS+ tables found: {}/{}", gtfsPlusTableCount, DataManager.gtfsPlusConfig.size()); + return issues; + } + + /** + * Validate a single GTFS+ table using the table specification found in gtfsplus.yml. + */ + private static void validateTable( + Collection issues, + JsonNode specTable, + InputStream inputStreamToValidate, + GTFSFeed gtfsFeed + ) throws IOException { + String tableId = specTable.get("id").asText(); + // Read in table data from input stream. + BufferedReader in = new BufferedReader(new InputStreamReader(inputStreamToValidate)); + String line = in.readLine(); + String[] inputHeaders = line.split(","); + List fieldList = Arrays.asList(inputHeaders); + JsonNode[] fieldsFounds = new JsonNode[inputHeaders.length]; + JsonNode specFields = specTable.get("fields"); + // Iterate over spec fields and check that there are no missing required fields. + for (int i = 0; i < specFields.size(); i++) { + JsonNode specField = specFields.get(i); + String fieldName = specField.get("name").asText(); + int index = fieldList.indexOf(fieldName); + if (index != -1) { + // Add spec field for each field found. + fieldsFounds[index] = specField; + } else if (isRequired(specField)) { + // If spec field not found, check that missing field was not required. + issues.add(new ValidationIssue(tableId, fieldName, -1, "Required column missing.")); + } + } + // Iterate over each row and validate each field value. + int rowIndex = 0; + while ((line = in.readLine()) != null) { + String[] values = line.split(Consts.COLUMN_SPLIT, -1); + for (int v = 0; v < values.length; v++) { + validateTableValue(issues, tableId, rowIndex, values[v], fieldsFounds[v], gtfsFeed); + } + rowIndex++; + } + } + + /** Determine if a GTFS+ spec field is required. */ + private static boolean isRequired(JsonNode specField) { + return specField.get("required") != null && specField.get("required").asBoolean(); + } + + /** Validate a single value for a GTFS+ table. */ + private static void validateTableValue( + Collection issues, + String tableId, + int rowIndex, + String value, + JsonNode specField, + GTFSFeed gtfsFeed + ) { + if (specField == null) return; + String fieldName = specField.get("name").asText(); + + if (isRequired(specField)) { + if (value == null || value.length() == 0) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Required field missing value")); + } + } + + switch(specField.get("inputType").asText()) { + case "DROPDOWN": + boolean invalid = true; + ArrayNode options = (ArrayNode) specField.get("options"); + for (JsonNode option : options) { + String optionValue = option.get("value").asText(); + + // NOTE: per client's request, this check has been made case insensitive + boolean valuesAreEqual = optionValue.equalsIgnoreCase(value); + + // if value is found in list of options, break out of loop + if (valuesAreEqual || (!isRequired(specField) && "".equals(value))) { + invalid = false; + break; + } + } + if (invalid) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Value: " + value + " is not a valid option.")); + } + break; + case "TEXT": + // check if value exceeds max length requirement + if (specField.get("maxLength") != null) { + int maxLength = specField.get("maxLength").asInt(); + if (value != null && value.length() > maxLength) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, "Text value exceeds the max. length of " + maxLength)); + } + } + break; + case "GTFS_ROUTE": + if (!gtfsFeed.routes.containsKey(value)) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, missingIdText(value, "Route"))); + } + break; + case "GTFS_STOP": + if (!gtfsFeed.stops.containsKey(value)) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, missingIdText(value, "Stop"))); + } + break; + case "GTFS_TRIP": + if (!gtfsFeed.trips.containsKey(value)) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, missingIdText(value, "Trip"))); + } + break; + case "GTFS_FARE": + if (!gtfsFeed.fares.containsKey(value)) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, missingIdText(value, "Fare"))); + } + break; + case "GTFS_SERVICE": + if (!gtfsFeed.services.containsKey(value)) { + issues.add(new ValidationIssue(tableId, fieldName, rowIndex, missingIdText(value, "Service"))); + } + break; + } + + } + + /** Construct missing ID text for validation issue description. */ + private static String missingIdText(String value, String entity) { + return String.join(" ", entity, "ID", value, NOT_FOUND); + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/ValidationIssue.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/ValidationIssue.java new file mode 100644 index 000000000..b835a3996 --- /dev/null +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/ValidationIssue.java @@ -0,0 +1,19 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import java.io.Serializable; + +/** A validation issue for a GTFS+ field. Use rowIndex = -1 for a table level issue. */ +public class ValidationIssue implements Serializable { + private static final long serialVersionUID = 1L; + public String tableId; + public String fieldName; + public int rowIndex; + public String description; + + public ValidationIssue(String tableId, String fieldName, int rowIndex, String description) { + this.tableId = tableId; + this.fieldName = fieldName; + this.rowIndex = rowIndex; + this.description = description; + } +} diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/CalendarAttribute.java similarity index 91% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/CalendarAttribute.java index 10cea50c0..ed6c4b7f1 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/CalendarAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/CalendarAttribute.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/Direction.java similarity index 91% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/Direction.java index 4d618a12a..0b83f6e9c 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/Direction.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/Direction.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareRiderCategory.java similarity index 92% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareRiderCategory.java index 6d759c062..133d2b60f 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareRiderCategory.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareRiderCategory.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareZoneAttribute.java similarity index 90% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareZoneAttribute.java index 099f81b33..4d586f296 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/FareZoneAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/FareZoneAttribute.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/GtfsPlusTable.java similarity index 98% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/GtfsPlusTable.java index 60b46d530..23031b2fd 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusTable.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/GtfsPlusTable.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.loader.DateField; import com.conveyal.gtfs.loader.DoubleField; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeRoute.java similarity index 91% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeRoute.java index e6c996aa5..49050a05f 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeRoute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeRoute.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeStop.java similarity index 91% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeStop.java index 51a9f3551..fd61db1f3 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeStop.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeStop.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeTrip.java similarity index 90% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeTrip.java index 133990209..3c52ae7de 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RealtimeTrip.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RealtimeTrip.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RiderCategory.java similarity index 91% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RiderCategory.java index 82442b13b..d30705ee2 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/RiderCategory.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/RiderCategory.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/StopAttribute.java similarity index 92% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/StopAttribute.java index e2c0ba8f8..e11714f2c 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/StopAttribute.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/StopAttribute.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/TimePoint.java similarity index 90% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/TimePoint.java index 458ba86e3..b1b71abf8 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/TimePoint.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/TimePoint.java @@ -1,4 +1,4 @@ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; import com.conveyal.gtfs.model.Entity; diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/package-info.java similarity index 80% rename from src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java rename to src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/package-info.java index 03845bbea..aab21a404 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/package-info.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/tables/package-info.java @@ -1,7 +1,7 @@ /** * This package contains classes that correspond to those found for GTFS entity types in * {@link com.conveyal.gtfs.model}, but for GTFS+ entity types. It also contains - * {@link com.conveyal.datatools.manager.gtfsplus.GtfsPlusTable}, which extends the + * {@link com.conveyal.datatools.manager.gtfsplus.tables.GtfsPlusTable}, which extends the * {@link com.conveyal.gtfs.loader.Table} in order to define a table specification for this set of * extension tables. * @@ -10,7 +10,7 @@ * these classes in the GTFS+ validation code path found in * {@link com.conveyal.datatools.manager.controllers.api.GtfsPlusController}; however, * TODO a way to define an enum set for string field values would need to first be added to support - * fields such as {@link com.conveyal.datatools.manager.gtfsplus.StopAttribute#cardinal_direction}. + * fields such as {@link com.conveyal.datatools.manager.gtfsplus.tables.StopAttribute#cardinal_direction}. */ -package com.conveyal.datatools.manager.gtfsplus; +package com.conveyal.datatools.manager.gtfsplus.tables; diff --git a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java index b61115537..256895ef6 100644 --- a/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java +++ b/src/main/java/com/conveyal/datatools/manager/jobs/MergeFeedsJob.java @@ -2,7 +2,7 @@ import com.conveyal.datatools.common.status.MonitorableJob; import com.conveyal.datatools.manager.DataManager; -import com.conveyal.datatools.manager.gtfsplus.GtfsPlusTable; +import com.conveyal.datatools.manager.gtfsplus.tables.GtfsPlusTable; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.persistence.FeedStore; diff --git a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java index ec3e261b7..64b5a4ae6 100644 --- a/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java +++ b/src/test/java/com/conveyal/datatools/manager/jobs/MergeFeedsJobTest.java @@ -1,9 +1,7 @@ package com.conveyal.datatools.manager.jobs; import com.conveyal.datatools.DatatoolsTest; -import com.conveyal.datatools.LoadFeedTest; import com.conveyal.datatools.TestUtils; -import com.conveyal.datatools.manager.DataManager; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.models.FeedVersion; import com.conveyal.datatools.manager.models.Project; @@ -15,14 +13,12 @@ import org.slf4j.LoggerFactory; import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; import java.sql.SQLException; import java.util.Date; import java.util.HashSet; import java.util.Set; +import static com.conveyal.datatools.TestUtils.createFeedVersion; import static org.junit.Assert.assertEquals; /** @@ -184,33 +180,4 @@ public void canMergeBARTFeeds() throws SQLException { NewGTFSErrorType.DUPLICATE_ID.toString() ); } - - /** - * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, - * so that tasks can run synchronously. - */ - public static FeedVersion createFeedVersion(FeedSource source, String gtfsFileName) { - File gtfsFile = new File(LoadFeedTest.class.getResource(gtfsFileName).getFile()); - return createFeedVersion(source, gtfsFile); - } - - /** - * Utility function to create a feed version during tests. Note: this is intended to run the job in the same thread, - * so that tasks can run synchronously. - */ - public static FeedVersion createFeedVersion(FeedSource source, File gtfsFile) { - FeedVersion version = new FeedVersion(source); - InputStream is; - try { - is = new FileInputStream(gtfsFile); - version.newGtfsFile(is); - } catch (IOException e) { - e.printStackTrace(); - } - ProcessSingleFeedJob processSingleFeedJob = new ProcessSingleFeedJob(version, "test", true); - // Run in same thread. - processSingleFeedJob.run(); - return version; - } - } From 4f9ef60562285322c547bbf3dccae921672bf3df Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 10:37:06 -0400 Subject: [PATCH 77/83] test(GTFS+): add basic test for GTFS+ validation --- configurations/default/server.yml.tmp | 3 ++ .../gtfsplus/GtfsPlusValidationTest.java | 52 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 src/test/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidationTest.java diff --git a/configurations/default/server.yml.tmp b/configurations/default/server.yml.tmp index 5db5a6f2f..c29382e26 100644 --- a/configurations/default/server.yml.tmp +++ b/configurations/default/server.yml.tmp @@ -15,6 +15,9 @@ modules: enabled: false user_admin: enabled: true + # Enable GTFS+ module for testing purposes + gtfsplus: + enabled: true gtfsapi: enabled: true load_on_fetch: false diff --git a/src/test/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidationTest.java b/src/test/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidationTest.java new file mode 100644 index 000000000..b97c61a71 --- /dev/null +++ b/src/test/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidationTest.java @@ -0,0 +1,52 @@ +package com.conveyal.datatools.manager.gtfsplus; + +import com.conveyal.datatools.DatatoolsTest; +import com.conveyal.datatools.manager.jobs.MergeFeedsJobTest; +import com.conveyal.datatools.manager.models.FeedSource; +import com.conveyal.datatools.manager.models.FeedVersion; +import com.conveyal.datatools.manager.models.Project; +import com.conveyal.datatools.manager.persistence.Persistence; +import org.junit.BeforeClass; +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.util.Date; +import java.util.List; + +import static com.conveyal.datatools.TestUtils.createFeedVersion; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; + +/** Runs test to verify that GTFS+ validation runs as expected. */ +public class GtfsPlusValidationTest { + private static final Logger LOG = LoggerFactory.getLogger(MergeFeedsJobTest.class); + private static FeedVersion bartVersion1; + private static Project project; + + /** + * Create feed version for GTFS+ validation test. + */ + @BeforeClass + public static void setUp() { + // start server if it isn't already running + DatatoolsTest.setUp(); + // Create a project, feed sources, and feed versions to merge. + project = new Project(); + project.name = String.format("Test %s", new Date().toString()); + Persistence.projects.create(project); + FeedSource bart = new FeedSource("BART"); + bart.projectId = project.id; + Persistence.feedSources.create(bart); + bartVersion1 = createFeedVersion(bart, "bart_new.zip"); + } + + @Test + public void canValidateCleanGtfsPlus() throws IOException { + LOG.info("Validation BART GTFS+"); + List issues = GtfsPlusValidation.validateGtfsPlus(bartVersion1.id); + // Expect issues to be zero. + assertThat("Issues count for clean BART feed is zero", issues.size(), equalTo(0)); + } +} From 57e87fd336193367ba294048a3b2df35bba2e4d2 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 10:47:47 -0400 Subject: [PATCH 78/83] fix: remove unused/bad import --- .../conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java index d8c474622..0bb0ed27f 100644 --- a/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java +++ b/src/main/java/com/conveyal/datatools/manager/gtfsplus/GtfsPlusValidation.java @@ -10,7 +10,6 @@ import com.fasterxml.jackson.databind.node.ArrayNode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import sun.plugin.dom.exception.InvalidStateException; import java.io.BufferedReader; import java.io.File; From 3bb18588859c487c93c849376d996bd51457c754 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 7 Jun 2019 10:52:55 -0400 Subject: [PATCH 79/83] ci(travis): create GTFS+ dir before script --- .travis.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index b69934f9b..ea6dfeb81 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,5 @@ dist: trusty # jdk 8 not available on xenial language: java -language: java java: - oraclejdk8 install: true @@ -18,6 +17,8 @@ cache: # Install semantic-release before_script: - yarn global add @conveyal/maven-semantic-release semantic-release@15 + # Create dir for GTFS+ files (used during testing) + - mkdir /tmp/gtfsplus before_install: #- sed -i.bak -e 's|https://nexus.codehaus.org/snapshots/|https://oss.sonatype.org/content/repositories/codehaus-snapshots/|g' ~/.m2/settings.xml # set region in AWS config for S3 setup From 9f5b3f37427c0d4e85ef645f5a9068f7d4cf5537 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 24 Jun 2019 13:53:52 -0400 Subject: [PATCH 80/83] fix(MTC-sync): fix feed sync with MTC RTD database fix #208 --- .../extensions/mtc/MtcFeedResource.java | 71 ++++++++++--------- 1 file changed, 37 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java index 822de30cc..58a5f7557 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java @@ -26,6 +26,10 @@ import static com.conveyal.datatools.manager.models.ExternalFeedSourceProperty.constructId; /** + * This class implements the {@link ExternalFeedResource} interface for the MTC RTD database list of carriers (transit + * operators) and allows the Data Tools application to read and sync the list of carriers to a set of feed sources for a + * given project. + * * Created by demory on 3/30/16. */ public class MtcFeedResource implements ExternalFeedResource { @@ -48,11 +52,15 @@ public String getResourceType() { return RESOURCE_TYPE; } + /** + * Fetch the list of feeds from the MTC endpoint, create any feed sources that do not match on agencyID, and update + * the external feed source properties. + */ @Override public void importFeedsForProject(Project project, String authHeader) throws IOException, IllegalAccessException { URL url; ObjectMapper mapper = new ObjectMapper(); - // single list from MTC + // A single list of feeds is returned from the MTC Carrier endpoint. try { url = new URL(rtdApi + "/Carrier"); } catch(MalformedURLException ex) { @@ -70,11 +78,10 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE con.setRequestProperty("User-Agent", "User-Agent"); // add auth header - LOG.info("authHeader="+authHeader); con.setRequestProperty("Authorization", authHeader); - int responseCode = con.getResponseCode(); LOG.info("Sending 'GET' request to URL : " + url); + int responseCode = con.getResponseCode(); LOG.info("Response Code : " + responseCode); BufferedReader in = new BufferedReader( @@ -88,49 +95,45 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE in.close(); String json = response.toString(); - RtdCarrier[] results = mapper.readValue(json, RtdCarrier[].class); - for (int i = 0; i < results.length; i++) { - // String className = "RtdCarrier"; - // Object car = Class.forName(className).newInstance(); - RtdCarrier car = results[i]; - //LOG.info("car id=" + car.AgencyId + " name=" + car.AgencyName); - + RtdCarrier[] carriers = mapper.readValue(json, RtdCarrier[].class); + // Iterate over carriers found in response and update properties. Also, create a feed source for any carriers + // found in the response that do not correspond to an agency ID found in the external feed source properties. + for (int i = 0; i < carriers.length; i++) { + RtdCarrier carrier = carriers[i]; FeedSource source = null; - // check if a FeedSource with this AgencyId already exists + // Check if a FeedSource with this AgencyId already exists. for (FeedSource existingSource : project.retrieveProjectFeedSources()) { ExternalFeedSourceProperty agencyIdProp; - agencyIdProp = Persistence.externalFeedSourceProperties.getById(constructId(existingSource, this.getResourceType(), - AGENCY_ID_FIELDNAME)); - if (agencyIdProp != null && agencyIdProp.value != null && agencyIdProp.value.equals(car.AgencyId)) { - //LOG.info("already exists: " + car.AgencyId); + String propertyId = constructId(existingSource, this.getResourceType(), AGENCY_ID_FIELDNAME); + agencyIdProp = Persistence.externalFeedSourceProperties.getById(propertyId); + if (agencyIdProp != null && agencyIdProp.value != null && agencyIdProp.value.equals(carrier.AgencyId)) { + LOG.info("Feed source {} exists", existingSource.name); source = existingSource; } } - - String feedName; - if (car.AgencyName != null) { - feedName = car.AgencyName; - } else if (car.AgencyShortName != null) { - feedName = car.AgencyShortName; - } else { - feedName = car.AgencyId; - } - + // Feed source does not exist. Create one using carrier properties. if (source == null) { + // Derive the name from carrier properties found in response. + String feedName = carrier.AgencyName != null + ? carrier.AgencyName + : carrier.AgencyShortName != null + ? carrier.AgencyShortName + : carrier.AgencyId; + // Create new feed source to store in application database. source = new FeedSource(feedName); + source.projectId = project.id; + LOG.info("Creating feed source {} from carrier response. (Did not previously exist.)", feedName); + // Store the feed source if it does not already exist. + Persistence.feedSources.create(source); } - else source.name = feedName; - - source.projectId = project.id; - // Store the feed source. - Persistence.feedSources.create(source); - - // create / update the properties + // TODO: Does any property on the feed source need to be updated from the carrier (e.g., name). - for(Field carrierField : car.getClass().getDeclaredFields()) { + // Create / update the properties + LOG.info("Updating props for {}", source.name); + for(Field carrierField : carrier.getClass().getDeclaredFields()) { String fieldName = carrierField.getName(); - String fieldValue = carrierField.get(car) != null ? carrierField.get(car).toString() : null; + String fieldValue = carrierField.get(carrier) != null ? carrierField.get(carrier).toString() : null; ExternalFeedSourceProperty prop = new ExternalFeedSourceProperty(source, this.getResourceType(), fieldName, fieldValue); if (Persistence.externalFeedSourceProperties.getById(prop.id) == null) { Persistence.externalFeedSourceProperties.create(prop); From 0054341eb1c024804bec8c15743a2feea89bfb64 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 24 Jun 2019 14:34:28 -0400 Subject: [PATCH 81/83] style(MTC-sync): enhance comment --- .../datatools/manager/extensions/mtc/MtcFeedResource.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java index 58a5f7557..7bb02aa43 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java @@ -30,6 +30,11 @@ * operators) and allows the Data Tools application to read and sync the list of carriers to a set of feed sources for a * given project. * + * This is generally intended as an initialization step to importing feed sources into a project; however, it should + * support subsequent sync requests (e.g., if new agencies are expected in the external feed resource, syncing should + * import those OR if feed properties are expected to have changed in the external feed resource, they should be updated + * accordingly in Data Tools). + * * Created by demory on 3/30/16. */ public class MtcFeedResource implements ExternalFeedResource { From 289ed0e899e503f35902525f950b793ddc6921e6 Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Mon, 24 Jun 2019 17:44:14 -0400 Subject: [PATCH 82/83] refactor(MTC-sync): address PR comments --- .../extensions/mtc/MtcFeedResource.java | 34 +++++-------------- 1 file changed, 9 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java index 7bb02aa43..5b7eb075a 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java @@ -22,6 +22,7 @@ import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; +import java.util.Collection; import static com.conveyal.datatools.manager.models.ExternalFeedSourceProperty.constructId; @@ -74,33 +75,17 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE } try { - HttpURLConnection con = (HttpURLConnection) url.openConnection(); - - // optional default is GET - con.setRequestMethod("GET"); - + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); //add request header - con.setRequestProperty("User-Agent", "User-Agent"); - + conn.setRequestProperty("User-Agent", "User-Agent"); // add auth header - con.setRequestProperty("Authorization", authHeader); + conn.setRequestProperty("Authorization", authHeader); - LOG.info("Sending 'GET' request to URL : " + url); - int responseCode = con.getResponseCode(); - LOG.info("Response Code : " + responseCode); - - BufferedReader in = new BufferedReader( - new InputStreamReader(con.getInputStream())); - String inputLine; - StringBuffer response = new StringBuffer(); - - while ((inputLine = in.readLine()) != null) { - response.append(inputLine); - } - in.close(); + LOG.info("Sending 'GET' request to URL : {}", url); + LOG.info("Response Code : {}", conn.getResponseCode()); - String json = response.toString(); - RtdCarrier[] carriers = mapper.readValue(json, RtdCarrier[].class); + RtdCarrier[] carriers = mapper.readValue(conn.getInputStream(), RtdCarrier[].class); + Collection projectFeedSources = project.retrieveProjectFeedSources(); // Iterate over carriers found in response and update properties. Also, create a feed source for any carriers // found in the response that do not correspond to an agency ID found in the external feed source properties. for (int i = 0; i < carriers.length; i++) { @@ -108,12 +93,11 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE FeedSource source = null; // Check if a FeedSource with this AgencyId already exists. - for (FeedSource existingSource : project.retrieveProjectFeedSources()) { + for (FeedSource existingSource : projectFeedSources) { ExternalFeedSourceProperty agencyIdProp; String propertyId = constructId(existingSource, this.getResourceType(), AGENCY_ID_FIELDNAME); agencyIdProp = Persistence.externalFeedSourceProperties.getById(propertyId); if (agencyIdProp != null && agencyIdProp.value != null && agencyIdProp.value.equals(carrier.AgencyId)) { - LOG.info("Feed source {} exists", existingSource.name); source = existingSource; } } From f8d393dea5f4f447f78ca1a47c95bad2b6b680ce Mon Sep 17 00:00:00 2001 From: Landon Reed Date: Fri, 28 Jun 2019 10:26:35 -0400 Subject: [PATCH 83/83] fix(MtcFeedResource): properly initialize external feed props on create fixes #210 --- .../extensions/ExternalFeedResource.java | 2 +- .../extensions/mtc/MtcFeedResource.java | 22 ++++------- .../manager/extensions/mtc/RtdCarrier.java | 39 ++++++++++++++++++- .../datatools/manager/models/FeedSource.java | 9 +++-- 4 files changed, 51 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/ExternalFeedResource.java b/src/main/java/com/conveyal/datatools/manager/extensions/ExternalFeedResource.java index d3c0c61b6..c761449de 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/ExternalFeedResource.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/ExternalFeedResource.java @@ -16,7 +16,7 @@ public interface ExternalFeedResource { public void importFeedsForProject(Project project, String authHeader) throws Exception; - public void feedSourceCreated(FeedSource source, String authHeader); + public void feedSourceCreated(FeedSource source, String authHeader) throws Exception; public void propertyUpdated(ExternalFeedSourceProperty property, String previousValue, String authHeader) throws IOException; diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java index 5b7eb075a..99e2125b9 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/MtcFeedResource.java @@ -120,16 +120,7 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE // Create / update the properties LOG.info("Updating props for {}", source.name); - for(Field carrierField : carrier.getClass().getDeclaredFields()) { - String fieldName = carrierField.getName(); - String fieldValue = carrierField.get(carrier) != null ? carrierField.get(carrier).toString() : null; - ExternalFeedSourceProperty prop = new ExternalFeedSourceProperty(source, this.getResourceType(), fieldName, fieldValue); - if (Persistence.externalFeedSourceProperties.getById(prop.id) == null) { - Persistence.externalFeedSourceProperties.create(prop); - } else { - Persistence.externalFeedSourceProperties.updateField(prop.id, fieldName, fieldValue); - } - } + carrier.updateFields(source); } } catch(Exception ex) { LOG.error("Could not read feeds from MTC RTD API"); @@ -138,12 +129,15 @@ public void importFeedsForProject(Project project, String authHeader) throws IOE } /** - * Do nothing for now. Creating a new agency for RTD requires adding the AgencyId property (when it was previously - * null. See {@link #propertyUpdated(ExternalFeedSourceProperty, String, String)}. + * Generate blank external feed resource properties when a new feed source is created. Creating a new agency for RTD + * requires adding the AgencyId property (when it was previously null. See {@link #propertyUpdated(ExternalFeedSourceProperty, String, String)}. */ @Override - public void feedSourceCreated(FeedSource source, String authHeader) { - LOG.info("Processing new FeedSource {} for RTD. (No action taken.)", source.name); + public void feedSourceCreated(FeedSource source, String authHeader) throws IllegalAccessException { + LOG.info("Processing new FeedSource {} for RTD. Empty external feed properties being generated.", source.name); + // Create a blank carrier and update fields (will initialize all fields to null). + RtdCarrier carrier = new RtdCarrier(); + carrier.updateFields(source); } /** diff --git a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/RtdCarrier.java b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/RtdCarrier.java index 768acdf93..920d7ee32 100644 --- a/src/main/java/com/conveyal/datatools/manager/extensions/mtc/RtdCarrier.java +++ b/src/main/java/com/conveyal/datatools/manager/extensions/mtc/RtdCarrier.java @@ -1,12 +1,17 @@ package com.conveyal.datatools.manager.extensions.mtc; +import com.conveyal.datatools.manager.models.ExternalFeedSourceProperty; import com.conveyal.datatools.manager.models.FeedSource; import com.conveyal.datatools.manager.persistence.Persistence; import com.fasterxml.jackson.annotation.JsonProperty; +import java.lang.reflect.Field; + import static com.conveyal.datatools.manager.models.ExternalFeedSourceProperty.constructId; /** + * Represents all of the properties persisted on a carrier record by the external MTC database known as RTD. + * * Created by demory on 3/30/16. */ @@ -63,11 +68,12 @@ public class RtdCarrier { @JsonProperty String EditedDate; + /** Empty constructor needed for serialization (also used to create empty carrier). */ public RtdCarrier() { } /** - * Construct an RtdCarrier given the provided feed source. + * Construct an RtdCarrier given the provided feed source and initialize all field values from MongoDB. * @param source */ public RtdCarrier(FeedSource source) { @@ -93,9 +99,38 @@ private String getPropId(FeedSource source, String fieldName) { } /** - * FIXME: Are there cases where this might throw NPEs? + * Get the value stored in the database for a particular field. + * + * TODO: Are there cases where this might throw NPEs? */ private String getValueForField (FeedSource source, String fieldName) { return Persistence.externalFeedSourceProperties.getById(getPropId(source, fieldName)).value; } + + /** + * Use reflection to update (or create if field does not exist) all fields for a carrier instance and provided feed + * source. + * + * TODO: Perhaps we should not be using reflection, but it works pretty well here. + */ + public void updateFields(FeedSource feedSource) throws IllegalAccessException { + // Using reflection, iterate over every field in the class. + for(Field carrierField : this.getClass().getDeclaredFields()) { + String fieldName = carrierField.getName(); + String fieldValue = carrierField.get(this) != null ? carrierField.get(this).toString() : null; + // Construct external feed source property for field with value from carrier. + ExternalFeedSourceProperty prop = new ExternalFeedSourceProperty( + feedSource, + MtcFeedResource.RESOURCE_TYPE, + fieldName, + fieldValue + ); + // If field does not exist, create it. Otherwise, update value. + if (Persistence.externalFeedSourceProperties.getById(prop.id) == null) { + Persistence.externalFeedSourceProperties.create(prop); + } else { + Persistence.externalFeedSourceProperties.updateField(prop.id, fieldName, fieldValue); + } + } + } } \ No newline at end of file diff --git a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java index 3f428a0b0..fa18e3aae 100644 --- a/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java +++ b/src/main/java/com/conveyal/datatools/manager/models/FeedSource.java @@ -30,6 +30,7 @@ import java.util.Map; import static com.conveyal.datatools.manager.utils.StringUtils.getCleanName; +import static com.mongodb.client.model.Filters.and; import static com.mongodb.client.model.Filters.eq; /** @@ -391,10 +392,10 @@ public Map> externalProperties() { for(String resourceType : DataManager.feedResources.keySet()) { Map propTable = new HashMap<>(); - // FIXME: use mongo filters instead - Persistence.externalFeedSourceProperties.getAll().stream() - .filter(prop -> prop.feedSourceId.equals(this.id)) - .forEach(prop -> propTable.put(prop.name, prop.value)); + // Get all external properties for the feed source/resource type and fill prop table. + Persistence.externalFeedSourceProperties + .getFiltered(and(eq("feedSourceId", this.id), eq("resourceType", resourceType))) + .forEach(prop -> propTable.put(prop.name, prop.value)); resourceTable.put(resourceType, propTable); }

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∓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