
org.opentripplanner.standalone.config.routerconfig.updaters.SiriSXUpdaterConfig Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of otp Show documentation
Show all versions of otp Show documentation
The OpenTripPlanner multimodal journey planning system
The newest version!
package org.opentripplanner.standalone.config.routerconfig.updaters;
import static org.opentripplanner.standalone.config.framework.json.OtpVersion.V2_0;
import static org.opentripplanner.standalone.config.framework.json.OtpVersion.V2_3;
import java.time.Duration;
import org.opentripplanner.ext.siri.updater.SiriSXUpdaterParameters;
import org.opentripplanner.standalone.config.framework.json.NodeAdapter;
public class SiriSXUpdaterConfig {
static final String URL_DESCRIPTION =
"""
Use the file protocol to set a directory for reading updates from a directory. The file
loader will look for xml files: '*.xml' in the configured directory. The files are
renamed by the loader when processed:
_a.xml_ ➞ _a.xml.inProgress_ ➞ _a.xml.ok_ or _a.xml.failed_
""";
public static SiriSXUpdaterParameters create(String configRef, NodeAdapter c) {
return new SiriSXUpdaterParameters(
configRef,
c.of("feedId").since(V2_0).summary("The ID of the feed to apply the updates to.").asString(),
c
.of("url")
.since(V2_0)
.summary(
"""
The URL to send the HTTP requests to. Supports http/https and file protocol.
"""
)
.description(URL_DESCRIPTION)
.asString(),
c.of("requestorRef").since(V2_0).summary("The requester reference.").asString(null),
c
.of("frequency")
.since(V2_0)
.summary("How often the updates should be retrieved.")
.asDuration(Duration.ofMinutes(1)),
c
.of("earlyStart")
.since(V2_0)
.summary("This value is subtracted from the actual validity defined in the message.")
.description(
"""
Normally the planned departure time is used, so setting this to 10s will cause the
SX-message to be included in trip-results 10 seconds before the the planned departure
time."""
)
.asDuration(Duration.ZERO),
c
.of("timeout")
.since(V2_0)
.summary("The HTTP timeout to download the updates.")
.asDuration(Duration.ofSeconds(15)),
c
.of("blockReadinessUntilInitialized")
.since(V2_0)
.summary(
"Whether catching up with the updates should block the readiness check from returning a 'ready' result."
)
.asBoolean(false),
HttpHeadersConfig.headers(c, V2_3)
);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy