lib/onebusaway_sdk/resources/arrival_and_departure.rb
# frozen_string_literal: true module OnebusawaySDK module Resources class ArrivalAndDeparture # arrival-and-departure-for-stop # # @overload retrieve(stop_id, service_date:, trip_id:, stop_sequence: nil, time: nil, vehicle_id: nil, request_options: {}) # # @param stop_id [String] # @param service_date [Integer] # @param trip_id [String] # @param stop_sequence [Integer] # @param time [Integer] # @param vehicle_id [String] # @param request_options [OnebusawaySDK::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OnebusawaySDK::Models::ArrivalAndDepartureRetrieveResponse] # # @see OnebusawaySDK::Models::ArrivalAndDepartureRetrieveParams def retrieve(stop_id, params) parsed, options = OnebusawaySDK::ArrivalAndDepartureRetrieveParams.dump_request(params) @client.request( method: :get, path: ["api/where/arrival-and-departure-for-stop/%1$s.json", stop_id], query: parsed.transform_keys( service_date: "serviceDate", trip_id: "tripId", stop_sequence: "stopSequence", vehicle_id: "vehicleId" ), model: OnebusawaySDK::Models::ArrivalAndDepartureRetrieveResponse, options: options ) end # arrivals-and-departures-for-stop # # @overload list(stop_id, minutes_after: nil, minutes_before: nil, time: nil, request_options: {}) # # @param stop_id [String] # # @param minutes_after [Integer] Include vehicles arriving or departing in the next n minutes. # # @param minutes_before [Integer] Include vehicles having arrived or departed in the previous n minutes. # # @param time [Time] The specific time for querying the system status. # # @param request_options [OnebusawaySDK::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OnebusawaySDK::Models::ArrivalAndDepartureListResponse] # # @see OnebusawaySDK::Models::ArrivalAndDepartureListParams def list(stop_id, params = {}) parsed, options = OnebusawaySDK::ArrivalAndDepartureListParams.dump_request(params) @client.request( method: :get, path: ["api/where/arrivals-and-departures-for-stop/%1$s.json", stop_id], query: parsed.transform_keys(minutes_after: "minutesAfter", minutes_before: "minutesBefore"), model: OnebusawaySDK::Models::ArrivalAndDepartureListResponse, options: options ) end # @api private # # @param client [OnebusawaySDK::Client] def initialize(client:) @client = client end end end end