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.

En Maven, agrega lo siguiente 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 en tiempo real desde una URL específica, el análisis del feed como FeedMessage (el tipo de raíz del esquema de GTFS en tiempo real) 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.