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

org.opentripplanner.model.OtpTransitService Maven / Gradle / Ivy

package org.opentripplanner.model;

import com.google.common.collect.Multimap;
import java.util.Collection;
import java.util.List;
import org.opentripplanner.ext.flex.trip.FlexTrip;
import org.opentripplanner.model.transfer.ConstrainedTransfer;
import org.opentripplanner.transit.model.basic.Notice;
import org.opentripplanner.transit.model.framework.AbstractTransitEntity;
import org.opentripplanner.transit.model.framework.FeedScopedId;
import org.opentripplanner.transit.model.network.TripPattern;
import org.opentripplanner.transit.model.organization.Agency;
import org.opentripplanner.transit.model.organization.Operator;
import org.opentripplanner.transit.model.site.BoardingArea;
import org.opentripplanner.transit.model.site.Entrance;
import org.opentripplanner.transit.model.site.Pathway;
import org.opentripplanner.transit.model.site.PathwayNode;
import org.opentripplanner.transit.model.timetable.Trip;
import org.opentripplanner.transit.service.StopModel;

/**
 * Methods for accessing imported entities.
 */
public interface OtpTransitService {
  /**
   * @return a list of all Agencies.
   */
  Collection getAllAgencies();

  /**
   * @return a list of all Operators, the list may be empty if there are no Operators in the
   * imported data.
   */
  Collection getAllOperators();

  Collection getAllFeedInfos();

  StopModel stopModel();

  /**
   * This is equivalent to a Transmodel Notice Assignments. The map key may reference entity ids of
   * any type (Serializable).
   */
  Multimap getNoticeAssignments();

  Collection getAllPathways();

  /**
   * @return all ids for both Calendars and CalendarDates merged into on list without duplicates.
   */
  Collection getAllServiceIds();

  List getShapePointsForShapeId(FeedScopedId shapeId);

  Collection getAllEntrances();

  Collection getAllPathwayNodes();

  Collection getAllBoardingAreas();

  /**
   * @return the list of {@link StopTime} objects associated with the trip, sorted by {@link
   * StopTime#getStopSequence()}
   */
  List getStopTimesForTrip(Trip trip);

  Collection getAllTransfers();

  Collection getTripPatterns();

  Collection getAllTrips();

  Collection> getAllFlexTrips();

  /**
   * @return if transit service has any active services. The graph build might filter out all
   * transit services if they are outside the configured 'transitServiceStart' and 'transitServiceEnd'
   */
  boolean hasActiveTransit();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy