Example #1
0
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
}
Example #2
0
  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)