Skip to main content

uwdart 0.0.6 copy "uwdart: ^0.0.6" to clipboard
uwdart: ^0.0.6 copied to clipboard

Dart 1 only

Waterloo OpenData Client in Dart. Allows you to access data provided by Waterloo Open Data for your application.

example/example.dart

import 'dart:async';
import 'dart:io';
import 'package:uwdart/uwdart_io.dart';

Future main() async {
  String apiKey = await new File('key.txt').readAsString();

  // Create the client
  UWDart uwClient = new UWDart(apiKey);

  // create raw requests
  uwClient.makeRawRequest('courses/CS/245').then((data) {
    print(data.data);
    print('------------------------------------------------------');
    print('------------------------------------------------------\n');
  });

  final courses = await uwClient.course.getAllCourses();

  // The request to the api returns meta data which can be used by the user
  print(courses.meta);

  // For actual endpoint data, get it using data getter
  final courseData = courses.data;

  print('------------------------------------------------------');
  print('------------------------------------------------------\n');

  for (int i = 0; i < 50; i++) {
    String catalogNum = courseData[i].catalogNumber;
    String subject = courseData[i].subject;

    final courseSubject = await uwClient.course.getCourseBySubjectCatalog(subject, catalogNum);

    print('Course Name: ${courseData[i].title}');
    print('Course Subject: ${courseData[i].subject}');
    print('Course Catalog: ${courseData[i].catalogNumber}');
    print('Course ID: ${courseSubject.data.courseId}');
    print('Course Url: ${courseSubject.data.url}');
    print('------------------------------------------------------');
  }
  print('------------------------------------------------------\n');

  final news = await uwClient.news.getNews();

  for (final article in news.data) {
    String articleTitle = article.title;
    int articleID = article.id;
    String articleSite = article.site;
    String articleLink = article.link;

    print('News Article Title: ${articleTitle}');
    print('News Article ID: ${articleID}');
    print('News Article Site: ${articleSite}');
    print('News Article Link: ${articleLink}');
    print('------------------------------------------------------');
  }

  // close the connection when all done
  uwClient.close();
}
0
likes
40
points
15
downloads

Publisher

unverified uploader

Weekly Downloads

Waterloo OpenData Client in Dart. Allows you to access data provided by Waterloo Open Data for your application.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

built_collection, built_value, http

More

Packages that depend on uwdart