Initial open source commit

This commit is contained in:
James Allen
2014-02-12 17:27:43 +00:00
commit c83b03e93f
95 changed files with 16218 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
request = require("request").defaults(jar: false)
fs = require("fs")
module.exports = UrlFetcher =
pipeUrlToFile: (url, filePath, _callback = (error) ->) ->
callbackOnce = (error) ->
_callback(error)
_callback = () ->
urlStream = request.get(url)
fileStream = fs.createWriteStream(filePath)
urlStream.on "response", (res) ->
if res.statusCode >= 200 and res.statusCode < 300
urlStream.pipe(fileStream)
else
callbackOnce(new Error("URL returned non-success status code: #{res.statusCode}"))
urlStream.on "error", (error) ->
callbackOnce(error or new Error("Something went wrong downloading the URL"))
urlStream.on "end", () ->
callbackOnce()