Java नमूना

अपने प्रोजेक्ट में gtfs-realtime-bindings Java क्लास इस्तेमाल करने के लिए, आपको सही डिपेंडेंसी जोड़नी होगी. हम अपने मॉड्यूल को Maven Central डेटा संग्रह में प्रकाशित करते हैं, ताकि इसे Maven, Ivy, और Gradle जैसे Java बिल्ड टूल आसानी से इस्तेमाल कर सकें.

नीचे दिए गए डिपेंडेंसी स्निपेट में, वर्शन वाली स्ट्रिंग X.Y.Z को Maven Central के डेटा स्टोर करने की जगह में मौजूद नए वर्शन से बदलें.

Maven के लिए, अपने `pom.xml` डिपेंडेंसी सेक्शन में ये जोड़ें:

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

Gradle के लिए, अपने build.gradle डिपेंडेंसी सेक्शन में यह जानकारी जोड़ें:

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

नीचे दिए गए कोड स्निपेट में किसी खास यूआरएल से जीटीएफ़एस वाले रीयल टाइम डेटा फ़ीड को डाउनलोड करने का तरीका बताया गया है. साथ ही, इसमें फ़ीड को FeedMessage (जीटीएफ़एस रीयल टाइम स्कीमा का मूल प्रकार) के तौर पर पार्स करने और नतीजों के हिसाब से कार्रवाई करने के बारे में भी बताया गया है.

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

ज़्यादा जानकारी के लिए, Java प्रोजेक्ट पेज देखें.