function getDecoder(obj) { return function(socket, callback) { var encoding = obj._originEncoding; var decoder; if (obj._needGunzip || socket || encoding !== obj.headers['content-encoding']) { obj._needGunzip = true; decoder = encoding && util.getUnzipStream(encoding); } var handleError = function(err) { obj.emit('error', err); }; decoder && decoder.on('error', handleError); if (socket) { delete obj.headers['content-length']; var enTrans = getEncodeTransform(); var deTrans = getDecodeTransform(); enTrans.pipe(socket).pipe(deTrans); enTrans.on('error', handleError); deTrans.on('error', handleError); if (decoder) { decoder.pipe(enTrans); } else { decoder = enTrans; } socket = deTrans; } callback(decoder, socket); }; }
obj.emit('error', err); }; encoder && encoder.on('error', handleError); if (socket) { delete obj.headers['content-length']; var enTrans = getEncodeTransform(); var deTrans = getDecodeTransform(); enTrans.on('error', handleError); deTrans.on('error', handleError); enTrans.pipe(socket).pipe(deTrans); socket = enTrans;
socket.on('error', function(err) { if (!done) { done = true; done = true; }); socket.on('close', function() { done = true; decoder.emit('close'); }); decoder.destroy = encoder.destroy = handleError; decoder.on('error', handleError); encoder.on('error', handleError); ADDITIONAL_FIELDS.forEach(function(key) { decoder[key] = req[key];
request({ uri: 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/' + fileName }) .pipe(file) .on('finish', () => { fs.createReadStream(fileName) .pipe(csv()) .on('data', (data) => results.push(data)) .on('end', () => { if (results.length > 0) { for (var i = 0; i < results.length; i++) { resolve(); }) .on('error', (error) => { reject(error); })