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

org.opentripplanner.apis.gtfs.datafetchers.RideHailingEstimateImpl Maven / Gradle / Ivy

The newest version!
package org.opentripplanner.apis.gtfs.datafetchers;

import graphql.schema.DataFetcher;
import graphql.schema.DataFetchingEnvironment;
import java.time.Duration;
import org.opentripplanner.apis.gtfs.generated.GraphQLDataFetchers;
import org.opentripplanner.apis.gtfs.model.RideHailingProvider;
import org.opentripplanner.ext.ridehailing.model.RideEstimate;
import org.opentripplanner.transit.model.basic.Money;

public class RideHailingEstimateImpl implements GraphQLDataFetchers.GraphQLRideHailingEstimate {

  @Override
  public DataFetcher arrival() {
    return env -> getSource(env).arrival();
  }

  @Override
  public DataFetcher maxPrice() {
    return env -> getSource(env).maxPrice();
  }

  @Override
  public DataFetcher minPrice() {
    return env -> getSource(env).minPrice();
  }

  @Override
  public DataFetcher productName() {
    return env -> getSource(env).productName();
  }

  @Override
  public DataFetcher provider() {
    return env -> new RideHailingProvider(getSource(env).provider().name().toLowerCase());
  }

  private RideEstimate getSource(DataFetchingEnvironment environment) {
    return environment.getSource();
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy