All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.opentripplanner.transit.api.request.TripRequestBuilder Maven / Gradle / Ivy

The newest version!
package org.opentripplanner.transit.api.request;

import java.time.LocalDate;
import java.util.List;
import org.opentripplanner.transit.api.model.FilterValues;
import org.opentripplanner.transit.model.framework.FeedScopedId;

public class TripRequestBuilder {

  private FilterValues agencies = FilterValues.ofEmptyIsEverything(
    "agencies",
    List.of()
  );
  private FilterValues routes = FilterValues.ofEmptyIsEverything("routes", List.of());
  private FilterValues netexInternalPlanningCodes = FilterValues.ofEmptyIsEverything(
    "netexInternalPlanningCodes",
    List.of()
  );
  private FilterValues serviceDates = FilterValues.ofEmptyIsEverything(
    "serviceDates",
    List.of()
  );

  TripRequestBuilder() {}

  public TripRequestBuilder withAgencies(FilterValues agencies) {
    this.agencies = agencies;
    return this;
  }

  public TripRequestBuilder withRoutes(FilterValues routes) {
    this.routes = routes;
    return this;
  }

  public TripRequestBuilder withNetexInternalPlanningCodes(
    FilterValues netexInternalPlanningCodes
  ) {
    this.netexInternalPlanningCodes = netexInternalPlanningCodes;
    return this;
  }

  public TripRequestBuilder withServiceDates(FilterValues serviceDates) {
    this.serviceDates = serviceDates;
    return this;
  }

  public TripRequest build() {
    return new TripRequest(agencies, routes, netexInternalPlanningCodes, serviceDates);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy