UNPKG

timetable

Version:

Using GTFS and other sources to produce beautiful and usable timetables for public transport.

62 lines (51 loc) 2.19 kB
// Generated by CoffeeScript 1.7.1 (function() { var $count, $show, as_transformer, fs, log, read_trips, route, transform_stream; fs = require('fs'); transform_stream = require('stream-transform'); log = console.log; as_transformer = function(method) { return transform_stream(method, { parallel: 11 }); }; $count = function(input_stream, title) { var count; count = 0; input_stream.on('end', function() { return log((title != null ? title : 'Count') + ':', count); }); return as_transformer((function(_this) { return function(record, handler) { count += 1; return handler(null, record); }; })(this)); }; $show = function() { return as_transformer((function(_this) { return function(record, handler) { log(record); return handler(null, record); }; })(this)); }; read_trips = function(route, handler) { var input; input = fs.createReadStream(route); input.on('end', function() { log('ok: trips'); return handler(null); }); input.setMaxListeners(100); input.pipe($count(input, 'trips A')).pipe($count(input, 'trips B')).pipe($count(input, 'trips C')).pipe($count(input, 'trips D')).pipe($count(input, 'trips E')).pipe($count(input, 'trips F')).pipe($count(input, 'trips G')).pipe($count(input, 'trips H')).pipe($count(input, 'trips I')).pipe($count(input, 'trips J')).pipe($count(input, 'trips K')).pipe($count(input, 'trips M')).pipe($count(input, 'trips N')).pipe($count(input, 'trips O')).pipe($count(input, 'trips P')).pipe($count(input, 'trips Q')).pipe($count(input, 'trips R')).pipe($count(input, 'trips R')).pipe($count(input, 'trips S')).pipe($count(input, 'trips T')).pipe($count(input, 'trips U')).pipe($count(input, 'trips V')).pipe($count(input, 'trips W')).pipe($count(input, 'trips X')).pipe($count(input, 'trips Y')).pipe($count(input, 'trips Z')); return null; }; route = '/Volumes/Storage/cnd/node_modules/timetable-data/germany-berlin-2014/agency.txt'; read_trips(route, function(error) { if (error != null) { throw error; } return log('ok'); }); }).call(this);