Java-Beispiel

Wenn Sie die gtfs-realtime-bindings-Java-Klassen in Ihrem eigenen Projekt verwenden möchten, müssen Sie eine entsprechende Abhängigkeit hinzufügen. Wir veröffentlichen unser Modul im Maven Central Repository, damit Java-Build-Tools wie Maven, Ivy und Gradle einfach darauf verweisen können.

In den Abhängigkeits-Snippets unten ist der Versionsstring X.Y.Z durch die neueste Version zu ersetzen, die im Maven Central Repository verfügbar ist.

Wenn Sie Maven verwenden, fügen Sie im Abschnitt mit den pom.xml-Abhängigkeiten folgenden Code ein:

<dependency>
  <groupId>com.google.transit</groupId>
  <artifactId>gtfs-realtime-bindings</artifactId>
  <version>X.Y.Z</version>
</dependency>

Falls Sie Gradle nutzen, fügen Sie im Abschnitt mit den build.gradle-Abhängigkeiten folgenden Code ein:

compile group: 'org.google.transit', name: 'gtfs-realtime-bindings', version: 'X.Y.Z'

Im folgenden Code-Snippet wird veranschaulicht, wie ein GTFS Realtime-Datenfeed von einer bestimmten URL heruntergeladen und als FeedMessage (Stammtyp des GTFS Realtime-Schemas) geparst wird. Anschließend werden die Ergebnisse iteriert.

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 Informationen finden Sie auf der Java-Projektseite.