Zum Inhalt

Java GTFS-Realtime Sprachbindungen

Maven Zentrale Version

Stellt Java-Klassen zur Verfügung, die aus der GTFS-realtimeProtocol Buffer-Spezifikation generiert wurden. Mit diesen Klassen können Sie einen binären Protocol Buffer GTFS-Realtime Datenfeed in Java-Objekte parsen.

Hinzufügen der Abhängigkeit

Um die gtfs-realtime-bindings Klassen in Ihrem eigenen Projekt zu verwenden, müssen Sie eine entsprechende Abhängigkeit hinzufügen. Wir veröffentlichen unser Modul im Maven Central Repository, so dass es leicht von Java-Build-Tools wie Maven, Ivy und Gradle referenziert werden kann.

Für Maven, fügen Sie das Folgende zu Ihrem pom.xml Abhängigkeit Abschnitt hinzu:

<dependency>
  <groupId>org.mobilitydata</groupId>
  <artifactId>gtfs-realtime-bindings</artifactId>
  <version>0.0.8</version>
</dependency>

Für Gradle, fügen Sie das Folgende zu Ihrem build.gradle Abhängigkeit Abschnitt hinzu:

implementation group: 'org.mobilitydata', name: 'gtfs-realtime-bindings', version: '0.0.8'

Stellen Sie sicher, dass das Maven Central Repository von Ihrem Projekt referenziert wird.

Beispielcode

Der folgende Codeausschnitt veranschaulicht das Herunterladen eines GTFS-Realtime datenfeeds von einer bestimmten URL, das Parsen als FeedMessage (der Stammtyp des GTFS-Realtime schemas) und die Iteration der Ergebnisse.

import java.net.URL;

import com.google.transit.realtime.GtfsRealtime.FeedEntity;
import com.google.transit.realtime.GtfsRealtime.FeedMessage;

public class GtfsRealtimeExample {
  public static void main(String[] args) throws Exception {
    URL url = new URL("URL OF YOUR GTFS-REALTIME SOURCE GOES HERE");
    FeedMessage feed = FeedMessage.parseFrom(url.openStream());
    for (FeedEntity entity : feed.getEntityList()) {
      if (entity.hasTripUpdate()) {
        System.out.println(entity.getTripUpdate());
      }
    }
  }
}

Weitere Details zu den Namenskonventionen für die Java-Klassen, die aus dem gtfs-realtime.proto generiert werden, finden Sie im Abschnitt Java Generated Codesectionauf der Protocol Buffers Developer Site.

Projekt-Geschichte

0.0.4 und niedriger

Dieses Projekt wurde ursprünglich von Google erstellt. Sie können Versionen 0.0.4 und älter unter der Group ID com.google.transit hier auf Maven Central herunterladen.

0.0.5

MobilityData hat Anfang 2019 begonnen, das Projekt zu pflegen und hat zunächst Release-Artefakte über JCenter veröffentlicht. Sie können Version 0.0.5 unter der Group ID io.mobilitydata.transit hier auf Maven Central herunterladen.

0.0.6 und 0.0.7

JCenter wurde im Jahr 2021 abgeschaltet. Vor der Abschaltung verhinderte ein Synchronisationsproblem, dass die Versionen 0.0.6 und 0.0.7 von JCenter zu Maven Central synchronisiert werden konnten, so dass ein direkter Artefakt-Download für diese Versionen derzeit nicht möglich ist. Sie können sie jedoch selbst aus den Tags kompilieren, indem Sie den Befehl mvn package verwenden.

0.0.8 und höher

Im Jahr 2022 ging MobilityData dazu über, Artefakte direkt in Maven Central unter der Gruppen-ID org.mobilitydata zu veröffentlichen. Dort werden die Versionen 0.0.8 und höher veröffentlicht.