Liaisons de langage Java GTFS-realtime¶
Fournit des classes Java gĂ©nĂ©rĂ©es Ă partir de la spĂ©cification GTFS-realtime Protocol Buffer. Ces classes vous permettront dâanalyser un flux de donnĂ©es binaire en temps rĂ©el Protocol Buffer GTFS dans des objets Java.
Ajouter la dĂ©pendance¶
Pour utiliser les classes gtfs-realtime-bindings
dans votre propre projet, vous devez ajouter une dĂ©pendance appropriĂ©e. Nous publions notre module dans le Maven Central Repository afin quâil puisse ĂȘtre facilement rĂ©fĂ©rencĂ© par les outils de construction Java tels que Maven, Ivy et Gradle.
Pour Maven, ajoutez ce qui suit à votre section de dépendances pom.xml
:
<dependency>
<groupId>org.mobilitydata</groupId>
<artifactId>gtfs-realtime-bindings</artifactId>
<version>0.0.8</version>
</dependency>
Pour Gradle, ajoutez ce qui suit à votre section de dépendances build.gradle
:
implementation group: 'org.mobilitydata', name: 'gtfs-realtime-bindings', version: '0.0.8'
Assurez-vous que le répertoire central Maven est référencé par votre projet.
Exemple de code¶
Lâextrait de code suivant montre le tĂ©lĂ©chargement dâun flux de donnĂ©es GTFS Realtime Ă partir dâune URL particuliĂšre, en lâanalysant comme un FeedMessage (le type racine du schĂ©ma GTFS Realtime), et itĂ©rer sur les rĂ©sultats.
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());
}
}
}
}
Pour plus de détails sur les conventions de dénomination des classes Java générées à partir du le gtfs-realtime.proto, consultez le Code généré Java section du site des développeur·euse de Protocol Buffers.
Historique du projet¶
0.0.4
et versions antĂ©rieures¶
Ce projet a Ă©tĂ© créé Ă lâorigine par Google. Vous pouvez tĂ©lĂ©charger les versions 0.0.4
et les versions antĂ©rieures sous lâID de groupe com.google.transit
ici sur Maven Central.
0.0.5
¶
MobilityData a commencé à maintenir le projet début 2019 et a initialement publié les artefacts de version via JCenter. Vous pouvez télécharger la version 0.0.5
sous lâID de groupe io.mobilitydata.transit
ici sur Maven Central.
0.0.6
et 0.0.7
¶
JCenter arrĂȘter en 2021. Avant lâarrĂȘt, un problĂšme de synchronisation empĂȘchait les versions 0.0.6
et 0.0.7
dâĂȘtre synchronisĂ©es de JCenter vers Maven Central, le tĂ©lĂ©chargement direct dâartefacts nâest donc pas disponible pour ces versions. Cependant, vous pouvez les compiler vous-mĂȘme Ă partir des tags en utilisant la commande mvn package
.
0.0.8
et versions ultĂ©rieures¶
En 2022, MobilityData est passĂ© Ă la publication dâartefacts directement sur Maven Central sous lâID de groupe org.mobilitydata
, oĂč les versions 0.0.8 et supĂ©rieures sont publiĂ©es.