Muestra de Java

Para usar las clases gtfs-realtime-bindings de Java en tu propio proyecto, debes agregar una dependencia adecuada. Publicamos nuestro módulo en el repositorio central de Maven para que las herramientas de compilación de Java, como Maven, Ivy y Gradle, puedan consultarlo fácilmente.

En los fragmentos de dependencia que aparecen a continuación, reemplaza la string de la versión X.Y.Z por la última versión disponible en el repositorio central de Maven.

Si usas Maven, agrega el siguiente fragmento a tu sección de dependencias "pom.xml":

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

En Gradle, agrega lo siguiente a tu sección de dependencias build.gradle:

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

El siguiente fragmento de código muestra la descarga de un feed de datos GTFS Realtime desde una URL en particular, el análisis del feed como un FeedMessage (el tipo de raíz del esquema de GTFS Realtime) y la iteración de los resultados.

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());
      }
    }
  }
}

Para obtener más información, consulta la página del proyecto en Java.