diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs
index 68ecec81c43..8bb77caf146 100644
--- a/.git-blame-ignore-revs
+++ b/.git-blame-ignore-revs
@@ -40,3 +40,6 @@ beeac076c0b9f0a8aaa1424ef1d6df3a6fa8f6ab
# use prettier to force lf line endings
7bee4cbeebb91dea4bf438af44509573948e6a56
+
+# update prettier version
+98d5fe7f7cc1d49ec613086b3a15523087daa213
diff --git a/.github/workflows/cibuild.yml b/.github/workflows/cibuild.yml
index 32df0ce9543..9d2a66b45f4 100644
--- a/.github/workflows/cibuild.yml
+++ b/.github/workflows/cibuild.yml
@@ -26,9 +26,7 @@ jobs:
with:
fetch-depth: 0
- # nodejs is needed because the dynamic download of it via the prettier maven plugin often
- # times out
- # Example: https://github.com/opentripplanner/OpenTripPlanner/actions/runs/4490450225/jobs/7897533439
+ # nodejs is needed because Spotless runs Prettier through node/npm
- uses: actions/setup-node@v6
with:
node-version: 24
@@ -46,9 +44,8 @@ jobs:
# to Maven Central open which then hang during the package phase because the Azure (Github Actions)
# NAT drops them
# https://github.com/actions/runner-images/issues/1499
- # we set nodePath and npmPath to skip downloading the node binary, which frequently times out
run: |
- mvn jacoco:prepare-agent test jacoco:report -P prettierCheck,unit-tests -Dprettier.nodePath=node -Dprettier.npmPath=npm
+ mvn jacoco:prepare-agent test jacoco:report -P prettierCheck,unit-tests
mvn package -Dmaven.test.skip -P prettierSkip,checkstyleSkip
- name: Send coverage data to codecov.io
diff --git a/.prettierrc.yml b/.prettierrc.yml
deleted file mode 100644
index 161fbd45779..00000000000
--- a/.prettierrc.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-# Prettier configuration
-overrides:
- - files:
- - "*.java"
- options:
- printWidth: 100
- tabWidth: 2
- useTabs: false
- endOfLine: lf
- - files:
- - "*.md"
- options:
- proseWrap: always
- printWidth: 100
diff --git a/CLAUDE.md b/CLAUDE.md
index 4cdbd57b20f..3d9f7c76a86 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -33,11 +33,15 @@ mvn clean -Pclean-test-snapshots
## Code Formatting & Quality
-Quality gates run in the Maven `validate` phase and fail the build on violations:
-
-- **Prettier** auto-formats Java (`.prettierrc.yml`: 100-char width, 2-space indent). CI enforces
- it; check with `mvn prettier:check`. Skip locally with `-Dps`.
-- **Checkstyle** runs against `checkstyle.xml`. Skip with `-Dcs` (or `-PcheckstyleSkip`).
+Quality gates run in the Maven `validate` / `process-sources` phases and fail the build on
+violations:
+
+- **Prettier**, run through the **Spotless** Maven plugin, auto-formats Java (100-char width,
+ 2-space indent; the options are configured in the root `pom.xml`). Spotless also removes unused
+ imports (Javadoc-only references are kept). Requires `node`/`npm` on the `PATH`. CI enforces it;
+ check with `mvn spotless:check`, format with `mvn spotless:apply`. Skip locally with `-Dps`.
+- **Checkstyle** runs against `checkstyle.xml` in the `process-sources` phase (after Spotless). Skip
+ with `-Dcs` (or `-PcheckstyleSkip`).
OpenRewrite (recipes in `openrewrite.yml`, e.g. removing unused imports) does **not** run
automatically — invoke it explicitly with `mvn validate -Prewrite` (or the `-Drw` shortcut).
diff --git a/application/pom.xml b/application/pom.xml
index b8494ec10e9..08d9d86d382 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -294,7 +294,7 @@
org.onebusaway
onebusaway-gtfs
- 14.2.1
+ 14.2.2
@@ -343,7 +343,7 @@
com.hivemq
hivemq-mqtt-client
- 1.3.17
+ 1.4.0
io.github.ci-cmg
@@ -363,12 +363,12 @@
com.azure
azure-messaging-servicebus
- 7.17.19
+ 7.17.20
com.azure
azure-identity
- 1.18.4
+ 1.18.5
compile
@@ -503,18 +503,8 @@
- com.hubspot.maven.plugins
- prettier-maven-plugin
-
-
-
- src/ext/java/**/*.java
- src/ext-test/java/**/*.java
- src/**/*.json
- src/test/resources/org/opentripplanner/apis/**/*.graphql
- !src/test/resources/org/opentripplanner/apis/vectortiles/style.json
-
-
+ com.diffplug.spotless
+ spotless-maven-plugin
diff --git a/application/src/client/index.html b/application/src/client/index.html
index 727bfd9f95f..59e921021f8 100644
--- a/application/src/client/index.html
+++ b/application/src/client/index.html
@@ -5,8 +5,8 @@
OTP Debug
-
-
+
+
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/carpooling/service/DefaultCarpoolingServiceTreeLimitTest.java b/application/src/ext-test/java/org/opentripplanner/ext/carpooling/service/DefaultCarpoolingServiceTreeLimitTest.java
index dde031f129e..0ccdf86bedd 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/carpooling/service/DefaultCarpoolingServiceTreeLimitTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/carpooling/service/DefaultCarpoolingServiceTreeLimitTest.java
@@ -50,10 +50,10 @@ void sizesEachLegFromItsDurationAndSmallestDownstreamBudget() {
stop(Duration.ofMinutes(40))
);
- var limits = DefaultCarpoolingService.driverLegTreeLimits(
- trip,
- new Duration[] { Duration.ofMinutes(60), Duration.ofMinutes(100) }
- );
+ var limits = DefaultCarpoolingService.driverLegTreeLimits(trip, new Duration[] {
+ Duration.ofMinutes(60),
+ Duration.ofMinutes(100),
+ });
assertEquals(2, limits.length);
// Leg 0 allowance = min(downstream budgets) = min(5, 40) = 5.
@@ -78,10 +78,10 @@ void sizesShortLegsWellBelowNearbyStopRadius() {
stop(Duration.ofMinutes(2))
);
- var limits = DefaultCarpoolingService.driverLegTreeLimits(
- trip,
- new Duration[] { Duration.ofMinutes(5), Duration.ofMinutes(5) }
- );
+ var limits = DefaultCarpoolingService.driverLegTreeLimits(trip, new Duration[] {
+ Duration.ofMinutes(5),
+ Duration.ofMinutes(5),
+ });
var leg = expectedLimit(Duration.ofMinutes(5), Duration.ofMinutes(2));
assertEquals(leg, limits[0]);
@@ -96,10 +96,9 @@ void sizesShortLegsWellBelowNearbyStopRadius() {
void twoWaypointTripSizesTheSingleLeg() {
var trip = trip(stop(BUDGET), stop(BUDGET));
- var limits = DefaultCarpoolingService.driverLegTreeLimits(
- trip,
- new Duration[] { Duration.ofMinutes(60) }
- );
+ var limits = DefaultCarpoolingService.driverLegTreeLimits(trip, new Duration[] {
+ Duration.ofMinutes(60),
+ });
assertEquals(1, limits.length);
assertEquals(expectedLimit(Duration.ofMinutes(60), BUDGET), limits[0]);
@@ -112,10 +111,9 @@ void capsEachLegLimitAtMaxTripDuration() {
// request could expand a multi-hour street tree.
var trip = trip(stop(BUDGET), stop(BUDGET));
- var limits = DefaultCarpoolingService.driverLegTreeLimits(
- trip,
- new Duration[] { Duration.ofHours(4) }
- );
+ var limits = DefaultCarpoolingService.driverLegTreeLimits(trip, new Duration[] {
+ Duration.ofHours(4),
+ });
assertEquals(CarpoolTrip.MAX_TRIP_DURATION, limits[0]);
}
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/CrosswalkNamerTest.java b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/CrosswalkNamerTest.java
index eeb66c39a69..055cc752bea 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/CrosswalkNamerTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/CrosswalkNamerTest.java
@@ -15,9 +15,9 @@
import org.junit.jupiter.params.provider.MethodSource;
import org.opentripplanner.core.model.i18n.I18NString;
import org.opentripplanner.graph_builder.issue.api.DataImportIssueStore;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.TestOsmProvider;
import org.opentripplanner.osm.model.OsmWay;
import org.opentripplanner.street.geometry.WgsCoordinate;
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/EdgeNamerTest.java b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/EdgeNamerTest.java
index 6e07e9e6716..eaaadc427a2 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/EdgeNamerTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/EdgeNamerTest.java
@@ -3,8 +3,8 @@
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import org.junit.jupiter.api.Test;
-import org.opentripplanner.graph_builder.services.osm.DefaultNamer;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer.EdgeNamerType;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer.EdgeNamerType;
+import org.opentripplanner.graph_builder.module.osm.internal.naming.DefaultNamer;
class EdgeNamerTest {
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/SidewalkNamerTest.java b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/SidewalkNamerTest.java
index cc44248f8c5..db739aa7fe2 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/SidewalkNamerTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/edgenaming/SidewalkNamerTest.java
@@ -11,9 +11,9 @@
import org.junit.jupiter.api.Test;
import org.opentripplanner.core.model.i18n.I18NString;
import org.opentripplanner.graph_builder.issue.api.DataImportIssueStore;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.WayTestData;
import org.opentripplanner.osm.model.OsmWay;
import org.opentripplanner.street.geometry.WgsCoordinate;
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/route/RouteParserTest.java b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/route/RouteParserTest.java
index f1f116f7d97..0ba549bdebe 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/route/RouteParserTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/route/RouteParserTest.java
@@ -11,10 +11,10 @@
class RouteParserTest {
private static final String DATA = """
- route_id, avg_co2_per_vehicle_per_km, avg_passenger_count
- R:1, 2.0, 20.0
- R:2, 3.0, 24.0
- """;
+ route_id, avg_co2_per_vehicle_per_km, avg_passenger_count
+ R:1, 2.0, 20.0
+ R:2, 3.0, 24.0
+ """;
@Test
void test() {
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/trip/TripHopsCsvParserTest.java b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/trip/TripHopsCsvParserTest.java
index 078227e308b..7a5e12d7763 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/trip/TripHopsCsvParserTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/csvdata/trip/TripHopsCsvParserTest.java
@@ -11,10 +11,10 @@
class TripHopsCsvParserTest {
private static final String DATA = """
- trip_id, from_stop_id, from_stop_sequence, not_used, co2
- F:1, NSR:Quay:1, 1, xyz, 28.0
- F:1, NSR:Quay:2, 2, abc, 38.0
- """;
+ trip_id, from_stop_id, from_stop_sequence, not_used, co2
+ F:1, NSR:Quay:1, 1, xyz, 28.0
+ F:1, NSR:Quay:2, 2, abc, 38.0
+ """;
@Test
void test() {
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/itinerary/EmissionItineraryDecoratorTest.java b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/itinerary/EmissionItineraryDecoratorTest.java
index de74dc2adb5..fe7ece6f3cc 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/itinerary/EmissionItineraryDecoratorTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/emission/internal/itinerary/EmissionItineraryDecoratorTest.java
@@ -79,16 +79,16 @@ void setUpItineraries() {
int t0 = START_TIME;
combinedWithFlex = newItinerary(A)
- .drive(t0, t0 += 90, C)
- .rail(4, t0 += 90, t0 += 90, D)
- .bus(routeA, 20, t0, t0 += 90, E)
+ .drive(t0, (t0 += 90), C)
+ .rail(4, (t0 += 90), (t0 += 90), D)
+ .bus(routeA, 20, t0, (t0 += 90), E)
.flex(t0 + 90, END_TIME, B)
.build();
combinedNoFlex = newItinerary(A)
- .drive(t0, t0 += 90, C)
- .rail(4, t0 += 90, t0 + 90, D)
- .bus(routeA, 20, t0, t0 += 90, E)
+ .drive(t0, (t0 += 90), C)
+ .rail(4, (t0 += 90), t0 + 90, D)
+ .bus(routeA, 20, t0, (t0 += 90), E)
.bus(routeB, 23, t0, END_TIME, B)
.build();
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/calendar/CalendarCsvParserTest.java b/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/calendar/CalendarCsvParserTest.java
index 9d655722a3f..b51f6b73530 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/calendar/CalendarCsvParserTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/calendar/CalendarCsvParserTest.java
@@ -15,9 +15,9 @@ class CalendarCsvParserTest {
String.join(", ", CalendarCsvParser.HEADERS) +
"\n" +
"""
- WEEKDAYS,1,1,1,1,1,0,0,2025-01-01, 2025-12-31
- WEEKEND,0,0,0,0,0,1,1,2025-02-03, 2025-11-20
- """;
+ WEEKDAYS,1,1,1,1,1,0,0,2025-01-01, 2025-12-31
+ WEEKEND,0,0,0,0,0,1,1,2025-02-03, 2025-11-20
+ """;
private final CalendarCsvParser subject = new CalendarCsvParser(
DataImportIssueStore.NOOP,
CsvReader.parse(DEFAUT_INPUT)
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/delay/TripTimeDelayCsvParserTest.java b/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/delay/TripTimeDelayCsvParserTest.java
index 8c7e99921c2..54d350109af 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/delay/TripTimeDelayCsvParserTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/empiricaldelay/internal/csvinput/delay/TripTimeDelayCsvParserTest.java
@@ -12,10 +12,10 @@
class TripTimeDelayCsvParserTest {
private static final String DEFAUT_INPUT = """
- empirical_delay_service_id, trip_id, stop_id, stop_sequence, p50, p90
- WEEKDAYS, VYG:ServiceJourney:BUS-2280_374435-R, NSR:Quay:1, 1, 2, 8
- WEEKEND, RUT:ServiceJourney:bc0092f0102605437e3e49cc3a88d0ba, NSR:Quay:10001, 39, 0, 200
- """;
+ empirical_delay_service_id, trip_id, stop_id, stop_sequence, p50, p90
+ WEEKDAYS, VYG:ServiceJourney:BUS-2280_374435-R, NSR:Quay:1, 1, 2, 8
+ WEEKEND, RUT:ServiceJourney:bc0092f0102605437e3e49cc3a88d0ba, NSR:Quay:10001, 39, 0, 200
+ """;
private static final String FEED_ID = "F";
private final TripTimeDelayCsvParser subject = new TripTimeDelayCsvParser(
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/AtlantaFareServiceTest.java b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/AtlantaFareServiceTest.java
index 8c94a5e716a..28c944e0b2c 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/AtlantaFareServiceTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/AtlantaFareServiceTest.java
@@ -286,8 +286,8 @@ private static Itinerary createItinerary(String agencyId, String shortName, long
.withMode(TransitMode.BUS)
.build();
- int start = (int) (T11_00 + (startTimeMins * 60));
- int end = (int) (T11_00 + ((startTimeMins + 12) * 60));
+ int start = (int) (T11_00 + startTimeMins * 60);
+ int end = (int) (T11_00 + (startTimeMins + 12) * 60);
return newItinerary(Place.forStop(firstStop), start)
.bus(route, 1, start, end, Place.forStop(lastStop))
.build();
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareServiceTest.java b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareServiceTest.java
index e64a3a9d98e..7d3c6285ff6 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareServiceTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareServiceTest.java
@@ -114,11 +114,12 @@ private static List createTestCases() {
.withTransferDuration(fiveMinutes)
.build();
- FareAttribute fareAttributeD = FareAttribute.of(new FeedScopedId(FEED_ID, "D"))
- .withPrice(D_PRICE)
- .withTransferDuration(fiveMinutes)
- //.setAgency(agency1.getId().getId())
- .build();
+ FareAttribute fareAttributeD =
+ FareAttribute.of(new FeedScopedId(FEED_ID, "D"))
+ .withPrice(D_PRICE)
+ .withTransferDuration(fiveMinutes)
+ //.setAgency(agency1.getId().getId())
+ .build();
FareAttribute fareAttributeABC = FareAttribute.of(new FeedScopedId(FEED_ID, "ABC"))
.withPrice(ABC_PRICE)
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/OrcaFareServiceTest.java b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/OrcaFareServiceTest.java
index 8e97846fdff..bd3c6425b0a 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/OrcaFareServiceTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/OrcaFareServiceTest.java
@@ -180,7 +180,7 @@ private static void assertLegFareEquals(int fare, Leg leg, ItineraryFare fares,
// Check for transfer status - transfers are when this leg has fare products but pays no additional cost
// (i.e., fare = 0 for this leg because it's covered by a previous fare product)
- var hasTransfer = (fare == 0 && !legFareProducts.isEmpty());
+ var hasTransfer = fare == 0 && !legFareProducts.isEmpty();
assertEquals(hasXfer, hasTransfer, "Incorrect transfer leg fare product status.");
}
@@ -834,8 +834,8 @@ private static Itinerary createItinerary(
.withGtfsType(transitMode)
.build();
- int start = (int) (T11_00 + (startTimeMins * 60));
- int end = (int) (T11_00 + ((startTimeMins + 12) * 60));
+ int start = (int) (T11_00 + startTimeMins * 60);
+ int end = (int) (T11_00 + (startTimeMins + 12) * 60);
return newItinerary(Place.forStop(firstStop), start)
.transit(route, tripId, start, end, 5, 7, Place.forStop(lastStop), null, null, null)
.build();
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/FreeTransferInNetworkTest.java b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/FreeTransferInNetworkTest.java
index 8f607033d55..7b3a9eb2c41 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/FreeTransferInNetworkTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/FreeTransferInNetworkTest.java
@@ -73,10 +73,8 @@ void singleLeg() {
void severalLegs() {
var i1 = newItinerary(A, 0).bus(ROUTE, 1, 0, 50, B).bus(ROUTE, 1, 0, 50, C).build();
var result = service.calculateFares(i1);
- i1
- .listTransitLegs()
- .forEach(l -> {
- assertThat(result.offersForLeg(l)).containsExactly(FareOffer.of(l.startTime(), REGULAR));
- });
+ i1.listTransitLegs().forEach(l -> {
+ assertThat(result.offersForLeg(l)).containsExactly(FareOffer.of(l.startTime(), REGULAR));
+ });
}
}
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/WildcardNetworkTransferTest.java b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/WildcardNetworkTransferTest.java
index 83cc4e8e460..e335b7c19a3 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/WildcardNetworkTransferTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/fares/service/gtfs/v2/WildcardNetworkTransferTest.java
@@ -18,7 +18,9 @@ class WildcardNetworkTransferTest implements FareTestConstants {
private final GtfsFaresV2Service SERVICE = GtfsFaresV2Service.of()
.withLegRules(
// wildcard rule, matches everything
- FareLegRule.of(id(1), FARE_PRODUCT_A).withLegGroupId(LEG_GROUP_A).build()
+ FareLegRule.of(id(1), FARE_PRODUCT_A)
+ .withLegGroupId(LEG_GROUP_A)
+ .build()
)
.withTransferRules(
// monthly pass with unlimited transfers
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIndexTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIndexTest.java
index addda55d3aa..44c196c5a68 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIndexTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIndexTest.java
@@ -136,11 +136,9 @@ void routesAtGroup() {
var groupStop = (GroupStop) st1.getStop();
assertThat(groupStop.getChildLocations()).isNotEmpty();
- groupStop
- .getChildLocations()
- .forEach(child -> {
- assertThat(index.findRoutes(child)).containsExactly(ROUTE_2);
- assertThat(index.findRoutes(child)).containsExactly(ROUTE_2);
- });
+ groupStop.getChildLocations().forEach(child -> {
+ assertThat(index.findRoutes(child)).containsExactly(ROUTE_2);
+ assertThat(index.findRoutes(child)).containsExactly(ROUTE_2);
+ });
}
}
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIntegrationTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIntegrationTest.java
index 2df098e9a12..9cb705147d7 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIntegrationTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexIntegrationTest.java
@@ -43,8 +43,6 @@
*/
public class FlexIntegrationTest {
- private static final FlexParameters FLEX_PARAMETERS = FlexParameters.defaultValues();
-
public static final GenericLocation OUTSIDE_FLEX_ZONE = GenericLocation.fromCoordinate(
33.7552,
-84.4631
@@ -82,14 +80,11 @@ static void setup() {
FlexIntegrationTestData.COBB_FLEX_GTFS
)
);
- service = TestServerContext.createServerContext(
- graph,
+ var transitService = TestServerContext.createTransitService(
transitRepository,
- transferRepository,
- model.fareServiceFactory().makeFareService(),
- null,
- FLEX_PARAMETERS
- ).routingService();
+ transferRepository
+ );
+ service = TestServerContext.createRoutingService(graph, transitService, transferRepository);
}
@Test
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexRouterTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexRouterTest.java
index 149be797df1..331e98f69e6 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexRouterTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/FlexRouterTest.java
@@ -56,7 +56,9 @@ void runningDateToServiceDateAggregation() {
@Test
void runningDateToServiceDateAggregationWithFiltering() {
var subject = setupEnvironment(
- TripRequest.of().withIncludeRoutes(List.of(new FeedScopedId("F", ROUTE1))).build()
+ TripRequest.of()
+ .withIncludeRoutes(List.of(new FeedScopedId("F", ROUTE1)))
+ .build()
);
var dates = subject.flexServiceDates();
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/flexpathcalculator/FlexPathTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/flexpathcalculator/FlexPathTest.java
index 46ab8d0c327..3d37de02af4 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/flexpathcalculator/FlexPathTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/flexpathcalculator/FlexPathTest.java
@@ -13,8 +13,10 @@
class FlexPathTest {
private static final int THIRTY_MINS_IN_SECONDS = (int) Duration.ofMinutes(30).toSeconds();
- private static final FlexPath PATH = new FlexPath(10_000, THIRTY_MINS_IN_SECONDS, () ->
- LineStrings.SIMPLE
+ private static final FlexPath PATH = new FlexPath(
+ 10_000,
+ THIRTY_MINS_IN_SECONDS,
+ () -> LineStrings.SIMPLE
);
static List cases() {
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripIntegrationTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripIntegrationTest.java
index ffec571f4a9..83ef8051177 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripIntegrationTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripIntegrationTest.java
@@ -5,6 +5,7 @@
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.opentripplanner.test.support.PolylineAssert.assertThatPolylinesAreEqual;
+import io.micrometer.core.instrument.Metrics;
import java.time.LocalDateTime;
import java.time.Month;
import java.util.List;
@@ -17,7 +18,6 @@
import org.opentripplanner.api.model.geometry.EncodedPolyline;
import org.opentripplanner.apis.transmodel.model.TripTimeOnDateHelper;
import org.opentripplanner.core.model.id.FeedScopedId;
-import org.opentripplanner.ext.fares.service.gtfs.v1.DefaultFareService;
import org.opentripplanner.ext.flex.FlexIntegrationTestData;
import org.opentripplanner.graph_builder.module.ValidateAndInterpolateStopTimesForEachTrip;
import org.opentripplanner.model.GenericLocation;
@@ -28,15 +28,17 @@
import org.opentripplanner.routing.algorithm.raptoradapter.router.TransitRouter;
import org.opentripplanner.routing.api.request.RouteRequest;
import org.opentripplanner.routing.framework.DebugTimingAggregator;
+import org.opentripplanner.routing.linking.VertexLinkerTestFactory;
import org.opentripplanner.routing.linking.mapping.LinkingContextRequestMapper;
-import org.opentripplanner.standalone.api.OtpServerRequestContext;
import org.opentripplanner.standalone.api.TestServerContext;
+import org.opentripplanner.standalone.config.RouterConfig;
import org.opentripplanner.street.graph.Graph;
import org.opentripplanner.street.linking.TemporaryVerticesContainer;
import org.opentripplanner.transfer.regular.TransferRepository;
import org.opentripplanner.transfer.regular.TransferServiceTestFactory;
import org.opentripplanner.transit.model.network.grouppriority.TransitGroupPriorityService;
import org.opentripplanner.transit.service.TransitRepository;
+import org.opentripplanner.transit.service.TransitService;
import org.opentripplanner.utils.time.ServiceDateUtils;
/**
@@ -96,11 +98,9 @@ void parseCobbCountyAsScheduledDeviatedTrip() {
void flexTripInTransitMode() {
var feedId = transitRepository.getFeedIds().iterator().next();
- var serverContext = TestServerContext.createServerContext(
- graph,
+ var transitService = TestServerContext.createTransitService(
transitRepository,
- transferRepository,
- new DefaultFareService()
+ transferRepository
);
// from zone 3 to zone 2
@@ -113,7 +113,7 @@ void flexTripInTransitMode() {
"Zone 1 - PUBLIX Super Market,Zone 1 Collection Point"
);
- var itineraries = getItineraries(from, to, serverContext);
+ var itineraries = getItineraries(from, to, transitService);
assertEquals(2, itineraries.size());
@@ -145,11 +145,9 @@ void flexTripInTransitMode() {
void intermediateEstimatedCallsSkipFlexWindowStops() {
var feedId = transitRepository.getFeedIds().iterator().next();
- var serverContext = TestServerContext.createServerContext(
- graph,
+ var transitService = TestServerContext.createTransitService(
transitRepository,
- transferRepository,
- new DefaultFareService()
+ transferRepository
);
var from = GenericLocation.fromStopId(
@@ -161,7 +159,7 @@ void intermediateEstimatedCallsSkipFlexWindowStops() {
"Zone 1 - PUBLIX Super Market,Zone 1 Collection Point"
);
- var leg = getItineraries(from, to, serverContext).get(0).legs().get(0);
+ var leg = getItineraries(from, to, transitService).get(0).legs().get(0);
// The flexible-area stop is exposed as an intermediate stop on the leg ...
var intermediateStopIds = leg
@@ -212,7 +210,7 @@ static void setup() {
private static List getItineraries(
GenericLocation from,
GenericLocation to,
- OtpServerRequestContext serverContext
+ TransitService transitService
) {
var zoneId = ZoneIds.NEW_YORK;
var dateTime = LocalDateTime.of(2021, Month.DECEMBER, 16, 12, 0).atZone(zoneId);
@@ -226,24 +224,29 @@ private static List getItineraries(
var transitStartOfTime = ServiceDateUtils.asStartOfService(request.dateTime(), zoneId);
var additionalSearchDays = AdditionalSearchDays.defaults(dateTime);
+ var vertexLinker = VertexLinkerTestFactory.of(graph);
+ var linkingContextFactory = TestServerContext.createLinkingContextFactory(
+ graph,
+ vertexLinker,
+ transitService
+ );
+
try (var temporaryVerticesContainer = new TemporaryVerticesContainer()) {
var linkingRequest = LinkingContextRequestMapper.map(request);
- var linkingContext = serverContext
- .linkingContextFactory()
- .create(temporaryVerticesContainer, linkingRequest);
+ var linkingContext = linkingContextFactory.create(temporaryVerticesContainer, linkingRequest);
var result = TransitRouter.route(
request,
- serverContext.transitService(),
- serverContext.graph(),
- serverContext.raptorConfig(),
- serverContext.meterRegistry(),
- serverContext.streetDetailsService(),
- serverContext.transferService(),
- serverContext.flexParameters(),
- serverContext.rideHailingServices(),
- serverContext.dataOverlayParameterBindings(),
- serverContext.sorlandsbanenService(),
- serverContext.viaTransferResolver(),
+ transitService,
+ graph,
+ TestServerContext.createRaptorConfig(),
+ Metrics.globalRegistry,
+ TestServerContext.createStreetDetailsService(),
+ TransferServiceTestFactory.transferService(transferRepository),
+ RouterConfig.DEFAULT.flexParameters(),
+ List.of(),
+ null,
+ null,
+ TestServerContext.createViaTransferResolver(graph, transitService),
TransitGroupPriorityService.empty(),
transitStartOfTime,
additionalSearchDays,
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/UnscheduledTripTest.java b/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/UnscheduledTripTest.java
index 4ddc998ea49..ea5d079d5fb 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/UnscheduledTripTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/flex/trip/UnscheduledTripTest.java
@@ -685,7 +685,7 @@ private static String arrivalToStr(StopTime st) {
private static String timeToStr(int time, int start, int end) {
return time == MISSING_VALUE
- ? (TimeUtils.timeToStrCompact(start) + " - " + TimeUtils.timeToStrCompact(end))
+ ? TimeUtils.timeToStrCompact(start) + " - " + TimeUtils.timeToStrCompact(end)
: TimeUtils.timeToStrCompact(time);
}
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/geocoder/LuceneIndexTest.java b/application/src/ext-test/java/org/opentripplanner/ext/geocoder/LuceneIndexTest.java
index 2273e25e497..d9ae14058df 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/geocoder/LuceneIndexTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/geocoder/LuceneIndexTest.java
@@ -126,9 +126,9 @@ static void setup() {
transitRepository.index();
var transitService = new DefaultTransitService(transitRepository) {
private final Multimap modes = ImmutableMultimap.<
- StopLocation,
- TransitMode
- >builder()
+ StopLocation,
+ TransitMode
+ >builder()
.putAll(WESTHAFEN, FERRY, BUS)
.build();
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/geocoder/SerializationTest.java b/application/src/ext-test/java/org/opentripplanner/ext/geocoder/SerializationTest.java
index bedfd6c7f96..9376c299ced 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/geocoder/SerializationTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/geocoder/SerializationTest.java
@@ -12,8 +12,31 @@
class SerializationTest {
private static final String STOP_CLUSTER_JSON = """
- {
- "primary" : {
+ {
+ "primary" : {
+ "id" : "F:123",
+ "code" : "aaa",
+ "type" : "STOP",
+ "name" : "A stop",
+ "coordinate" : {
+ "lat" : 1.0,
+ "lon" : 2.0
+ },
+ "modes" : [
+ "RAIL"
+ ],
+ "agencies" : [
+ {
+ "id" : "F:a1",
+ "name" : "Agency"
+ }
+ ],
+ "feedPublisher" : {
+ "name" : "Publisher"
+ }
+ },
+ "secondaries" : [
+ {
"id" : "F:123",
"code" : "aaa",
"type" : "STOP",
@@ -34,33 +57,10 @@ class SerializationTest {
"feedPublisher" : {
"name" : "Publisher"
}
- },
- "secondaries" : [
- {
- "id" : "F:123",
- "code" : "aaa",
- "type" : "STOP",
- "name" : "A stop",
- "coordinate" : {
- "lat" : 1.0,
- "lon" : 2.0
- },
- "modes" : [
- "RAIL"
- ],
- "agencies" : [
- {
- "id" : "F:a1",
- "name" : "Agency"
- }
- ],
- "feedPublisher" : {
- "name" : "Publisher"
- }
- }
- ]
- }
- """;
+ }
+ ]
+ }
+ """;
@Test
void serialize() {
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/ojp/mapping/RouteRequestMapperTest.java b/application/src/ext-test/java/org/opentripplanner/ext/ojp/mapping/RouteRequestMapperTest.java
index 73dd4b4828e..0cd5a3a4de0 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/ojp/mapping/RouteRequestMapperTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/ojp/mapping/RouteRequestMapperTest.java
@@ -201,9 +201,7 @@ private static List transitFilterCases() {
new LineDirectionFilterStructure()
.withExclude(false)
.withLine(
- (new LineDirectionStructure().withLineRef(
- new LineRefStructure().withValue("F:route1")
- ))
+ new LineDirectionStructure().withLineRef(new LineRefStructure().withValue("F:route1"))
)
)
),
@@ -213,9 +211,9 @@ private static List transitFilterCases() {
new LineDirectionFilterStructure()
.withExclude(true)
.withLine(
- (new LineDirectionStructure().withLineRef(
- new LineRefStructure().withValue("F:agency1")
- ))
+ new LineDirectionStructure().withLineRef(
+ new LineRefStructure().withValue("F:agency1")
+ )
)
)
),
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolverTest.java b/application/src/ext-test/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolverTest.java
index 11a10acc4e6..07c2152bc03 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolverTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolverTest.java
@@ -180,7 +180,7 @@ private static TransitService makeTransitService(
transitRepository.addTripPattern(pattern.getId(), pattern);
var serviceCode = pattern.getScheduledTimetable().getTripTimes().getFirst().getServiceCode();
- transitRepository.getServiceCodes().put(pattern.getId(), serviceCode);
+ transitRepository.putServiceCode(pattern.getId(), serviceCode);
calendarServiceData.putServiceDatesForServiceId(pattern.getId(), List.of(serviceDate));
});
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/ridehailing/configure/RideHailingServicesModuleTest.java b/application/src/ext-test/java/org/opentripplanner/ext/ridehailing/configure/RideHailingServicesModuleTest.java
index ae6efa685a0..325aa292231 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/ridehailing/configure/RideHailingServicesModuleTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/ridehailing/configure/RideHailingServicesModuleTest.java
@@ -15,17 +15,17 @@ class RideHailingServicesModuleTest {
void buildServices() throws JsonProcessingException {
var module = new RideHailingServicesModule();
var json = """
- {
- "rideHailingServices": [
- {
- "type": "uber-car-hailing",
- "clientId": "secret-id",
- "clientSecret": "very-secret",
- "wheelchairAccessibleProductId": "product-id-accessible-by-wheelchair"
- }
- ]
- }
- """;
+ {
+ "rideHailingServices": [
+ {
+ "type": "uber-car-hailing",
+ "clientId": "secret-id",
+ "clientSecret": "very-secret",
+ "wheelchairAccessibleProductId": "product-id-accessible-by-wheelchair"
+ }
+ ]
+ }
+ """;
var jsonNode = ObjectMappers.ignoringExtraFields().readTree(json);
var services = module.services(new RouterConfig(jsonNode, json, false));
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/VectorTilesResourceTest.java b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/VectorTilesResourceTest.java
index 290720109b3..d2aa6421561 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/VectorTilesResourceTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/VectorTilesResourceTest.java
@@ -5,9 +5,9 @@
import org.glassfish.grizzly.http.server.Request;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
-import org.opentripplanner.ext.fares.service.gtfs.v1.DefaultFareService;
+import org.opentripplanner.routing.impl.TransitAlertServiceImpl;
import org.opentripplanner.standalone.api.TestServerContext;
-import org.opentripplanner.street.graph.Graph;
+import org.opentripplanner.standalone.config.RouterConfig;
import org.opentripplanner.test.support.HttpForTest;
import org.opentripplanner.transfer.regular.TransferServiceTestFactory;
import org.opentripplanner.transit.service.TransitRepository;
@@ -18,19 +18,17 @@ class VectorTilesResourceTest {
void tileJson() {
// the Grizzly request is awful to instantiate, using Mockito
var grizzlyRequest = Mockito.mock(Request.class);
- var serverContext = TestServerContext.createServerContext(
- new Graph(),
+ var transitService = TestServerContext.createTransitService(
new TransitRepository(),
- TransferServiceTestFactory.defaultTransferRepository(),
- new DefaultFareService()
+ TransferServiceTestFactory.defaultTransferRepository()
);
var resource = new VectorTilesResource(
- serverContext.transitService(),
- serverContext.vectorTileConfig(),
- serverContext.worldEnvelopeService(),
- serverContext.vehicleRentalService(),
- serverContext.vehicleParkingService(),
- serverContext.transitAlertService(),
+ transitService,
+ RouterConfig.DEFAULT.vectorTileConfig(),
+ TestServerContext.createWorldEnvelopeService(),
+ TestServerContext.createVehicleRentalService(),
+ TestServerContext.createVehicleParkingService(),
+ new TransitAlertServiceImpl(),
grizzlyRequest,
"default"
);
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopsLayerBuilderTest.java b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopsLayerBuilderTest.java
index bddb5cfb7db..7881ea2f564 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopsLayerBuilderTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopsLayerBuilderTest.java
@@ -23,22 +23,22 @@ class AreaStopsLayerBuilderTest {
private static final FeedScopedId ID = new FeedScopedId("FEED", "ID");
private static final I18NString NAME = I18NString.of("Test stop");
private static final String CONFIG = """
- {
- "vectorTiles": {
- "layers" : [
- {
- "name": "areaStops",
- "type": "AreaStop",
- "mapper": "OTPRR",
- "maxZoom": 20,
- "minZoom": 14,
- "cacheMaxSeconds": 60,
- "expansionFactor": 0
- }
- ]
- }
+ {
+ "vectorTiles": {
+ "layers" : [
+ {
+ "name": "areaStops",
+ "type": "AreaStop",
+ "mapper": "OTPRR",
+ "maxZoom": 20,
+ "minZoom": 14,
+ "cacheMaxSeconds": 60,
+ "expansionFactor": 0
+ }
+ ]
}
- """;
+ }
+ """;
private static final LayerParameters LAYER_CONFIG =
VectorTileConfig.mapVectorTilesParameters(newNodeAdapterForTest(CONFIG), "vectorTiles")
.layers()
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingGroupsLayerTest.java b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingGroupsLayerTest.java
index 9f597cc6fbc..b821852c558 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingGroupsLayerTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingGroupsLayerTest.java
@@ -89,22 +89,22 @@ public void vehicleParkingGroupGeometryTest() {
repository.updateVehicleParking(List.of(vehicleParking), List.of());
var config = """
- {
- "vectorTiles": {
- "layers" :[
- {
- "name": "vehicleParkingGroups",
- "type": "VehicleParkingGroup",
- "mapper": "Digitransit",
- "maxZoom": 20,
- "minZoom": 14,
- "cacheMaxSeconds": 600,
- "expansionFactor": 0
- }
- ]
- }
+ {
+ "vectorTiles": {
+ "layers" :[
+ {
+ "name": "vehicleParkingGroups",
+ "type": "VehicleParkingGroup",
+ "mapper": "Digitransit",
+ "maxZoom": 20,
+ "minZoom": 14,
+ "cacheMaxSeconds": 600,
+ "expansionFactor": 0
+ }
+ ]
}
- """;
+ }
+ """;
var nodeAdapter = newNodeAdapterForTest(config);
var tiles = VectorTileConfig.mapVectorTilesParameters(nodeAdapter, "vectorTiles");
assertEquals(1, tiles.layers().size());
@@ -159,7 +159,8 @@ public void digitransitVehicleParkingGroupPropertyMapperTranslationTest() {
}
private static class VehicleParkingGroupsLayerBuilderWithPublicGeometry
- extends VehicleParkingGroupsLayerBuilder {
+ extends VehicleParkingGroupsLayerBuilder
+ {
public VehicleParkingGroupsLayerBuilderWithPublicGeometry(
VehicleParkingService service,
@@ -176,7 +177,8 @@ public List findGeometries(Envelope query) {
}
private static class VehicleParkingGroupPropertyMapperWithPublicMap
- extends DigitransitVehicleParkingGroupPropertyMapper {
+ extends DigitransitVehicleParkingGroupPropertyMapper
+ {
public VehicleParkingGroupPropertyMapperWithPublicMap(Locale locale) {
super(locale);
diff --git a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingsLayerTest.java b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingsLayerTest.java
index 88e1346e2cf..d3b5a28ce16 100644
--- a/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingsLayerTest.java
+++ b/application/src/ext-test/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/VehicleParkingsLayerTest.java
@@ -84,22 +84,22 @@ public void vehicleParkingGeometryTest() {
repo.updateVehicleParking(List.of(vehicleParking), List.of());
var config = """
- {
- "vectorTiles": {
- "layers" : [
- {
- "name": "vehicleParking",
- "type": "VehicleParking",
- "mapper": "Stadtnavi",
- "maxZoom": 20,
- "minZoom": 14,
- "cacheMaxSeconds": 60,
- "expansionFactor": 0
- }
- ]
- }
+ {
+ "vectorTiles": {
+ "layers" : [
+ {
+ "name": "vehicleParking",
+ "type": "VehicleParking",
+ "mapper": "Stadtnavi",
+ "maxZoom": 20,
+ "minZoom": 14,
+ "cacheMaxSeconds": 60,
+ "expansionFactor": 0
+ }
+ ]
}
- """;
+ }
+ """;
var nodeAdapter = newNodeAdapterForTest(config);
var tiles = VectorTileConfig.mapVectorTilesParameters(nodeAdapter, "vectorTiles");
assertEquals(1, tiles.layers().size());
diff --git a/application/src/ext/java/org/opentripplanner/ext/accessibilityscore/DecorateWithAccessibilityScore.java b/application/src/ext/java/org/opentripplanner/ext/accessibilityscore/DecorateWithAccessibilityScore.java
index d90226a753f..aad1959a745 100644
--- a/application/src/ext/java/org/opentripplanner/ext/accessibilityscore/DecorateWithAccessibilityScore.java
+++ b/application/src/ext/java/org/opentripplanner/ext/accessibilityscore/DecorateWithAccessibilityScore.java
@@ -120,7 +120,7 @@ private float compute(StreetLeg leg) {
// a score 0.1, everything worse will give you a score of 0!
double slopeMalus = (maxSlopeExceeded * maxSlopeExceeded) / 10;
- score += (0.5 - slopeMalus);
+ score += 0.5 - slopeMalus;
boolean allEdgesAreAccessible = edges
.stream()
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/filter/CarpoolingRequestBuilder.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/filter/CarpoolingRequestBuilder.java
index ac212bf82a0..bd97a22cadf 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/filter/CarpoolingRequestBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/filter/CarpoolingRequestBuilder.java
@@ -42,9 +42,8 @@ public CarpoolingRequestBuilder() {}
.accessEgress()
.maxDuration()
.valueOf(StreetMode.WALK);
- this.searchWindow = request.searchWindow() == null
- ? DEFAULT_SEARCH_WINDOW
- : request.searchWindow();
+ this.searchWindow =
+ request.searchWindow() == null ? DEFAULT_SEARCH_WINDOW : request.searchWindow();
}
public CarpoolingRequestBuilder withAccessOrEgress(AccessEgressType accessOrEgress) {
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/internal/CarpoolItineraryMapper.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/internal/CarpoolItineraryMapper.java
index 82db60442da..41a1976736e 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/internal/CarpoolItineraryMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/internal/CarpoolItineraryMapper.java
@@ -257,12 +257,10 @@ private static Itinerary buildItinerary(
Place pickupPlace = makePlace(pickupVertex);
Place dropoffPlace = makePlace(dropoffVertex);
- Vertex startBoundaryVertex = walkToPickup != null
- ? walkToPickup.states.getFirst().getVertex()
- : pickupVertex;
- Vertex endBoundaryVertex = walkFromDropoff != null
- ? walkFromDropoff.states.getLast().getVertex()
- : dropoffVertex;
+ Vertex startBoundaryVertex =
+ walkToPickup != null ? walkToPickup.states.getFirst().getVertex() : pickupVertex;
+ Vertex endBoundaryVertex =
+ walkFromDropoff != null ? walkFromDropoff.states.getLast().getVertex() : dropoffVertex;
Place itineraryStart = boundaryPlace(startLabel, ORIGIN_DEFAULT_NAME, startBoundaryVertex);
Place itineraryEnd = boundaryPlace(endLabel, DESTINATION_DEFAULT_NAME, endBoundaryVertex);
@@ -349,9 +347,10 @@ static BookingInfo toBookingInfo(
if (contact.getPhoneNumber() != null) {
bookingMethods.add(BookingMethod.CALL_OFFICE);
}
- String effectiveUrl = contact.getBookingUrl() == null
- ? null
- : appendPassengerCoordinates(contact.getBookingUrl(), pickup, dropoff);
+ String effectiveUrl =
+ contact.getBookingUrl() == null
+ ? null
+ : appendPassengerCoordinates(contact.getBookingUrl(), pickup, dropoff);
if (effectiveUrl != null) {
bookingMethods.add(BookingMethod.ONLINE);
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolLeg.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolLeg.java
index 5ca62094bd3..aeddbf24b91 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolLeg.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolLeg.java
@@ -22,7 +22,6 @@
import org.opentripplanner.model.plan.walkstep.WalkStep;
import org.opentripplanner.routing.alertpatch.TransitAlert;
import org.opentripplanner.street.model.elevation.ElevationProfile;
-import org.opentripplanner.street.model.note.StreetNote;
import org.opentripplanner.transfer.constrained.model.ConstrainedTransfer;
import org.opentripplanner.transit.model.basic.TransitMode;
import org.opentripplanner.transit.model.network.Route;
@@ -288,11 +287,6 @@ public List listWalkSteps() {
return Leg.super.listWalkSteps();
}
- @Override
- public Set listStreetNotes() {
- return Leg.super.listStreetNotes();
- }
-
@Override
public Set listTransitAlerts() {
return transitAlerts;
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolTrip.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolTrip.java
index c92e1071407..a670599e7c0 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolTrip.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/model/CarpoolTrip.java
@@ -55,7 +55,8 @@
*/
public class CarpoolTrip
extends AbstractTransitEntity
- implements LogInfo {
+ implements LogInfo
+{
/** Default total capacity (including driver) when no capacity information is provided. */
public static final int DEFAULT_TOTAL_CAPACITY = 5;
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/updater/CarpoolSiriMapper.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/updater/CarpoolSiriMapper.java
index 240c009c2c0..9108563ed4c 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/updater/CarpoolSiriMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/updater/CarpoolSiriMapper.java
@@ -103,8 +103,8 @@ public CarpoolTrip mapSiriToCarpoolTrip(EstimatedVehicleJourney journey) {
for (int i = 0; i < activeCalls.size(); i++) {
EstimatedCall call = activeCalls.get(i);
- boolean isFirst = (i == 0);
- boolean isLast = (i == activeCalls.size() - 1);
+ boolean isFirst = i == 0;
+ boolean isLast = i == activeCalls.size() - 1;
var stop = buildCarpoolStopForPosition(call, tripId, i, isFirst, isLast);
stops.add(stop);
@@ -144,9 +144,10 @@ public CarpoolTrip mapSiriToCarpoolTrip(EstimatedVehicleJourney journey) {
// trees across the network and degrades every later request. When the destination has no
// latest expected arrival, its scheduled arrival plus the default deviation budget is used —
// the same default the destination stop itself receives when the feed omits a latest arrival.
- var latestArrival = lastStop.getLatestExpectedArrivalTime() != null
- ? lastStop.getLatestExpectedArrivalTime()
- : endTime.plus(CarpoolStop.DEFAULT_DEVIATION_BUDGET);
+ var latestArrival =
+ lastStop.getLatestExpectedArrivalTime() != null
+ ? lastStop.getLatestExpectedArrivalTime()
+ : endTime.plus(CarpoolStop.DEFAULT_DEVIATION_BUDGET);
var tripDuration = Duration.between(startTime, latestArrival);
if (tripDuration.compareTo(CarpoolTrip.MAX_TRIP_DURATION) > 0) {
throw new IllegalArgumentException(
@@ -347,9 +348,10 @@ private int extractOnboardCount(String tripId, EstimatedCall call) {
*/
private Duration extractDeviationBudget(EstimatedCall call) {
var latestExpected = call.getLatestExpectedArrivalTime();
- var arrivalTime = call.getExpectedArrivalTime() != null
- ? call.getExpectedArrivalTime()
- : call.getAimedArrivalTime();
+ var arrivalTime =
+ call.getExpectedArrivalTime() != null
+ ? call.getExpectedArrivalTime()
+ : call.getAimedArrivalTime();
if (latestExpected == null || arrivalTime == null) {
return CarpoolStop.DEFAULT_DEVIATION_BUDGET;
@@ -397,9 +399,10 @@ private void validateEstimatedCallOrder(List calls) {
// Validate intermediate calls are between first and last
for (int i = 1; i < calls.size() - 1; i++) {
EstimatedCall intermediateCall = calls.get(i);
- ZonedDateTime intermediateTime = intermediateCall.getAimedDepartureTime() != null
- ? intermediateCall.getAimedDepartureTime()
- : intermediateCall.getAimedArrivalTime();
+ ZonedDateTime intermediateTime =
+ intermediateCall.getAimedDepartureTime() != null
+ ? intermediateCall.getAimedDepartureTime()
+ : intermediateCall.getAimedArrivalTime();
if (intermediateTime == null) {
LOG.info("Intermediate call at index {} has no timing information", i);
@@ -435,9 +438,10 @@ private CarpoolStop toCarpoolStop(
var flexibleArea = toFlexibleArea(call);
var circleLocation = flexibleArea.getCircularArea();
var legacyGeometry = flexibleArea.getPolygon();
- var centroid = circleLocation == null
- ? toWgsCoordinate(toPolygon(legacyGeometry))
- : toWgsCoordinate(circleLocation);
+ var centroid =
+ circleLocation == null
+ ? toWgsCoordinate(toPolygon(legacyGeometry))
+ : toWgsCoordinate(circleLocation);
return CarpoolStop.of(new FeedScopedId(feedId, id))
.withCoordinate(centroid)
diff --git a/application/src/ext/java/org/opentripplanner/ext/carpooling/util/CarReachableVertexSnapper.java b/application/src/ext/java/org/opentripplanner/ext/carpooling/util/CarReachableVertexSnapper.java
index f8827383e7d..0b424172885 100644
--- a/application/src/ext/java/org/opentripplanner/ext/carpooling/util/CarReachableVertexSnapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/carpooling/util/CarReachableVertexSnapper.java
@@ -265,8 +265,7 @@ private boolean probeEscapes(
SphericalDistanceLibrary.fastDistance(
originCoordinate,
state.getVertex().getCoordinate()
- ) >=
- minCarEscapeMeters
+ ) >= minCarEscapeMeters
) {
escaped[0] = true;
return true;
diff --git a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/EdgeUpdaterModule.java b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/EdgeUpdaterModule.java
index f5ff071cf70..8172a675938 100644
--- a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/EdgeUpdaterModule.java
+++ b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/EdgeUpdaterModule.java
@@ -3,6 +3,8 @@
import org.opentripplanner.ext.dataoverlay.configuration.TimeUnit;
import org.opentripplanner.graph_builder.model.GraphBuilderModule;
import org.opentripplanner.street.graph.Graph;
+import org.opentripplanner.street.model.edge.StreetEdge;
+import org.opentripplanner.utils.collection.ListUtils;
/**
* This class allows updating the graph with the grid data from generic .nc file in accordance with
@@ -31,7 +33,7 @@ public void buildGraph() {
GenericEdgeUpdater genericEdgeUpdater = new GenericEdgeUpdater(
dataFile,
timeFormat,
- graph.getStreetEdges()
+ ListUtils.ofIterable(graph.findEdges(StreetEdge.class))
);
genericEdgeUpdater.updateEdges();
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/GenericEdgeUpdater.java b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/GenericEdgeUpdater.java
index 650fe8a70b8..6d63ddd974b 100644
--- a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/GenericEdgeUpdater.java
+++ b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/GenericEdgeUpdater.java
@@ -133,7 +133,7 @@ private void updateEdge(StreetEdge streetEdge) {
edgesUpdated++;
- if (LOG.isInfoEnabled() && (edgesUpdated % REPORT_EVERY_N_EDGE) == 0) {
+ if (LOG.isInfoEnabled() && edgesUpdated % REPORT_EVERY_N_EDGE == 0) {
LOG.info(String.format("%d / %d street edges updated", edgesUpdated, streetEdges.size()));
}
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/routing/DataOverlayContext.java b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/routing/DataOverlayContext.java
index 451f114ec7a..95bff9c1077 100644
--- a/application/src/ext/java/org/opentripplanner/ext/dataoverlay/routing/DataOverlayContext.java
+++ b/application/src/ext/java/org/opentripplanner/ext/dataoverlay/routing/DataOverlayContext.java
@@ -34,8 +34,6 @@ public DataOverlayContext(
/**
* Builds the {@link ExtensionRequestContext} list for a request, given the app-singleton
* {@link DataOverlayParameterBindings}.
- *
- * @return an immutable list.
*/
public static List listExtensionRequestContexts(
DataOverlayParameters dataOverlayRequest,
diff --git a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/DefaultScalarColorPalette.java b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/DefaultScalarColorPalette.java
index 3e6ae85ed10..49cae17c001 100644
--- a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/DefaultScalarColorPalette.java
+++ b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/DefaultScalarColorPalette.java
@@ -9,8 +9,11 @@
*
* @author laurent
*/
-public record DefaultScalarColorPalette(double min, double max, double maxMax) implements
- ScalarColorPalette {
+public record DefaultScalarColorPalette(
+ double min,
+ double max,
+ double maxMax
+) implements ScalarColorPalette {
@Override
public Color getColor(double value) {
if (value > max) {
diff --git a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/EdgeVertexTileRenderer.java b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/EdgeVertexTileRenderer.java
index 9525f168ab3..ca7170d92ce 100644
--- a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/EdgeVertexTileRenderer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/EdgeVertexTileRenderer.java
@@ -237,8 +237,8 @@ public void renderTile(TileRenderContext context) {
}
public interface EdgeVertexRenderer {
- Comparator DEFAULT_VERTEX_COMPARATOR = Comparator.comparing((Vertex v) ->
- v instanceof StreetVertex
+ Comparator DEFAULT_VERTEX_COMPARATOR = Comparator.comparing(
+ (Vertex v) -> v instanceof StreetVertex
).reversed();
Comparator DEFAULT_EDGE_COMPARATOR = Comparator.comparing(
(Edge e) -> e.getGeometry() != null
diff --git a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/ElevationEdgeRenderer.java b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/ElevationEdgeRenderer.java
index c5c6df822a5..9d81a8e5300 100644
--- a/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/ElevationEdgeRenderer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/debugrastertiles/ElevationEdgeRenderer.java
@@ -83,11 +83,12 @@ private Double findElevationForVertex(Vertex v) {
.getIncomingStreetEdges()
.stream()
.filter(StreetEdge::hasElevationExtension)
- .map(streetEdge ->
- streetEdge
- .getElevationProfile()
- .getCoordinate(streetEdge.getElevationProfile().size() - 1)
- .y
+ .map(
+ streetEdge ->
+ streetEdge
+ .getElevationProfile()
+ .getCoordinate(streetEdge.getElevationProfile().size() - 1)
+ .y
),
v
.getOutgoingStreetEdges()
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/BufferedEdgeProcessor.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/BufferedEdgeProcessor.java
index ee01355d91f..added2477ee 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/BufferedEdgeProcessor.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/BufferedEdgeProcessor.java
@@ -37,18 +37,16 @@ public void applyNames(Collection unnamedEdges) {
);
final AtomicInteger namesApplied = new AtomicInteger(0);
- unnamedEdges
- .parallelStream()
- .forEach(edgeOnLevel -> {
- var buffer = preciseBufferFactory.preciseBuffer(edgeOnLevel.edge().getGeometry());
- if (assigner.assignNameToEdge(edgeOnLevel, buffer)) {
- namesApplied.incrementAndGet();
- }
+ unnamedEdges.parallelStream().forEach(edgeOnLevel -> {
+ var buffer = preciseBufferFactory.preciseBuffer(edgeOnLevel.edge().getGeometry());
+ if (assigner.assignNameToEdge(edgeOnLevel, buffer)) {
+ namesApplied.incrementAndGet();
+ }
- // Keep lambda! A method-ref would cause incorrect class and line number to be logged
- // noinspection Convert2MethodRef
- progress.step(m -> logger.info(m));
- });
+ // Keep lambda! A method-ref would cause incorrect class and line number to be logged
+ // noinspection Convert2MethodRef
+ progress.step(m -> logger.info(m));
+ });
logger.info(
"Assigned names to {} of {} {} ({}%)",
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/CrosswalkNamer.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/CrosswalkNamer.java
index fd0c1632c7e..5f505007238 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/CrosswalkNamer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/CrosswalkNamer.java
@@ -10,9 +10,9 @@
import org.locationtech.jts.geom.Geometry;
import org.opentripplanner.core.model.i18n.I18NString;
import org.opentripplanner.core.model.i18n.LocalizedString;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.model.OsmEntity;
import org.opentripplanner.osm.model.OsmWay;
import org.slf4j.Logger;
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/EdgeNamerFactory.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/EdgeNamerFactory.java
index ec03c7e8463..5faab907ee3 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/EdgeNamerFactory.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/EdgeNamerFactory.java
@@ -1,7 +1,7 @@
package org.opentripplanner.ext.edgenaming;
-import org.opentripplanner.graph_builder.services.osm.DefaultNamer;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.internal.naming.DefaultNamer;
import org.opentripplanner.standalone.config.framework.json.NodeAdapter;
import org.opentripplanner.standalone.config.framework.json.OtpVersion;
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/PortlandCustomNamer.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/PortlandCustomNamer.java
index 7cc9ac5c172..47ea131328f 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/PortlandCustomNamer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/PortlandCustomNamer.java
@@ -3,9 +3,9 @@
import java.util.HashSet;
import org.opentripplanner.core.model.i18n.I18NString;
import org.opentripplanner.core.model.i18n.NonLocalizedString;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.model.OsmEntity;
import org.opentripplanner.osm.model.OsmWay;
import org.opentripplanner.street.model.edge.StreetEdge;
@@ -75,27 +75,25 @@ public I18NString name(OsmEntity entity) {
public void recordEdges(OsmWay way, StreetEdgePair edgePair, OsmDatabase osmdb) {
final boolean isHighwayLink = isHighwayLink(way);
final boolean isLowerLink = isLowerLink(way);
- edgePair
- .asIterable()
- .forEach(edge -> {
- if (!edge.nameIsDerived()) {
- // this edge already has a real name so there is nothing to do
- return;
+ edgePair.asIterable().forEach(edge -> {
+ if (!edge.nameIsDerived()) {
+ // this edge already has a real name so there is nothing to do
+ return;
+ }
+ if (isHighwayLink) {
+ if (edge.isBack()) {
+ nameByDestination.add(edge);
+ } else {
+ nameByOrigin.add(edge);
}
- if (isHighwayLink) {
- if (edge.isBack()) {
- nameByDestination.add(edge);
- } else {
- nameByOrigin.add(edge);
- }
- } else if (isLowerLink) {
- if (edge.isBack()) {
- nameByOrigin.add(edge);
- } else {
- nameByDestination.add(edge);
- }
+ } else if (isLowerLink) {
+ if (edge.isBack()) {
+ nameByOrigin.add(edge);
+ } else {
+ nameByDestination.add(edge);
}
- });
+ }
+ });
}
@Override
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkCrosswalkNamer.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkCrosswalkNamer.java
index ac970913eac..71e9b45b511 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkCrosswalkNamer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkCrosswalkNamer.java
@@ -1,9 +1,9 @@
package org.opentripplanner.ext.edgenaming;
import org.opentripplanner.core.model.i18n.I18NString;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.model.OsmEntity;
import org.opentripplanner.osm.model.OsmWay;
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkNamer.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkNamer.java
index 1ba9133c014..b85a074201c 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkNamer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/SidewalkNamer.java
@@ -14,9 +14,9 @@
import org.locationtech.jts.geom.MultiLineString;
import org.locationtech.jts.geom.Point;
import org.opentripplanner.core.model.i18n.I18NString;
-import org.opentripplanner.graph_builder.module.osm.OsmDatabase;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.storage.OsmDatabase;
import org.opentripplanner.osm.model.OsmEntity;
import org.opentripplanner.osm.model.OsmLevel;
import org.opentripplanner.osm.model.OsmWay;
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/StreetEdgeIndex.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/StreetEdgeIndex.java
index e2ac717ace0..40c5400e9ba 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/StreetEdgeIndex.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/StreetEdgeIndex.java
@@ -3,7 +3,7 @@
import java.util.List;
import java.util.Set;
import org.locationtech.jts.geom.Geometry;
-import org.opentripplanner.graph_builder.module.osm.StreetEdgePair;
+import org.opentripplanner.graph_builder.module.osm.model.StreetEdgePair;
import org.opentripplanner.osm.model.OsmLevel;
import org.opentripplanner.osm.model.OsmWay;
import org.opentripplanner.street.geometry.HashGridSpatialIndex;
diff --git a/application/src/ext/java/org/opentripplanner/ext/edgenaming/configure/EdgeNamerModule.java b/application/src/ext/java/org/opentripplanner/ext/edgenaming/configure/EdgeNamerModule.java
index 1f8dc518198..4e0eb0edc15 100644
--- a/application/src/ext/java/org/opentripplanner/ext/edgenaming/configure/EdgeNamerModule.java
+++ b/application/src/ext/java/org/opentripplanner/ext/edgenaming/configure/EdgeNamerModule.java
@@ -4,7 +4,7 @@
import dagger.Provides;
import jakarta.inject.Singleton;
import org.opentripplanner.ext.edgenaming.EdgeNamerFactory;
-import org.opentripplanner.graph_builder.services.osm.EdgeNamer;
+import org.opentripplanner.graph_builder.module.osm.EdgeNamer;
import org.opentripplanner.standalone.config.BuildConfig;
@Module
diff --git a/application/src/ext/java/org/opentripplanner/ext/empiricaldelay/parameters/EmpiricalDelayFeedParameters.java b/application/src/ext/java/org/opentripplanner/ext/empiricaldelay/parameters/EmpiricalDelayFeedParameters.java
index dacd142f399..d9e23967691 100644
--- a/application/src/ext/java/org/opentripplanner/ext/empiricaldelay/parameters/EmpiricalDelayFeedParameters.java
+++ b/application/src/ext/java/org/opentripplanner/ext/empiricaldelay/parameters/EmpiricalDelayFeedParameters.java
@@ -8,8 +8,10 @@
/**
* Configuration parameters for a single empirical delay feed data source.
*/
-public record EmpiricalDelayFeedParameters(String feedId, URI source) implements
- DataSourceConfig, Serializable {
+public record EmpiricalDelayFeedParameters(
+ String feedId,
+ URI source
+) implements DataSourceConfig, Serializable {
@Override
public String toString() {
return ToStringBuilder.of(EmpiricalDelayFeedParameters.class)
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttribute.java b/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttribute.java
index 5e19f55d664..7e932add56a 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttribute.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttribute.java
@@ -7,7 +7,8 @@
import org.opentripplanner.transit.model.framework.AbstractTransitEntity;
public final class FareAttribute
- extends AbstractTransitEntity {
+ extends AbstractTransitEntity
+{
private FeedScopedId agency;
private final Money price;
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttributeBuilder.java b/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttributeBuilder.java
index 0f053a93403..ed215b2f447 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttributeBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/model/FareAttributeBuilder.java
@@ -5,7 +5,8 @@
import org.opentripplanner.transit.model.framework.AbstractEntityBuilder;
public class FareAttributeBuilder
- extends AbstractEntityBuilder {
+ extends AbstractEntityBuilder
+{
private FeedScopedId agency;
private Money price;
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/model/RouteOriginDestination.java b/application/src/ext/java/org/opentripplanner/ext/fares/model/RouteOriginDestination.java
index 79f94d1719e..920d751fbba 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/model/RouteOriginDestination.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/model/RouteOriginDestination.java
@@ -2,5 +2,8 @@
import java.io.Serializable;
-public record RouteOriginDestination(String route, String origin, String destination) implements
- Serializable {}
+public record RouteOriginDestination(
+ String route,
+ String origin,
+ String destination
+) implements Serializable {}
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/GtfsFaresService.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/GtfsFaresService.java
index 87f7204762e..9f0c95e9333 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/GtfsFaresService.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/GtfsFaresService.java
@@ -36,11 +36,9 @@ public ItineraryFare calculateFares(Itinerary itinerary) {
* Add a complex set of fare products for a specific leg;
*/
private static void addLegProducts(Multimap legProducts, ItineraryFare fares) {
- legProducts
- .entries()
- .forEach(e -> {
- fares.addFareProduct(e.getKey(), e.getValue());
- });
+ legProducts.entries().forEach(e -> {
+ fares.addFareProduct(e.getKey(), e.getValue());
+ });
}
public DefaultFareService faresV1() {
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareService.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareService.java
index 395476cdbaf..45703855ec1 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareService.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v1/custom/HSLFareService.java
@@ -99,8 +99,7 @@ but visit temporarily (maybe 1 stop only) an 'external' zone */
ruleSet
.getRouteOriginDestinations()
.toString()
- .indexOf(routeOriginDestination.toString()) !=
- -1
+ .indexOf(routeOriginDestination.toString()) != -1
) {
isSpecialRoute = true;
}
@@ -115,7 +114,7 @@ but visit temporarily (maybe 1 stop only) an 'external' zone */
if (
!attribute.isTransferDurationSet() ||
Duration.between(lastRideStartTime, startTime).getSeconds() <
- attribute.getTransferDuration()
+ attribute.getTransferDuration()
) {
Money newFare = attribute.getPrice();
if (newFare.lessThan(bestSpecialFare)) {
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/FareLookupService.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/FareLookupService.java
index 5ac524c179a..33d14d9e430 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/FareLookupService.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/FareLookupService.java
@@ -77,7 +77,8 @@ boolean isEmpty() {
* exist.
*/
Set legRules(TransitLeg leg) {
- var rules = this.legRules.stream()
+ var rules = this.legRules
+ .stream()
.filter(r -> legMatchesRule(leg, r))
.collect(Collectors.toUnmodifiableSet());
var containsPriorities = rules.stream().anyMatch(r -> r.priority().isPresent());
@@ -98,7 +99,8 @@ Set findTransfersMatchingAllLegs(
if (legs.size() < 2) {
return Set.of();
}
- return this.transferRules.stream()
+ return this.transferRules
+ .stream()
.filter(transferPredicate)
.filter(FareTransferRule::isFree)
.filter(r -> TimeLimitEvaluator.withinTimeLimit(r, legs.getFirst(), legs.getLast()))
@@ -126,7 +128,8 @@ Set findTransferOffersForSubLegs(
List tail,
Predicate transferPredicate
) {
- Set transfers = this.transferRules.stream()
+ Set transfers = this.transferRules
+ .stream()
.filter(transferPredicate)
.flatMap(r -> {
var fromRules = findFareLegRule(r.fromLegGroup());
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/GtfsFaresV2Service.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/GtfsFaresV2Service.java
index ac93fe08980..9f9b20625cf 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/GtfsFaresV2Service.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/GtfsFaresV2Service.java
@@ -58,28 +58,26 @@ public FareResult calculateFares(Itinerary itinerary) {
if (transitLegs.size() > 1) {
var splits = ListUtils.partitionIntoSplits(transitLegs);
splits.forEach(split ->
- split
- .subTails()
- .forEach(tail -> {
- var unlimitedTransferOffers = lookup.findTransferOffersForSubLegs(
- split.head(),
- tail,
- FareTransferRule::unlimitedTransfers
- );
- tail.forEach(leg -> offerContainer.addToLeg(leg, unlimitedTransferOffers));
- var hasFreeTransfer = lookup.hasFreeTransfers(tail);
- if (hasFreeTransfer) {
- offerContainer.transferProducts(tail.getFirst(), tail);
- }
+ split.subTails().forEach(tail -> {
+ var unlimitedTransferOffers = lookup.findTransferOffersForSubLegs(
+ split.head(),
+ tail,
+ FareTransferRule::unlimitedTransfers
+ );
+ tail.forEach(leg -> offerContainer.addToLeg(leg, unlimitedTransferOffers));
+ var hasFreeTransfer = lookup.hasFreeTransfers(tail);
+ if (hasFreeTransfer) {
+ offerContainer.transferProducts(tail.getFirst(), tail);
+ }
- var transfers = tail.size();
- var limitedTransferOffers = lookup.findTransferOffersForSubLegs(
- split.head(),
- tail,
- t -> t.limitedTransfers() && t.allowsNumberOfTransfers(transfers)
- );
- offerContainer.addTransferLimitedOffer(split.head(), tail, limitedTransferOffers);
- })
+ var transfers = tail.size();
+ var limitedTransferOffers = lookup.findTransferOffersForSubLegs(
+ split.head(),
+ tail,
+ t -> t.limitedTransfers() && t.allowsNumberOfTransfers(transfers)
+ );
+ offerContainer.addTransferLimitedOffer(split.head(), tail, limitedTransferOffers);
+ })
);
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/LegOffer.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/LegOffer.java
index aef4a360dac..875c1a8243f 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/LegOffer.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/LegOffer.java
@@ -54,8 +54,11 @@ public FareProduct fareProduct() {
/**
* A time-limited implementation of the {@link LegOffer} interface that provides fare offer details.
*/
- record TimeLimitedOffer(FareOffer offer, TimeLimit timeLimit, TransitLeg startLeg) implements
- LegOffer {
+ record TimeLimitedOffer(
+ FareOffer offer,
+ TimeLimit timeLimit,
+ TransitLeg startLeg
+ ) implements LegOffer {
public TimeLimitedOffer {
Objects.requireNonNull(timeLimit);
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/custom/OregonHopFareFactory.java b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/custom/OregonHopFareFactory.java
index ff9a328ffb5..9e248512713 100644
--- a/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/custom/OregonHopFareFactory.java
+++ b/application/src/ext/java/org/opentripplanner/ext/fares/service/gtfs/v2/custom/OregonHopFareFactory.java
@@ -458,7 +458,8 @@ public FareService makeFareService() {
* @return The fare product from the GTFS, or a generated $0 fare product.
*/
private Money findFareProduct(FeedScopedId fareProductId) {
- Optional potentialRuleMatch = this.fareLegRules.stream()
+ Optional potentialRuleMatch = this.fareLegRules
+ .stream()
.filter(f ->
f
.fareProducts()
@@ -530,7 +531,7 @@ private Collection generateHopFareProducts(
FareProduct.of(
ctranId("TRIMET_CTRAN_HC_TRANSFER"),
"TriMet to C-TRAN",
- Money.max(Money.ZERO_USD, (seniorLarger.minus(seniorSmaller)))
+ Money.max(Money.ZERO_USD, seniorLarger.minus(seniorSmaller))
)
.withCategory(CATEGORY_HONOURED_CITIZEN)
.withMedium(HOP_FASTPASS)
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/AreaStopsToVerticesMapper.java b/application/src/ext/java/org/opentripplanner/ext/flex/AreaStopsToVerticesMapper.java
index 78d3b64c48a..94ffafdf714 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/AreaStopsToVerticesMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/AreaStopsToVerticesMapper.java
@@ -61,17 +61,15 @@ public void buildGraph() {
ImmutableMultimap mappedResults = results.collect(
ImmutableListMultimap.<
- MatchResult,
- StreetVertex,
- FeedScopedId
- >flatteningToImmutableListMultimap(MatchResult::vertex, mr -> Stream.of(mr.stop().getId()))
+ MatchResult,
+ StreetVertex,
+ FeedScopedId
+ >flatteningToImmutableListMultimap(MatchResult::vertex, mr -> Stream.of(mr.stop().getId()))
);
- mappedResults
- .keySet()
- .forEach(vertex -> {
- vertex.addAreaStops(mappedResults.get(vertex));
- });
+ mappedResults.keySet().forEach(vertex -> {
+ vertex.addAreaStops(mappedResults.get(vertex));
+ });
LOG.info(progress.completeMessage());
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/FlexIndex.java b/application/src/ext/java/org/opentripplanner/ext/flex/FlexIndex.java
index 5931ab2ab49..c8d4a7c6e0f 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/FlexIndex.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/FlexIndex.java
@@ -54,13 +54,11 @@ public FlexIndex(TransitRepository transitRepository) {
LocalDate maxDate = serviceDate.plusDays(flexTrip.maxSpanDays());
FlexTripForDate flexTripForDate = new FlexTripForDate(serviceDate, maxDate, flexTrip);
- serviceDate
- .datesUntil(maxDate.plusDays(1))
- .forEach(runningDate -> {
- flexTripsRunningOnDate
- .computeIfAbsent(runningDate, d -> new ArrayList<>())
- .add(flexTripForDate);
- });
+ serviceDate.datesUntil(maxDate.plusDays(1)).forEach(runningDate -> {
+ flexTripsRunningOnDate
+ .computeIfAbsent(runningDate, d -> new ArrayList<>())
+ .add(flexTripForDate);
+ });
});
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/FlexRouter.java b/application/src/ext/java/org/opentripplanner/ext/flex/FlexRouter.java
index 2c5711c9021..ef2f7ac2e0a 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/FlexRouter.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/FlexRouter.java
@@ -93,7 +93,6 @@ public FlexRouter(
this.streetPathToLegsMapper = new StreetPathToLegsMapper(
new TransitServiceResolver(transitService),
transitService.getTimeZone(),
- graph.streetNotesService,
streetDetailsService,
graph.ellipsoidToGeoidDifference
);
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/filter/FilterMapper.java b/application/src/ext/java/org/opentripplanner/ext/flex/filter/FilterMapper.java
index f3c98ecb2aa..68c7e52ba5b 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/filter/FilterMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/filter/FilterMapper.java
@@ -54,17 +54,13 @@ private TripRequest mapFilters(List filters) {
}
private void addFilter(TransitFilterRequest sr) {
- sr
- .not()
- .forEach(s -> {
- excludedRoutes.addAll(s.routes());
- excludedAgencies.addAll(s.agencies());
- });
- sr
- .select()
- .forEach(s -> {
- selectedRoutes.addAll(s.routes());
- selectedAgencies.addAll(s.agencies());
- });
+ sr.not().forEach(s -> {
+ excludedRoutes.addAll(s.routes());
+ excludedAgencies.addAll(s.agencies());
+ });
+ sr.select().forEach(s -> {
+ selectedRoutes.addAll(s.routes());
+ selectedAgencies.addAll(s.agencies());
+ });
}
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/flexpathcalculator/DirectFlexPathCalculator.java b/application/src/ext/java/org/opentripplanner/ext/flex/flexpathcalculator/DirectFlexPathCalculator.java
index 1952cc13832..3b8c256c99a 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/flexpathcalculator/DirectFlexPathCalculator.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/flexpathcalculator/DirectFlexPathCalculator.java
@@ -29,12 +29,15 @@ public FlexPath calculateFlexPath(
int alightStopPosition
) {
double distance = SphericalDistanceLibrary.distance(fromv.getCoordinate(), tov.getCoordinate());
- LineString geometry = GeometryUtils.getGeometryFactory().createLineString(
- new Coordinate[] { fromv.getCoordinate(), tov.getCoordinate() }
- );
-
- return new FlexPath((int) distance, (int) (distance / flexSpeed) + DIRECT_EXTRA_TIME, () ->
- geometry
+ LineString geometry = GeometryUtils.getGeometryFactory().createLineString(new Coordinate[] {
+ fromv.getCoordinate(),
+ tov.getCoordinate(),
+ });
+
+ return new FlexPath(
+ (int) distance,
+ (int) (distance / flexSpeed) + DIRECT_EXTRA_TIME,
+ () -> geometry
);
}
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/template/FlexDirectPathFactory.java b/application/src/ext/java/org/opentripplanner/ext/flex/template/FlexDirectPathFactory.java
index 59642b8c25c..b719567b303 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/template/FlexDirectPathFactory.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/template/FlexDirectPathFactory.java
@@ -192,8 +192,7 @@ protected boolean isRouteable(FlexAccessTemplate accessTemplate, Vertex flexVert
flexVertex,
accessTemplate.boardStopPosition,
accessTemplate.alightStopPosition
- ) !=
- null
+ ) != null
);
}
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTrip.java b/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTrip.java
index 4cc1e25f561..0bbcaccab3e 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTrip.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTrip.java
@@ -19,8 +19,10 @@
* subclasses encapsulates the different business logic, which the different types of services
* adhere to.
*/
-public abstract class FlexTrip, B extends FlexTripBuilder>
- extends AbstractTransitEntity {
+public abstract class FlexTrip<
+ T extends FlexTrip,
+ B extends FlexTripBuilder
+> extends AbstractTransitEntity {
public static int STOP_INDEX_NOT_FOUND = -1;
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTripBuilder.java b/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTripBuilder.java
index 5990c253f8e..5dd1e447bcb 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTripBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/trip/FlexTripBuilder.java
@@ -4,8 +4,10 @@
import org.opentripplanner.transit.model.framework.AbstractEntityBuilder;
import org.opentripplanner.transit.model.timetable.Trip;
-public abstract class FlexTripBuilder, B extends FlexTripBuilder>
- extends AbstractEntityBuilder {
+public abstract class FlexTripBuilder<
+ T extends FlexTrip,
+ B extends FlexTripBuilder
+> extends AbstractEntityBuilder {
private Trip trip;
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTrip.java b/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTrip.java
index 5d9cfb7c743..25fef4bc52b 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTrip.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTrip.java
@@ -23,7 +23,8 @@
* locations, which are not stops, but other types, such as groups of stops or location areas.
*/
public class ScheduledDeviatedTrip
- extends FlexTrip {
+ extends FlexTrip
+{
private final ScheduledDeviatedStopTime[] stopTimes;
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripBuilder.java b/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripBuilder.java
index 062cc111d7e..ce7a4aca14f 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/trip/ScheduledDeviatedTripBuilder.java
@@ -5,7 +5,8 @@
import org.opentripplanner.model.StopTime;
public class ScheduledDeviatedTripBuilder
- extends FlexTripBuilder {
+ extends FlexTripBuilder
+{
private List stopTimes;
diff --git a/application/src/ext/java/org/opentripplanner/ext/flex/trip/UnscheduledTripBuilder.java b/application/src/ext/java/org/opentripplanner/ext/flex/trip/UnscheduledTripBuilder.java
index d1c9164a5c5..2a2405afa6d 100644
--- a/application/src/ext/java/org/opentripplanner/ext/flex/trip/UnscheduledTripBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/flex/trip/UnscheduledTripBuilder.java
@@ -6,7 +6,8 @@
import org.opentripplanner.routing.api.request.framework.TimePenalty;
public class UnscheduledTripBuilder
- extends FlexTripBuilder {
+ extends FlexTripBuilder
+{
private List stopTimes;
private TimePenalty timePenalty = TimePenalty.NONE;
diff --git a/application/src/ext/java/org/opentripplanner/ext/httpresponsetimemetrics/HttpResponseTimeMetricsFilter.java b/application/src/ext/java/org/opentripplanner/ext/httpresponsetimemetrics/HttpResponseTimeMetricsFilter.java
index 47fd8cab300..1671d7d73a8 100644
--- a/application/src/ext/java/org/opentripplanner/ext/httpresponsetimemetrics/HttpResponseTimeMetricsFilter.java
+++ b/application/src/ext/java/org/opentripplanner/ext/httpresponsetimemetrics/HttpResponseTimeMetricsFilter.java
@@ -37,7 +37,8 @@
* to ensure predictable metric cardinality.
*/
public class HttpResponseTimeMetricsFilter
- implements ContainerRequestFilter, ContainerResponseFilter {
+ implements ContainerRequestFilter, ContainerResponseFilter
+{
static final String CLIENT_TAG = "client";
static final String URI_TAG = "uri";
diff --git a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/StopEventResponseMapper.java b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/StopEventResponseMapper.java
index 70540753d7b..49cb69746d3 100644
--- a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/StopEventResponseMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/StopEventResponseMapper.java
@@ -104,8 +104,9 @@ private StopEventResultStructure stopEventResult(CallAtStop call) {
}
private String eventId(TripTimeOnDate tripTimeOnDate) {
- var bytes = (tripTimeOnDate.getStopTimeKey().toString() +
- tripTimeOnDate.getServiceDay()).getBytes(StandardCharsets.UTF_8);
+ var bytes = (
+ tripTimeOnDate.getStopTimeKey().toString() + tripTimeOnDate.getServiceDay()
+ ).getBytes(StandardCharsets.UTF_8);
return UUID.nameUUIDFromBytes(bytes).toString();
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseContextMapper.java b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseContextMapper.java
index fb24ce7d1ab..b201deed857 100644
--- a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseContextMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseContextMapper.java
@@ -74,8 +74,8 @@ private static Stream stopLocations(Itinerary itinerary) {
private static Stream stopLocations(Leg leg) {
var fromTo = Stream.of(leg.from().stop, leg.to().stop);
- var intermediate = StreamUtils.ofNullableCollection(leg.listIntermediateStops()).map(sa ->
- sa.place.stop
+ var intermediate = StreamUtils.ofNullableCollection(leg.listIntermediateStops()).map(
+ sa -> sa.place.stop
);
return Stream.concat(fromTo, intermediate);
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseMapper.java b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseMapper.java
index f8a4e80a8a7..c940a94f264 100644
--- a/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/ojp/mapping/TripResponseMapper.java
@@ -84,17 +84,15 @@ public OJP mapTripPlan(RoutingResponse otpResponse, ZonedDateTime timestamp) {
}
private TripResultStructure mapItinerary(Itinerary itinerary) {
- return new TripResultStructure()
- .withId(tripId(itinerary))
- .withTrip(
- new TripStructure()
- .withId(tripId(itinerary))
- .withDuration(Duration.between(itinerary.startTime(), itinerary.endTime()))
- .withTransfers(itinerary.legs().size() - 1)
- .withStartTime(new XmlDateTime(itinerary.startTime()))
- .withEndTime(new XmlDateTime(itinerary.endTime()))
- .withLeg(mapLegs(itinerary))
- );
+ return new TripResultStructure().withId(tripId(itinerary)).withTrip(
+ new TripStructure()
+ .withId(tripId(itinerary))
+ .withDuration(Duration.between(itinerary.startTime(), itinerary.endTime()))
+ .withTransfers(itinerary.legs().size() - 1)
+ .withStartTime(new XmlDateTime(itinerary.startTime()))
+ .withEndTime(new XmlDateTime(itinerary.endTime()))
+ .withLeg(mapLegs(itinerary))
+ );
}
private List mapLegs(Itinerary itinerary) {
diff --git a/application/src/ext/java/org/opentripplanner/ext/ojp/resource/OjpResource.java b/application/src/ext/java/org/opentripplanner/ext/ojp/resource/OjpResource.java
index ca5bd4bb581..65da9e73ab0 100644
--- a/application/src/ext/java/org/opentripplanner/ext/ojp/resource/OjpResource.java
+++ b/application/src/ext/java/org/opentripplanner/ext/ojp/resource/OjpResource.java
@@ -33,18 +33,18 @@ public class OjpResource {
private static final Logger LOG = LoggerFactory.getLogger(OjpResource.class);
private static final String EXPLORER_HTML = """
-
-
-
-
-
- OJP Explorer
-
-
-
-
-
- """;
+
+
+
+
+
+ OJP Explorer
+
+
+
+
+
+ """;
private final RequestHandler handler;
private final RouteRequest defaultRouteRequest;
diff --git a/application/src/ext/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolver.java b/application/src/ext/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolver.java
index 7dfb19ac07f..3e819c27c86 100644
--- a/application/src/ext/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolver.java
+++ b/application/src/ext/java/org/opentripplanner/ext/realtimeresolver/RealtimeResolver.java
@@ -48,7 +48,7 @@ private Leg mapLeg(Leg leg) {
}
// Only ScheduledTransitLeg has leg references atm, so this check is just to be future-proof
- if (!(leg.isScheduledTransitLeg())) {
+ if (!leg.isScheduledTransitLeg()) {
return leg;
}
var realTimeLeg = ref.getLeg(transitService, transitAlertService);
diff --git a/application/src/ext/java/org/opentripplanner/ext/reportapi/model/GraphReportBuilder.java b/application/src/ext/java/org/opentripplanner/ext/reportapi/model/GraphReportBuilder.java
index 8b7aeb0f72f..a523456f909 100644
--- a/application/src/ext/java/org/opentripplanner/ext/reportapi/model/GraphReportBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/reportapi/model/GraphReportBuilder.java
@@ -1,6 +1,5 @@
package org.opentripplanner.ext.reportapi.model;
-import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Function;
@@ -32,7 +31,7 @@ public static GraphStats build(TransitService transitService, Graph graph) {
GraphReportBuilder::firstLetterToLowerCase
);
- var edgeTypes = countValues(graph.getEdges(), GraphReportBuilder::firstLetterToLowerCase);
+ var edgeTypes = countValues(graph.listEdges(), GraphReportBuilder::firstLetterToLowerCase);
var vertexTypes = countValues(graph.getVertices(), GraphReportBuilder::firstLetterToLowerCase);
return new GraphStats(
@@ -52,15 +51,16 @@ private static String firstLetterToLowerCase(Object instance) {
return Character.toLowerCase(className.charAt(0)) + className.substring(1);
}
- private static TypeStats countValues(Collection input, Function classify) {
+ private static TypeStats countValues(Iterable input, Function classify) {
Map result = new HashMap<>();
- input.forEach(item -> {
+ int total = 0;
+ for (T item : input) {
var classification = classify.apply(item);
var count = result.getOrDefault(classification, 0);
result.put(classification, ++count);
- });
-
- return new TypeStats(input.size(), result);
+ ++total;
+ }
+ return new TypeStats(total, result);
}
public record GraphStats(StreetStats street, TransitStats transit) {}
diff --git a/application/src/ext/java/org/opentripplanner/ext/reportapi/model/TransfersReport.java b/application/src/ext/java/org/opentripplanner/ext/reportapi/model/TransfersReport.java
index 0be2e903f92..a886ebf4401 100644
--- a/application/src/ext/java/org/opentripplanner/ext/reportapi/model/TransfersReport.java
+++ b/application/src/ext/java/org/opentripplanner/ext/reportapi/model/TransfersReport.java
@@ -76,18 +76,18 @@ String export() {
transfers.forEach(t -> {
var from = pointInfo(t.getFrom(), ALIGHT);
var to = pointInfo(t.getTo(), BOARD);
- var dist = (from.coordinate == null || to.coordinate == null)
- ? ""
- : String.format(
- "%.0fm",
- SphericalDistanceLibrary.fastDistance(
- from.coordinate.asJtsCoordinate(),
- to.coordinate.asJtsCoordinate()
- )
- );
- var duration = (from.time == NOT_SET || to.time == NOT_SET)
- ? ""
- : durationToStr(to.time - from.time);
+ var dist =
+ from.coordinate == null || to.coordinate == null
+ ? ""
+ : String.format(
+ "%.0fm",
+ SphericalDistanceLibrary.fastDistance(
+ from.coordinate.asJtsCoordinate(),
+ to.coordinate.asJtsCoordinate()
+ )
+ );
+ var duration =
+ from.time == NOT_SET || to.time == NOT_SET ? "" : durationToStr(to.time - from.time);
var c = t.getTransferConstraint();
buf.addText(t.getId() == null ? "" : t.getId().getId());
diff --git a/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureETUpdaterParameters.java b/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureETUpdaterParameters.java
index 54fa43d4e4b..e3c2bea508d 100644
--- a/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureETUpdaterParameters.java
+++ b/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureETUpdaterParameters.java
@@ -11,7 +11,8 @@
public class SiriAzureETUpdaterParameters
extends SiriAzureUpdaterParameters
- implements UrlUpdaterParameters {
+ implements UrlUpdaterParameters
+{
private LocalDate fromDateTime;
diff --git a/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureUpdater.java b/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureUpdater.java
index 4c1ab5450f2..a428a97a222 100644
--- a/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureUpdater.java
+++ b/application/src/ext/java/org/opentripplanner/ext/siri/updater/azure/SiriAzureUpdater.java
@@ -188,17 +188,14 @@ public void run() {
updaterType + ":ServiceBusSubscription"
);
- executeStartupStep(
- () -> {
- var initialData = fetchInitialSiriData();
- if (initialData.isEmpty()) {
- LOG.info("Got empty response from history endpoint");
- } else {
- processInitialSiriData(initialData.get());
- }
- },
- updaterType + ":HistoricalSiriData"
- );
+ executeStartupStep(() -> {
+ var initialData = fetchInitialSiriData();
+ if (initialData.isEmpty()) {
+ LOG.info("Got empty response from history endpoint");
+ } else {
+ processInitialSiriData(initialData.get());
+ }
+ }, updaterType + ":HistoricalSiriData");
if (isSuccess) {
executeStartupStep(this::startEventProcessor, updaterType + ":ServiceBusEventProcessor");
@@ -427,7 +424,7 @@ private Optional fetchInitialSiriData() {
response -> SiriXml.parseXml(response.body())
);
var t2 = System.currentTimeMillis();
- LOG.info("Fetched initial data in {} ms", (t2 - t1));
+ LOG.info("Fetched initial data in {} ms", t2 - t1);
if (siriOptional.isEmpty()) {
LOG.info("Got status 204 'No Content'.");
@@ -444,7 +441,7 @@ public void processInitialSiriData(ServiceDelivery serviceDelivery) {
if (f != null) {
f.get();
}
- LOG.info("{} updater initialized in {} ms.", updaterType, (System.currentTimeMillis() - t1));
+ LOG.info("{} updater initialized in {} ms.", updaterType, System.currentTimeMillis() - t1);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
throw new SiriAzureInitializationException("Interrupted while applying history", e);
@@ -477,8 +474,7 @@ private void errorConsumer(ServiceBusErrorContext errorContext) {
if (
reason == ServiceBusFailureReason.MESSAGING_ENTITY_DISABLED ||
// should this be recoverable?
- reason ==
- ServiceBusFailureReason.MESSAGING_ENTITY_NOT_FOUND
+ reason == ServiceBusFailureReason.MESSAGING_ENTITY_NOT_FOUND
) {
LOG.error(
"An unrecoverable error occurred. Stopping processing with reason {} {}",
diff --git a/application/src/ext/java/org/opentripplanner/ext/sorlandsbanen/MergePaths.java b/application/src/ext/java/org/opentripplanner/ext/sorlandsbanen/MergePaths.java
index ae01478fef6..8ca78acdce6 100644
--- a/application/src/ext/java/org/opentripplanner/ext/sorlandsbanen/MergePaths.java
+++ b/application/src/ext/java/org/opentripplanner/ext/sorlandsbanen/MergePaths.java
@@ -15,9 +15,8 @@
* Everything from the main result is kept, and any additional rail results from the alternative
* search are added.
*/
-class MergePaths
- implements
- BiFunction>, Collection>, Collection>> {
+class MergePaths implements
+ BiFunction>, Collection>, Collection>> {
@Override
public Collection> apply(
diff --git a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/DecorateConsolidatedStopNames.java b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/DecorateConsolidatedStopNames.java
index f19a6cd3a4b..e97c7d5da18 100644
--- a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/DecorateConsolidatedStopNames.java
+++ b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/DecorateConsolidatedStopNames.java
@@ -103,6 +103,6 @@ private static boolean isShortWalkLeg(Leg leg) {
* for the from/to stops.
*/
private boolean needsToRenameStops(ScheduledTransitLeg stl) {
- return (service.isSecondaryStop(stl.from().stop) || service.isPrimaryStop(stl.to().stop));
+ return service.isSecondaryStop(stl.from().stop) || service.isPrimaryStop(stl.to().stop);
}
}
diff --git a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/StopConsolidationParser.java b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/StopConsolidationParser.java
index 782233a8b05..2adddd62128 100644
--- a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/StopConsolidationParser.java
+++ b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/StopConsolidationParser.java
@@ -38,10 +38,10 @@ public static List parseGroups(InputStream is) {
.stream()
.collect(
ImmutableListMultimap.<
- StopGroupEntry,
- String,
- StopGroupEntry
- >flatteningToImmutableListMultimap(x -> x.groupId, Stream::of)
+ StopGroupEntry,
+ String,
+ StopGroupEntry
+ >flatteningToImmutableListMultimap(x -> x.groupId, Stream::of)
);
return groups
diff --git a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/internal/DefaultStopConsolidationRepository.java b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/internal/DefaultStopConsolidationRepository.java
index 4c9552b9a1e..c771ab4c128 100644
--- a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/internal/DefaultStopConsolidationRepository.java
+++ b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/internal/DefaultStopConsolidationRepository.java
@@ -11,7 +11,8 @@
@Singleton
public class DefaultStopConsolidationRepository
- implements Serializable, StopConsolidationRepository {
+ implements Serializable, StopConsolidationRepository
+{
private final List groups = new ArrayList<>();
diff --git a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/model/ConsolidatedStopLegBuilder.java b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/model/ConsolidatedStopLegBuilder.java
index b2c42a5410b..f3e7123af89 100644
--- a/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/model/ConsolidatedStopLegBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/stopconsolidation/model/ConsolidatedStopLegBuilder.java
@@ -6,7 +6,8 @@
import org.opentripplanner.transit.model.site.StopLocation;
public class ConsolidatedStopLegBuilder
- extends ScheduledTransitLegBuilder {
+ extends ScheduledTransitLegBuilder
+{
private Place from;
private Place to;
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopPropertyMapper.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopPropertyMapper.java
index fa5d2f6648f..7aa99cccab7 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopPropertyMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/areastops/AreaStopPropertyMapper.java
@@ -33,15 +33,16 @@ protected static AreaStopPropertyMapper create(TransitService transitService, Lo
@Override
protected Collection map(AreaStop stop) {
- var routeColors = getRoutesForStop
- .apply(stop)
- .stream()
- .map(Route::getColor)
- .filter(Objects::nonNull)
- .distinct()
- // the MVT spec explicitly doesn't cover how to encode arrays
- // https://docs.mapbox.com/data/tilesets/guides/vector-tiles-standards/#what-the-spec-doesnt-cover
- .collect(Collectors.joining(","));
+ var routeColors =
+ getRoutesForStop
+ .apply(stop)
+ .stream()
+ .map(Route::getColor)
+ .filter(Objects::nonNull)
+ .distinct()
+ // the MVT spec explicitly doesn't cover how to encode arrays
+ // https://docs.mapbox.com/data/tilesets/guides/vector-tiles-standards/#what-the-spec-doesnt-cover
+ .collect(Collectors.joining(","));
return List.of(
new KeyValue("gtfsId", stop.getId().toString()),
new KeyValue("name", i18NStringMapper.mapNonnullToApi(stop.getName())),
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/DigitransitVehicleParkingGroupPropertyMapper.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/DigitransitVehicleParkingGroupPropertyMapper.java
index 567729b140f..93835c4bad0 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/DigitransitVehicleParkingGroupPropertyMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehicleparkings/DigitransitVehicleParkingGroupPropertyMapper.java
@@ -11,7 +11,8 @@
import org.opentripplanner.inspector.vector.KeyValue;
public class DigitransitVehicleParkingGroupPropertyMapper
- extends PropertyMapper {
+ extends PropertyMapper
+{
private static final ObjectMapper OBJECT_MAPPER = ObjectMappers.ignoringExtraFields();
private final I18NStringMapper i18NStringMapper;
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalStationsLayerBuilder.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalStationsLayerBuilder.java
index 53ecb64f248..4ec725475c5 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalStationsLayerBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalStationsLayerBuilder.java
@@ -13,7 +13,8 @@
import org.opentripplanner.service.vehiclerental.model.VehicleRentalStation;
public class VehicleRentalStationsLayerBuilder
- extends VehicleRentalLayerBuilder {
+ extends VehicleRentalLayerBuilder
+{
public VehicleRentalStationsLayerBuilder(
VehicleRentalService service,
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalVehiclesLayerBuilder.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalVehiclesLayerBuilder.java
index d3520a993ed..c86d71b58c8 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalVehiclesLayerBuilder.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/VehicleRentalVehiclesLayerBuilder.java
@@ -11,7 +11,8 @@
import org.opentripplanner.service.vehiclerental.model.VehicleRentalVehicle;
public class VehicleRentalVehiclesLayerBuilder
- extends VehicleRentalLayerBuilder {
+ extends VehicleRentalLayerBuilder
+{
public VehicleRentalVehiclesLayerBuilder(
VehicleRentalService service,
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitRealtimeVehicleRentalStationPropertyMapper.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitRealtimeVehicleRentalStationPropertyMapper.java
index 89f466bd73e..d513797122f 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitRealtimeVehicleRentalStationPropertyMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitRealtimeVehicleRentalStationPropertyMapper.java
@@ -13,7 +13,8 @@
import org.opentripplanner.service.vehiclerental.model.VehicleRentalStation;
public class DigitransitRealtimeVehicleRentalStationPropertyMapper
- extends PropertyMapper {
+ extends PropertyMapper
+{
private final I18NStringMapper i18NStringMapper;
diff --git a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitVehicleRentalStationPropertyMapper.java b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitVehicleRentalStationPropertyMapper.java
index 8fd712880b6..be4d13d2927 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitVehicleRentalStationPropertyMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vectortiles/layers/vehiclerental/mapper/DigitransitVehicleRentalStationPropertyMapper.java
@@ -12,7 +12,8 @@
import org.opentripplanner.service.vehiclerental.model.VehicleRentalStation;
public class DigitransitVehicleRentalStationPropertyMapper
- extends PropertyMapper {
+ extends PropertyMapper
+{
private final I18NStringMapper i18NStringMapper;
diff --git a/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiHubToVehicleParkingGroupMapper.java b/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiHubToVehicleParkingGroupMapper.java
index cd59110fb16..86fdc8af4ee 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiHubToVehicleParkingGroupMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiHubToVehicleParkingGroupMapper.java
@@ -42,14 +42,12 @@ public Map parseHub(JsonNode jsonNode) {
try {
Map translations = new HashMap<>();
JsonNode nameNode = jsonNode.path("name");
- nameNode
- .fieldNames()
- .forEachRemaining(lang -> {
- String name = nameNode.path(lang).asText();
- if (!name.isEmpty()) {
- translations.put(lang, nameNode.path(lang).asText());
- }
- });
+ nameNode.fieldNames().forEachRemaining(lang -> {
+ String name = nameNode.path(lang).asText();
+ if (!name.isEmpty()) {
+ translations.put(lang, nameNode.path(lang).asText());
+ }
+ });
I18NString name = translations.isEmpty()
? new NonLocalizedString(hubId.getId())
: TranslatedString.getI18NString(translations, false);
diff --git a/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiParkToVehicleParkingMapper.java b/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiParkToVehicleParkingMapper.java
index 739e5a75d0a..e818e4b58a0 100644
--- a/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiParkToVehicleParkingMapper.java
+++ b/application/src/ext/java/org/opentripplanner/ext/vehicleparking/liipi/LiipiParkToVehicleParkingMapper.java
@@ -80,14 +80,12 @@ public VehicleParking parsePark(
);
Map translations = new HashMap<>();
JsonNode nameNode = jsonNode.path("name");
- nameNode
- .fieldNames()
- .forEachRemaining(lang -> {
- String name = nameNode.path(lang).asText();
- if (!name.isEmpty()) {
- translations.put(lang, nameNode.path(lang).asText());
- }
- });
+ nameNode.fieldNames().forEachRemaining(lang -> {
+ String name = nameNode.path(lang).asText();
+ if (!name.isEmpty()) {
+ translations.put(lang, nameNode.path(lang).asText());
+ }
+ });
I18NString name = translations.isEmpty()
? new NonLocalizedString(vehicleParkId.getId())
: TranslatedString.getI18NString(translations, false);
diff --git a/application/src/main/java/com/jhlabs/awt/TextStroke.java b/application/src/main/java/com/jhlabs/awt/TextStroke.java
index 14c7a688ac8..a02bd3e33c5 100644
--- a/application/src/main/java/com/jhlabs/awt/TextStroke.java
+++ b/application/src/main/java/com/jhlabs/awt/TextStroke.java
@@ -102,9 +102,10 @@ public Shape createStrokedShape(Shape shape) {
float x = lastX + next * dx * r;
float y = lastY + next * dy * r;
float advance = nextAdvance;
- nextAdvance = currentChar < length - 1
- ? glyphVector.getGlyphMetrics(currentChar + 1).getAdvance() * 0.5f
- : 0;
+ nextAdvance =
+ currentChar < length - 1
+ ? glyphVector.getGlyphMetrics(currentChar + 1).getAdvance() * 0.5f
+ : 0;
t.setToTranslation(x, y);
t.rotate(angle);
t.translate(-px - advance, -py + (height * factor) / 2.0f);
diff --git a/application/src/main/java/org/opentripplanner/api/model/serverinfo/OtpBadgeGenerator.java b/application/src/main/java/org/opentripplanner/api/model/serverinfo/OtpBadgeGenerator.java
index 0a1426cee85..0b2125f9df4 100644
--- a/application/src/main/java/org/opentripplanner/api/model/serverinfo/OtpBadgeGenerator.java
+++ b/application/src/main/java/org/opentripplanner/api/model/serverinfo/OtpBadgeGenerator.java
@@ -32,27 +32,27 @@ public class OtpBadgeGenerator {
private static final int TEXT_INSET = 5;
private static final int FONT_WIDTH = 82;
private static final String TEMPLATE = """
-
- """;
+
+ """;
/**
* A color is valid if it is a:
@@ -73,7 +73,7 @@ public static boolean isValidColor(String color) {
* label it should.
*/
public static boolean isValidLabel(String label) {
- return (label.length() <= 120 && LABEL_PATTERN.matcher(label).matches());
+ return label.length() <= 120 && LABEL_PATTERN.matcher(label).matches();
}
/**
diff --git a/application/src/main/java/org/opentripplanner/api/resource/UpdaterStatusResource.java b/application/src/main/java/org/opentripplanner/api/resource/UpdaterStatusResource.java
index 193e689c0ed..53c33bb1ea6 100644
--- a/application/src/main/java/org/opentripplanner/api/resource/UpdaterStatusResource.java
+++ b/application/src/main/java/org/opentripplanner/api/resource/UpdaterStatusResource.java
@@ -7,7 +7,7 @@
import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
-import org.opentripplanner.standalone.api.OtpServerRequestContext;
+import org.opentripplanner.transit.service.TransitService;
import org.opentripplanner.updater.GraphUpdaterStatus;
/**
@@ -18,23 +18,23 @@
@Produces(MediaType.APPLICATION_JSON)
public class UpdaterStatusResource {
- private final OtpServerRequestContext serverContext;
+ private final TransitService transitService;
public UpdaterStatusResource(
- @Context OtpServerRequestContext serverContext,
+ @Context TransitService transitService,
/**
* @deprecated The support for multiple routers are removed from OTP2.
* See https://github.com/opentripplanner/OpenTripPlanner/issues/2760
*/
@Deprecated @PathParam("ignoreRouterId") String ignoreRouterId
) {
- this.serverContext = serverContext;
+ this.transitService = transitService;
}
/** Return a list of all agencies in the graph. */
@GET
public Response getUpdaters() {
- GraphUpdaterStatus updaterStatus = serverContext.transitService().getUpdaterStatus();
+ GraphUpdaterStatus updaterStatus = transitService.getUpdaterStatus();
if (updaterStatus == null) {
return Response.status(Response.Status.NOT_FOUND).entity("No updaters running.").build();
}
@@ -47,7 +47,7 @@ public Response getUpdaters() {
@GET
@Path("/{updaterId}")
public Response getUpdaters(@PathParam("updaterId") int updaterId) {
- GraphUpdaterStatus updaterStatus = serverContext.transitService().getUpdaterStatus();
+ GraphUpdaterStatus updaterStatus = transitService.getUpdaterStatus();
if (updaterStatus == null) {
return Response.status(Response.Status.NOT_FOUND).entity("No updaters running.").build();
}
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/DefaultValueInjector.java b/application/src/main/java/org/opentripplanner/apis/gtfs/DefaultValueInjector.java
index 975ac23303a..eeca0959ff2 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/DefaultValueInjector.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/DefaultValueInjector.java
@@ -408,36 +408,37 @@ private static ObjectValue mapVehicleOptimize(
TimeSlopeSafetyTriangle triangle,
Function typeMapper
) {
- var optimizationField = type == VehicleRoutingOptimizeType.TRIANGLE
- ? ObjectField.newObjectField()
- .name("triangle")
- .value(
- ObjectValue.newObjectValue()
- .objectField(
- ObjectField.newObjectField()
- .name("flatness")
- .value(FloatValue.of(triangle.slope()))
- .build()
- )
- .objectField(
- ObjectField.newObjectField()
- .name("safety")
- .value(FloatValue.of(triangle.safety()))
- .build()
- )
- .objectField(
- ObjectField.newObjectField()
- .name("time")
- .value(FloatValue.of(triangle.time()))
- .build()
- )
- .build()
- )
- .build()
- : ObjectField.newObjectField()
- .name("type")
- .value(EnumValue.of(typeMapper.apply(type).name()))
- .build();
+ var optimizationField =
+ type == VehicleRoutingOptimizeType.TRIANGLE
+ ? ObjectField.newObjectField()
+ .name("triangle")
+ .value(
+ ObjectValue.newObjectValue()
+ .objectField(
+ ObjectField.newObjectField()
+ .name("flatness")
+ .value(FloatValue.of(triangle.slope()))
+ .build()
+ )
+ .objectField(
+ ObjectField.newObjectField()
+ .name("safety")
+ .value(FloatValue.of(triangle.safety()))
+ .build()
+ )
+ .objectField(
+ ObjectField.newObjectField()
+ .name("time")
+ .value(FloatValue.of(triangle.time()))
+ .build()
+ )
+ .build()
+ )
+ .build()
+ : ObjectField.newObjectField()
+ .name("type")
+ .value(EnumValue.of(typeMapper.apply(type).name()))
+ .build();
return ObjectValue.newObjectValue().objectField(optimizationField).build();
}
@@ -460,25 +461,26 @@ private static ObjectField mapVehicleParkingSelects(
) {
var selects = selectList
.stream()
- .map(select ->
- (Value) ObjectValue.newObjectValue()
- .objectField(
- ObjectField.newObjectField()
- .name("tags")
- .value(
- ArrayValue.newArrayValue()
- .values(
- select
- .tags()
- .stream()
- .map(tag -> (Value) StringValue.of(tag))
- .toList()
- )
- .build()
- )
- .build()
- )
- .build()
+ .map(
+ select ->
+ (Value) ObjectValue.newObjectValue()
+ .objectField(
+ ObjectField.newObjectField()
+ .name("tags")
+ .value(
+ ArrayValue.newArrayValue()
+ .values(
+ select
+ .tags()
+ .stream()
+ .map(tag -> (Value) StringValue.of(tag))
+ .toList()
+ )
+ .build()
+ )
+ .build()
+ )
+ .build()
)
.toList();
return ObjectField.newObjectField()
@@ -523,10 +525,10 @@ public DefaultMappingBuilder enumListReq(String key, List valueList) {
key,
ArrayValue.newArrayValue()
.values(
- (valueList
- .stream()
- .map(value -> (Value) new EnumValue(value.name()))
- .toList())
+ valueList
+ .stream()
+ .map(value -> (Value) new EnumValue(value.name()))
+ .toList()
)
.build()
);
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLAPI.java b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLAPI.java
index 508d5037107..0ed2d08f8cb 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLAPI.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLAPI.java
@@ -19,7 +19,6 @@
import java.util.Map;
import org.opentripplanner.apis.support.TracingUtils;
import org.opentripplanner.routing.api.request.RouteRequest;
-import org.opentripplanner.standalone.api.OtpServerRequestContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -64,7 +63,7 @@ public Response getGraphQL(
@HeaderParam("OTPMaxResolves") @DefaultValue("1000000") int maxResolves,
@Context HttpHeaders headers,
@Context UriInfo uriInfo,
- @Context OtpServerRequestContext serverContext
+ @Context GtfsGraphQLRequestContext requestContext
) {
if (jsonParameters == null || !jsonParameters.containsKey("query")) {
LOG.debug("No query found in body");
@@ -74,9 +73,10 @@ public Response getGraphQL(
.build();
}
- Locale locale = headers.getAcceptableLanguages().size() > 0
- ? headers.getAcceptableLanguages().get(0)
- : defaultRouteRequest.preferences().locale();
+ Locale locale =
+ headers.getAcceptableLanguages().size() > 0
+ ? headers.getAcceptableLanguages().get(0)
+ : defaultRouteRequest.preferences().locale();
String query = (String) jsonParameters.get("query");
Object queryVariables = jsonParameters.getOrDefault("variables", null);
@@ -104,7 +104,7 @@ public Response getGraphQL(
maxResolves,
timeout,
locale,
- GraphQLRequestContext.ofServerContext(serverContext),
+ requestContext,
TracingUtils.findTagsInHeadersOrQueryParameters(
gtfsApiParameters.tracingTags(),
headers,
@@ -121,11 +121,12 @@ public Response getGraphQL(
@HeaderParam("OTPMaxResolves") @DefaultValue("1000000") int maxResolves,
@Context HttpHeaders headers,
@Context UriInfo uriInfo,
- @Context OtpServerRequestContext serverContext
+ @Context GtfsGraphQLRequestContext requestContext
) {
- Locale locale = headers.getAcceptableLanguages().size() > 0
- ? headers.getAcceptableLanguages().get(0)
- : defaultRouteRequest.preferences().locale();
+ Locale locale =
+ headers.getAcceptableLanguages().size() > 0
+ ? headers.getAcceptableLanguages().get(0)
+ : defaultRouteRequest.preferences().locale();
return GtfsGraphQLIndex.getGraphQLResponse(
query,
null,
@@ -133,7 +134,7 @@ public Response getGraphQL(
maxResolves,
timeout,
locale,
- GraphQLRequestContext.ofServerContext(serverContext),
+ requestContext,
TracingUtils.findTagsInHeadersOrQueryParameters(
gtfsApiParameters.tracingTags(),
headers,
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLIndex.java b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLIndex.java
index 542e8ccc768..a6070338466 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLIndex.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLIndex.java
@@ -33,7 +33,7 @@ static ExecutionResult getGraphQLExecutionResult(
int maxResolves,
int timeoutMs,
Locale locale,
- GraphQLRequestContext requestContext,
+ GtfsGraphQLRequestContext requestContext,
Iterable tracingTags
) {
Instrumentation instrumentation = new MaxQueryComplexityInstrumentation(maxResolves);
@@ -84,7 +84,7 @@ static Response getGraphQLResponse(
int maxResolves,
int timeoutMs,
Locale locale,
- GraphQLRequestContext requestContext,
+ GtfsGraphQLRequestContext requestContext,
Iterable tracingTags
) {
ExecutionResult executionResult = getGraphQLExecutionResult(
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/GraphQLRequestContext.java b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLRequestContext.java
similarity index 69%
rename from application/src/main/java/org/opentripplanner/apis/gtfs/GraphQLRequestContext.java
rename to application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLRequestContext.java
index 8e0a0fb390a..de7d194d421 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/GraphQLRequestContext.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/GtfsGraphQLRequestContext.java
@@ -10,11 +10,10 @@
import org.opentripplanner.service.realtimevehicles.RealtimeVehicleService;
import org.opentripplanner.service.vehicleparking.VehicleParkingService;
import org.opentripplanner.service.vehiclerental.VehicleRentalService;
-import org.opentripplanner.standalone.api.OtpServerRequestContext;
import org.opentripplanner.transfer.regular.RegularTransferService;
import org.opentripplanner.transit.service.TransitService;
-public record GraphQLRequestContext(
+public record GtfsGraphQLRequestContext(
RoutingService routingService,
TransitService transitService,
TransitAlertService transitAlertService,
@@ -28,23 +27,6 @@ public record GraphQLRequestContext(
NearbyStopFinder nearbyStopFinder,
RouteRequest defaultRouteRequest
) {
- public static GraphQLRequestContext ofServerContext(OtpServerRequestContext context) {
- return new GraphQLRequestContext(
- context.routingService(),
- context.transitService(),
- context.transitAlertService(),
- context.transferService(),
- context.fareService(),
- context.vehicleRentalService(),
- context.vehicleParkingService(),
- context.realtimeVehicleService(),
- context.gtfsSchema(),
- context.nearbyPlaceFinder(),
- context.nearbyStopFinder(),
- context.defaultRouteRequest()
- );
- }
-
/**
* Returns a clone of the default route request. The clone is necessary because one HTTP
* request can lead to several GraphQL queries, for example through batch or alias queries.
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/IntrospectionTypeWiring.java b/application/src/main/java/org/opentripplanner/apis/gtfs/IntrospectionTypeWiring.java
index 289279ac422..b25f6caaee6 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/IntrospectionTypeWiring.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/IntrospectionTypeWiring.java
@@ -18,11 +18,9 @@ class IntrospectionTypeWiring {
private static final Predicate IS_METHOD_PUBLIC = method ->
Modifier.isPublic(method.getModifiers());
- private static final Predicate IS_METHOD_RETURN_TYPE_DATA_FETCHER = ((Predicate<
- Method
- >) method -> method.getReturnType().equals(DataFetcher.class)).or(method ->
- Arrays.asList(method.getReturnType().getInterfaces()).contains(DataFetcher.class)
- );
+ private static final Predicate IS_METHOD_RETURN_TYPE_DATA_FETCHER = (
+ (Predicate) method -> method.getReturnType().equals(DataFetcher.class)
+ ).or(method -> Arrays.asList(method.getReturnType().getInterfaces()).contains(DataFetcher.class));
private final TypeDefinitionRegistry typeRegistry;
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AgencyImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AgencyImpl.java
index ce527fa3250..410c92b02b5 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AgencyImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AgencyImpl.java
@@ -7,7 +7,7 @@
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.routing.alertpatch.EntitySelector;
@@ -115,11 +115,11 @@ private List getRoutes(DataFetchingEnvironment environment) {
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private TransitAlertService getTransitAlertService(DataFetchingEnvironment environment) {
- return environment.getContext().transitAlertService();
+ return environment.getContext().transitAlertService();
}
private Agency getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AlertImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AlertImpl.java
index b585ecde6f3..592dd299685 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AlertImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/AlertImpl.java
@@ -14,12 +14,13 @@
import java.util.Objects;
import java.util.stream.Collectors;
import javax.annotation.Nullable;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes.GraphQLAlertEffectType;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes.GraphQLAlertSeverityLevelType;
import org.opentripplanner.apis.gtfs.mapping.AlertCauseMapper;
+import org.opentripplanner.apis.gtfs.model.OffsetDateTimeRange;
import org.opentripplanner.apis.gtfs.model.RouteTypeModel;
import org.opentripplanner.apis.gtfs.model.StopOnRouteModel;
import org.opentripplanner.apis.gtfs.model.StopOnTripModel;
@@ -44,6 +45,20 @@ public class AlertImpl implements GraphQLDataFetchers.GraphQLAlert {
private static final String FALLBACK_EMPTY_STRING = "";
+ @Override
+ public DataFetcher> activityPeriods() {
+ return environment -> {
+ var zoneId = getTransitService(environment).getTimeZone();
+ return getSource(environment)
+ .calendar()
+ .timePeriods()
+ .stream()
+ .map(period -> OffsetDateTimeRange.of(period, zoneId))
+ .sorted(OffsetDateTimeRange.CHRONOLOGICAL_ORDER)
+ .toList();
+ };
+ }
+
@Override
public DataFetcher agency() {
return environment ->
@@ -400,7 +415,7 @@ private Object getUnknownForAlertEntityPair(
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private TransitAlert getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/DepartureRowImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/DepartureRowImpl.java
index d39f401de6d..3d8df57a527 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/DepartureRowImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/DepartureRowImpl.java
@@ -4,8 +4,8 @@
import graphql.schema.DataFetcher;
import graphql.schema.DataFetchingEnvironment;
import java.time.Duration;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
import org.opentripplanner.apis.gtfs.GraphQLUtils;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.model.TripTimeOnDate;
@@ -58,7 +58,7 @@ public DataFetcher> stoptimes() {
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private PatternAtStop getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/FeedImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/FeedImpl.java
index e5d6aad924a..1368e6f3e69 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/FeedImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/FeedImpl.java
@@ -6,7 +6,7 @@
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.apis.gtfs.model.FeedPublisher;
@@ -93,11 +93,11 @@ private List getAgencies(DataFetchingEnvironment environment) {
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private TransitAlertService getTransitAlertService(DataFetchingEnvironment environment) {
- return environment.getContext().transitAlertService();
+ return environment.getContext().transitAlertService();
}
private String getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/LegImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/LegImpl.java
index 4d989c30d8e..647a1cb0c0e 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/LegImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/LegImpl.java
@@ -9,7 +9,7 @@
import java.util.stream.Collectors;
import org.dataloader.DataLoader;
import org.locationtech.jts.geom.Geometry;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.apis.gtfs.mapping.LocalDateMapper;
@@ -124,23 +124,21 @@ public DataFetcher> fareProducts() {
return List.of();
}
Leg leg = getSource(environment);
- return loader
- .load(itinerary)
- .thenApply(fare -> {
- if (fare == null || fare.isEmpty()) {
- return List.of();
- }
- var legOffers = new ArrayList<>(fare.getLegProducts().get(leg));
- // Itinerary-level products (e.g. day passes) only apply to transit legs
- var itineraryOffers = leg.isTransitLeg()
- ? fare
- .getItineraryProducts()
- .stream()
- .map(fp -> FareOffer.of(itinerary.legs().getFirst().startTime(), fp))
- .toList()
- : List.of();
- return (Iterable) ListUtils.combine(itineraryOffers, legOffers);
- });
+ return loader.load(itinerary).thenApply(fare -> {
+ if (fare == null || fare.isEmpty()) {
+ return List.of();
+ }
+ var legOffers = new ArrayList<>(fare.getLegProducts().get(leg));
+ // Itinerary-level products (e.g. day passes) only apply to transit legs
+ var itineraryOffers = leg.isTransitLeg()
+ ? fare
+ .getItineraryProducts()
+ .stream()
+ .map(fp -> FareOffer.of(itinerary.legs().getFirst().startTime(), fp))
+ .toList()
+ : List.of();
+ return (Iterable) ListUtils.combine(itineraryOffers, legOffers);
+ });
};
return (DataFetcher>) fetcher;
}
@@ -376,24 +374,24 @@ private DataFetcher> alternativeLegs(NavigationDirection direction
boolean limitToExactOriginStop =
originModesWithParentStation == null ||
- !(originModesWithParentStation
- .stream()
- .map(GraphQLTypes.GraphQLTransitMode::toString)
- .toList()
- .contains(originalLeg.mode().name()));
+ !originModesWithParentStation
+ .stream()
+ .map(GraphQLTypes.GraphQLTransitMode::toString)
+ .toList()
+ .contains(originalLeg.mode().name());
boolean limitToExactDestinationStop =
destinationModesWithParentStation == null ||
- !(destinationModesWithParentStation
- .stream()
- .map(GraphQLTypes.GraphQLTransitMode::toString)
- .toList()
- .contains(originalLeg.mode().name()));
+ !destinationModesWithParentStation
+ .stream()
+ .map(GraphQLTypes.GraphQLTransitMode::toString)
+ .toList()
+ .contains(originalLeg.mode().name());
var res = AlternativeLegs.getAlternativeLegs(
environment.getSource(),
numberOfLegs,
- environment.getContext().transitService(),
+ environment.getContext().transitService(),
direction,
AlternativeLegsFilter.NO_FILTER,
limitToExactOriginStop,
@@ -430,6 +428,6 @@ private Leg getSource(DataFetchingEnvironment environment) {
}
private TransitService transitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
}
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PatternImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PatternImpl.java
index 7b7c982155d..dfe2ffa5f0f 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PatternImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PatternImpl.java
@@ -13,12 +13,13 @@
import org.locationtech.jts.geom.Coordinate;
import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.LineString;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes.GraphQLPatternTripsOnServiceDateArgs;
import org.opentripplanner.apis.gtfs.service.ApiTransitService;
import org.opentripplanner.apis.gtfs.support.time.LocalDateRangeUtil;
+import org.opentripplanner.apis.gtfs.support.time.OffsetDateTimeRangeUtil;
import org.opentripplanner.apis.support.SemanticHash;
import org.opentripplanner.framework.graphql.GraphQLUtils;
import org.opentripplanner.routing.alertpatch.EntitySelector;
@@ -89,9 +90,10 @@ public DataFetcher> alerts() {
alert
.entities()
.stream()
- .anyMatch(entity ->
- (entity instanceof EntitySelector.StopAndRoute stopAndRoute &&
- stopAndRoute.routeId().equals(getRoute(environment).getId()))
+ .anyMatch(
+ entity ->
+ entity instanceof EntitySelector.StopAndRoute stopAndRoute &&
+ stopAndRoute.routeId().equals(getRoute(environment).getId())
)
)
.toList()
@@ -115,9 +117,10 @@ public DataFetcher> alerts() {
alert
.entities()
.stream()
- .anyMatch(entity ->
- (entity instanceof EntitySelector.StopAndTrip stopAndTrip &&
- stopAndTrip.tripId().equals(getSource(environment).getId()))
+ .anyMatch(
+ entity ->
+ entity instanceof EntitySelector.StopAndTrip stopAndTrip &&
+ stopAndTrip.tripId().equals(getSource(environment).getId())
)
)
.toList()
@@ -260,6 +263,10 @@ public DataFetcher> canceledTrips() {
var args = new GraphQLTypes.GraphQLPatternCanceledTripsArgs(environment.getArguments());
var serviceDateRanges = LocalDateRangeUtil.mapRanges(args.getGraphQLServiceDateRanges());
+ var runningTimePeriods = OffsetDateTimeRangeUtil.mapRanges(
+ args.getGraphQLRunningTimeRanges(),
+ "runningTimeRanges"
+ );
var requestBuilder = TripOnServiceDateRequest.of().withIncludePatterns(
FilterValues.ofEmptyIsEverything("patterns", List.of(pattern.getId()))
@@ -269,6 +276,11 @@ public DataFetcher> canceledTrips() {
FilterValues.ofRequired("serviceDateRanges", serviceDateRanges)
);
}
+ if (runningTimePeriods != null) {
+ requestBuilder.withIncludeRunningTimePeriods(
+ FilterValues.ofRequired("runningTimeRanges", runningTimePeriods)
+ );
+ }
return transitService.findCanceledTrips(requestBuilder.build());
};
@@ -291,15 +303,15 @@ private List getTrips(DataFetchingEnvironment environment) {
}
private RealtimeVehicleService getRealtimeVehiclesService(DataFetchingEnvironment environment) {
- return environment.getContext().realTimeVehicleService();
+ return environment.getContext().realTimeVehicleService();
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private TransitAlertService getTransitAlertService(DataFetchingEnvironment environment) {
- return environment.getContext().transitAlertService();
+ return environment.getContext().transitAlertService();
}
private TripPattern getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PlanConnectionImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PlanConnectionImpl.java
index 5886f487d24..6381d28f094 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PlanConnectionImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/PlanConnectionImpl.java
@@ -7,7 +7,7 @@
import graphql.schema.DataFetchingEnvironment;
import java.time.Duration;
import java.time.OffsetDateTime;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.model.PlanPageInfo;
import org.opentripplanner.model.plan.Itinerary;
@@ -44,16 +44,18 @@ public DataFetcher> routingErrors() {
@Override
public DataFetcher pageInfo() {
return environment -> {
- var startCursor = getSource(environment).getNextPageCursor() != null
- ? getSource(environment).getPreviousPageCursor().encode()
- : null;
+ var startCursor =
+ getSource(environment).getNextPageCursor() != null
+ ? getSource(environment).getPreviousPageCursor().encode()
+ : null;
ConnectionCursor startConnectionCursor = null;
if (startCursor != null) {
startConnectionCursor = new DefaultConnectionCursor(startCursor);
}
- var endCursor = getSource(environment).getPreviousPageCursor() != null
- ? getSource(environment).getNextPageCursor().encode()
- : null;
+ var endCursor =
+ getSource(environment).getPreviousPageCursor() != null
+ ? getSource(environment).getNextPageCursor().encode()
+ : null;
ConnectionCursor endConnectionCursor = null;
if (endCursor != null) {
endConnectionCursor = new DefaultConnectionCursor(endCursor);
@@ -74,7 +76,7 @@ public DataFetcher pageInfo() {
}
private TransitService getTransitService(DataFetchingEnvironment environment) {
- return environment.getContext().transitService();
+ return environment.getContext().transitService();
}
private RoutingResponse getSource(DataFetchingEnvironment environment) {
diff --git a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/QueryTypeImpl.java b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/QueryTypeImpl.java
index 6127c6b8219..86a8efb2599 100644
--- a/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/QueryTypeImpl.java
+++ b/application/src/main/java/org/opentripplanner/apis/gtfs/datafetchers/QueryTypeImpl.java
@@ -1,8 +1,6 @@
package org.opentripplanner.apis.gtfs.datafetchers;
-import static org.opentripplanner.apis.gtfs.mapping.AlertCauseMapper.getGraphQLCause;
-import static org.opentripplanner.apis.gtfs.mapping.AlertEffectMapper.getGraphQLEffect;
-import static org.opentripplanner.apis.gtfs.mapping.SeverityMapper.getGraphQLSeverity;
+import static org.opentripplanner.apis.gtfs.support.filter.AlertsFilter.filterAlerts;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Multimaps;
@@ -27,16 +25,18 @@
import javax.annotation.Nullable;
import org.locationtech.jts.geom.Coordinate;
import org.locationtech.jts.geom.Envelope;
-import org.opentripplanner.apis.gtfs.GraphQLRequestContext;
import org.opentripplanner.apis.gtfs.GraphQLUtils;
+import org.opentripplanner.apis.gtfs.GtfsGraphQLRequestContext;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes;
import org.opentripplanner.apis.gtfs.generated.GraphQLTypes.GraphQLQueryTypeStopsByRadiusArgs;
+import org.opentripplanner.apis.gtfs.mapping.AlertsConnectionFilterMapper;
import org.opentripplanner.apis.gtfs.mapping.CanceledTripsFilterMapper;
import org.opentripplanner.apis.gtfs.mapping.routerequest.LegacyRouteRequestMapper;
import org.opentripplanner.apis.gtfs.mapping.routerequest.RouteRequestMapper;
import org.opentripplanner.apis.gtfs.model.CanceledTripsSummary;
import org.opentripplanner.apis.gtfs.support.filter.PatternByDateFilterUtil;
+import org.opentripplanner.apis.gtfs.support.sort.AlertsConnectionOrdering;
import org.opentripplanner.apis.gtfs.support.time.LocalDateRangeUtil;
import org.opentripplanner.core.model.id.FeedScopedId;
import org.opentripplanner.ext.fares.model.FareRuleSet;
@@ -56,7 +56,6 @@
import org.opentripplanner.place.api.PatternAtStop;
import org.opentripplanner.place.api.PlaceAtDistance;
import org.opentripplanner.place.api.PlaceType;
-import org.opentripplanner.routing.alertpatch.EntitySelector;
import org.opentripplanner.routing.alertpatch.TransitAlert;
import org.opentripplanner.routing.api.request.RouteRequest;
import org.opentripplanner.routing.api.response.RoutingResponse;
@@ -117,13 +116,25 @@ public DataFetcher> alerts() {
};
}
+ @Override
+ public DataFetcher> alertsConnection() {
+ return environment -> {
+ var args = new GraphQLTypes.GraphQLQueryTypeAlertsConnectionArgs(environment.getArguments());
+ var request = AlertsConnectionFilterMapper.map(args.getGraphQLFilters());
+ var alerts = getTransitAlertService(environment).findAlerts(request);
+ return new SimpleCountedListConnection<>(AlertsConnectionOrdering.sort(alerts)).get(
+ environment
+ );
+ };
+ }
+
@Override
public DataFetcher bikePark() {
return environment -> {
var args = new GraphQLTypes.GraphQLQueryTypeBikeParkArgs(environment.getArguments());
VehicleParkingService vehicleParkingService = environment
- .getContext()
+ .getContext()
.vehicleParkingService();
return vehicleParkingService
@@ -139,7 +150,7 @@ public DataFetcher bikePark() {
public DataFetcher> bikeParks() {
return environment -> {
VehicleParkingService vehicleParkingService = environment
- .getContext()
+ .getContext()
.vehicleParkingService();
return vehicleParkingService.listBikeParks().stream().toList();
@@ -152,7 +163,7 @@ public DataFetcher bikeRentalStation() {
var args = new GraphQLTypes.GraphQLQueryTypeBikeRentalStationArgs(environment.getArguments());
VehicleRentalService vehicleRentalStationService = environment
- .getContext()
+ .getContext()
.vehicleRentalService();
return vehicleRentalStationService
@@ -170,7 +181,7 @@ public DataFetcher bikeRentalStation() {
public DataFetcher> bikeRentalStations() {
return environment -> {
VehicleRentalService vehicleRentalStationService = environment
- .getContext()
+ .getContext()
.vehicleRentalService();
var args = new GraphQLTypes.GraphQLQueryTypeBikeRentalStationsArgs(
@@ -215,7 +226,7 @@ public DataFetcher carPark() {
var args = new GraphQLTypes.GraphQLQueryTypeCarParkArgs(environment.getArguments());
VehicleParkingService vehicleParkingService = environment
- .getContext()
+ .getContext()
.vehicleParkingService();
return vehicleParkingService
@@ -231,7 +242,7 @@ public DataFetcher carPark() {
public DataFetcher> carParks() {
return environment -> {
VehicleParkingService vehicleParkingService = environment
- .getContext()
+ .getContext()
.vehicleParkingService();
var args = new GraphQLTypes.GraphQLQueryTypeCarParksArgs(environment.getArguments());
@@ -310,35 +321,40 @@ public DataFetcher> nearest() {
GraphQLTypes.GraphQLInputFiltersInput filterByIds = args.getGraphQLFilterByIds();
if (filterByIds != null) {
- filterByStops = filterByIds.getGraphQLStops() != null
- ? FeedScopedId.parse(filterByIds.getGraphQLStops())
- : null;
- filterByStations = filterByIds.getGraphQLStations() != null
- ? FeedScopedId.parse(filterByIds.getGraphQLStations())
- : null;
- filterByRoutes = filterByIds.getGraphQLRoutes() != null
- ? FeedScopedId.parse(filterByIds.getGraphQLRoutes())
- : null;
+ filterByStops =
+ filterByIds.getGraphQLStops() != null
+ ? FeedScopedId.parse(filterByIds.getGraphQLStops())
+ : null;
+ filterByStations =
+ filterByIds.getGraphQLStations() != null
+ ? FeedScopedId.parse(filterByIds.getGraphQLStations())
+ : null;
+ filterByRoutes =
+ filterByIds.getGraphQLRoutes() != null
+ ? FeedScopedId.parse(filterByIds.getGraphQLRoutes())
+ : null;
filterByBikeRentalStations = filterByIds.getGraphQLBikeRentalStations();
}
- List filterByModes = args.getGraphQLFilterByModes() != null
- ? args
- .getGraphQLFilterByModes()
- .stream()
- .map(mode -> {
- try {
- return TransitMode.valueOf(mode.name());
- } catch (IllegalArgumentException ignored) {
- return null;
- }
- })
- .filter(Objects::nonNull)
- .toList()
- : null;
- List filterByPlaceTypes = args.getGraphQLFilterByPlaceTypes() != null
- ? args.getGraphQLFilterByPlaceTypes().stream().map(GraphQLUtils::toModel).toList()
- : DEFAULT_PLACE_TYPES;
+ List filterByModes =
+ args.getGraphQLFilterByModes() != null
+ ? args
+ .getGraphQLFilterByModes()
+ .stream()
+ .map(mode -> {
+ try {
+ return TransitMode.valueOf(mode.name());
+ } catch (IllegalArgumentException ignored) {
+ return null;
+ }
+ })
+ .filter(Objects::nonNull)
+ .toList()
+ : null;
+ List filterByPlaceTypes =
+ args.getGraphQLFilterByPlaceTypes() != null
+ ? args.getGraphQLFilterByPlaceTypes().stream().map(GraphQLUtils::toModel).toList()
+ : DEFAULT_PLACE_TYPES;
List filterByNetwork = args.getGraphQLFilterByNetwork();
List places;
@@ -387,7 +403,7 @@ public DataFetcher