Record Class StopArrivalQuery

java.lang.Object
java.lang.Record
com.cta4j.train.arrival.query.StopArrivalQuery
Record Components:
stopId - the ID of the stop to retrieve arrival information for
line - the optional train line to filter arrival information by
maxResults - the optional maximum number of arrival information to return

@NullMarked public record StopArrivalQuery(String stopId, @Nullable TrainLine line, @Nullable Integer maxResults) extends Record
Represents a query for train arrival information for a specific stop.
  • Constructor Details

    • StopArrivalQuery

      public StopArrivalQuery(String stopId, @Nullable TrainLine line, @Nullable Integer maxResults)
      Constructs a StopArrivalQuery.
      Parameters:
      stopId - the ID of the stop to retrieve arrival information for
      line - the optional train line to filter arrival information by
      maxResults - the optional maximum number of arrival information to return
      Throws:
      NullPointerException - if stopId is null
      IllegalArgumentException - if maxResults is non-null and not positive
  • Method Details

    • builder

      public static StopArrivalQuery.Builder builder(String stopId)
      Creates a builder for StopArrivalQuery.
      Parameters:
      stopId - the ID of the stop to retrieve arrival information for
      Returns:
      a new Builder instance
      Throws:
      NullPointerException - if stopId is null
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • stopId

      public String stopId()
      Returns the value of the stopId record component.
      Returns:
      the value of the stopId record component
    • line

      public @Nullable TrainLine line()
      Returns the value of the line record component.
      Returns:
      the value of the line record component
    • maxResults

      public @Nullable Integer maxResults()
      Returns the value of the maxResults record component.
      Returns:
      the value of the maxResults record component