function fetchByID (db) { var xmlProperties = XMLPROPERTIES[db] || through.obj() var lastStream = LASTSTREAM[db] || through.obj var stream = pumpify.obj( requestStream(true), tool.extractProperty('body.result'), tool.deleteProperty('uids'), tool.arraySplit(), tool.XMLToJSProperties(xmlProperties), lastStream() ) return stream }
return through.obj(function (inputText, enc, next) { this.push(inputText.replace(fromString, toString)) next() }) } var paginateRequest = through.obj(function (obj, enc, next) { requestOptions.url = obj request(requestOptions, (err, res, json) => { if (err) { console.log(err) } this.push(json) var pages = parseLinkHeader(res.headers.link) if (pages && pages.next) { paginateRequest.write(pages.next.url) } next() }) }) var pipeline = pumpify.obj( requestStream(requestOptions), ts.arraySplit(), // 3 objects (i.e. 3 teams: Contributors, Core, GSoC16) ts.extractProperty('members_url'), replaceStream('{/member}', ''), paginateRequest, ts.JSONToBuffer(), process.stdout ) pipeline.write(membersURL)