ubdate
This commit is contained in:
62
node_modules/gulp-cli/lib/shared/get-blacklist.js
generated
vendored
Normal file
62
node_modules/gulp-cli/lib/shared/get-blacklist.js
generated
vendored
Normal file
@@ -0,0 +1,62 @@
|
||||
'use strict';
|
||||
|
||||
var https = require('https');
|
||||
|
||||
var concat = require('concat-stream');
|
||||
|
||||
var url = 'https://raw.githubusercontent.com/gulpjs/plugins/master/src/blackList.json';
|
||||
|
||||
function collect(stream, cb) {
|
||||
stream.on('error', cb);
|
||||
stream.pipe(concat(onSuccess));
|
||||
|
||||
function onSuccess(result) {
|
||||
cb(null, result);
|
||||
}
|
||||
}
|
||||
|
||||
function parse(str, cb) {
|
||||
try {
|
||||
cb(null, JSON.parse(str));
|
||||
} catch (err) {
|
||||
/* istanbul ignore next */
|
||||
cb(new Error('Invalid Blacklist JSON.'));
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Test this impl
|
||||
function getBlacklist(cb) {
|
||||
https.get(url, onRequest);
|
||||
|
||||
function onRequest(res) {
|
||||
/* istanbul ignore if */
|
||||
if (res.statusCode !== 200) {
|
||||
// TODO: Test different status codes
|
||||
return cb(new Error('Request failed. Status Code: ' + res.statusCode));
|
||||
}
|
||||
|
||||
res.setEncoding('utf8');
|
||||
|
||||
collect(res, onCollect);
|
||||
}
|
||||
|
||||
function onCollect(err, result) {
|
||||
/* istanbul ignore if */
|
||||
if (err) {
|
||||
return cb(err);
|
||||
}
|
||||
|
||||
parse(result, onParse);
|
||||
}
|
||||
|
||||
function onParse(err, blacklist) {
|
||||
/* istanbul ignore if */
|
||||
if (err) {
|
||||
return cb(err);
|
||||
}
|
||||
|
||||
cb(null, blacklist);
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = getBlacklist;
|
||||
Reference in New Issue
Block a user