From 3d3e30fa97142e81190594eb9d84e7cb5ef4f570 Mon Sep 17 00:00:00 2001 From: Paul Heinrich Date: Wed, 22 Jan 2025 13:21:45 +0100 Subject: [PATCH] small enhancements --- .../contrib/vsp/pt/fare/PtFareConfigGroup.java | 17 +++++++++-------- .../contrib/vsp/pt/fare/PtFareParams.java | 2 ++ .../vsp/pt/fare/ChainedPtFareHandlerTest.java | 8 ++++++-- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareConfigGroup.java b/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareConfigGroup.java index ca1ce2fdb65..82c7fa36c7d 100644 --- a/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareConfigGroup.java +++ b/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareConfigGroup.java @@ -29,6 +29,10 @@ public PtFareConfigGroup() { super(MODULE_NAME); } + public void addPtFareParameterSet(PtFareParams ptFareParams) { + addParameterSet(ptFareParams); + } + @Override public Map getComments() { Map map = super.getComments(); @@ -60,14 +64,11 @@ public void setUpperBoundFactor(double upperBoundFactor) { @Override public ConfigGroup createParameterSet(final String type) { - switch (type) { - case DistanceBasedPtFareParams.SET_TYPE: - return new DistanceBasedPtFareParams(); - case FareZoneBasedPtFareParams.SET_TYPE: - return new FareZoneBasedPtFareParams(); - default: - throw new IllegalArgumentException(type); - } + return switch (type) { + case DistanceBasedPtFareParams.SET_TYPE -> new DistanceBasedPtFareParams(); + case FareZoneBasedPtFareParams.SET_TYPE -> new FareZoneBasedPtFareParams(); + default -> throw new IllegalArgumentException(type); + }; } @Override diff --git a/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareParams.java b/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareParams.java index 2ab1c501d4f..637404969a4 100644 --- a/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareParams.java +++ b/contribs/vsp/src/main/java/org/matsim/contrib/vsp/pt/fare/PtFareParams.java @@ -11,6 +11,8 @@ public abstract class PtFareParams extends ReflectiveConfigGroup { public static final String DESCRIPTION = "description"; private int order; + + //nullable. If null, it will be ignored. private String fareZoneShp; private String transactionPartner; private String description; diff --git a/contribs/vsp/src/test/java/org/matsim/contrib/vsp/pt/fare/ChainedPtFareHandlerTest.java b/contribs/vsp/src/test/java/org/matsim/contrib/vsp/pt/fare/ChainedPtFareHandlerTest.java index 5fb7ea83355..f3f7836a943 100644 --- a/contribs/vsp/src/test/java/org/matsim/contrib/vsp/pt/fare/ChainedPtFareHandlerTest.java +++ b/contribs/vsp/src/test/java/org/matsim/contrib/vsp/pt/fare/ChainedPtFareHandlerTest.java @@ -70,7 +70,10 @@ void testChainedPtFareHandler() { distanceBased2.setTransactionPartner(DISTANCE_BASED_TRANSACTION_PARTNER); distanceBased2.setMinFare(7.0); - ptFareConfigGroup.addParameterSet(fareZoneBased); + PtFareParams fareZoneBased1; + ptFareConfigGroup.addPtFareParameterSet(fareZoneBased1); + + ptFareConfigGroup.addPtFareParameterSet(fareZoneBased); ptFareConfigGroup.addParameterSet(distanceBased); ptFareConfigGroup.addParameterSet(distanceBased2); @@ -145,7 +148,8 @@ public void install() { // rb17 to Regensburg 2nd home location departs at 16:52 (beyond distance fare 1 zone, distance fare 2 applies, 10230.93m) work2.setEndTime(16 * 3600. + 40 * 60); Activity work3 = fac.createActivityFromCoord("work", new Coord(726645.48, 5433383.16)); - // rb17 to Kelheim home location departs at 18:46, then transfer to bus 6022 (beyond distance fare 1 zone, distance fare 2 applies, 19871.38m) + // rb17 to Kelheim home location departs at 18:46, then transfer to bus 6022 (beyond distance fare 1 zone, distance fare 2 applies, 19871 + // .38m) work3.setEndTime(18 * 3600. + 40 * 60); Activity home2 = fac.createActivityFromCoord("home", new Coord(710300.624, 5422165.737));