Skip to content

Commit 3a625e0

Browse files
storage: update code that now uses streamrouter
1 parent 5ea6403 commit 3a625e0

File tree

3 files changed

+57
-125
lines changed

3 files changed

+57
-125
lines changed

lib/storage/bucket.js

+42-79
Original file line numberDiff line numberDiff line change
@@ -382,61 +382,43 @@ Bucket.prototype.deleteFiles = function(query, callback) {
382382

383383
query = query || {};
384384

385-
var self = this;
386-
387385
var MAX_PARALLEL_LIMIT = 10;
388386
var errors = [];
389387

390-
// Start deleting files, iteratively fetching more as necessary.
391-
deleteFiles(query, function(err) {
392-
if (err || errors.length > 0) {
393-
callback(err || errors);
388+
this.getFiles(query, function(err, files) {
389+
if (err) {
390+
callback(err);
394391
return;
395392
}
396393

397-
callback(null);
398-
});
399-
400-
function deleteFiles(query, callback) {
401-
self.getFiles(query, function(err, files, nextQuery) {
402-
if (err) {
403-
callback(err);
404-
return;
405-
}
406-
407-
// Iterate through each file and attempt to delete it.
408-
async.eachLimit(files, MAX_PARALLEL_LIMIT, deleteFile, function(err) {
394+
function deleteFile(file, callback) {
395+
file.delete(function(err) {
409396
if (err) {
410-
callback(err);
411-
return;
412-
}
397+
if (query.force) {
398+
errors.push(err);
399+
callback();
400+
return;
401+
}
413402

414-
if (nextQuery) {
415-
deleteFiles(nextQuery, callback);
403+
callback(err);
416404
return;
417405
}
418406

419407
callback();
420408
});
421-
});
422-
}
423-
424-
function deleteFile(file, callback) {
425-
file.delete(function(err) {
426-
if (err) {
427-
if (query.force) {
428-
errors.push(err);
429-
callback();
430-
return;
431-
}
409+
}
432410

433-
callback(err);
411+
// Iterate through each file and attempt to delete it.
412+
async.eachLimit(files, MAX_PARALLEL_LIMIT, deleteFile, function(err) {
413+
if (err || errors.length > 0) {
414+
callback(err || errors);
434415
return;
435416
}
436417

437418
callback();
438419
});
439-
}
420+
});
421+
440422
};
441423

442424
/**
@@ -1033,69 +1015,50 @@ Bucket.prototype.upload = function(localPath, options, callback) {
10331015
* @param {function} callback - The callback function.
10341016
*/
10351017
Bucket.prototype.makeAllFilesPublicPrivate_ = function(options, callback) {
1036-
var self = this;
1037-
10381018
var MAX_PARALLEL_LIMIT = 10;
10391019
var errors = [];
10401020
var updatedFiles = [];
10411021

1042-
// Start processing files, iteratively fetching more as necessary.
1043-
processFiles({}, function(err) {
1044-
if (err || errors.length > 0) {
1045-
callback(err || errors, updatedFiles);
1022+
this.getFiles(function(err, files) {
1023+
if (err) {
1024+
callback(err);
10461025
return;
10471026
}
10481027

1049-
callback(null, updatedFiles);
1050-
});
1051-
1052-
function processFiles(query, callback) {
1053-
self.getFiles(query, function(err, files, nextQuery) {
1054-
if (err) {
1055-
callback(err);
1056-
return;
1028+
function processFile(file, callback) {
1029+
if (options.public) {
1030+
file.makePublic(processedCallback);
1031+
} else if (options.private) {
1032+
file.makePrivate(processedCallback);
10571033
}
10581034

1059-
// Iterate through each file and make it public or private.
1060-
async.eachLimit(files, MAX_PARALLEL_LIMIT, processFile, function(err) {
1035+
function processedCallback(err) {
10611036
if (err) {
1062-
callback(err);
1063-
return;
1064-
}
1037+
if (options.force) {
1038+
errors.push(err);
1039+
callback();
1040+
return;
1041+
}
10651042

1066-
if (nextQuery) {
1067-
processFiles(nextQuery, callback);
1043+
callback(err);
10681044
return;
10691045
}
10701046

1047+
updatedFiles.push(file);
10711048
callback();
1072-
});
1073-
});
1074-
}
1075-
1076-
function processFile(file, callback) {
1077-
if (options.public) {
1078-
file.makePublic(processedCallback);
1079-
} else if (options.private) {
1080-
file.makePrivate(processedCallback);
1049+
}
10811050
}
10821051

1083-
function processedCallback(err) {
1084-
if (err) {
1085-
if (options.force) {
1086-
errors.push(err);
1087-
callback();
1088-
return;
1089-
}
1090-
1091-
callback(err);
1052+
// Iterate through each file and make it public or private.
1053+
async.eachLimit(files, MAX_PARALLEL_LIMIT, processFile, function(err) {
1054+
if (err || errors.length > 0) {
1055+
callback(err || errors, updatedFiles);
10921056
return;
10931057
}
10941058

1095-
updatedFiles.push(file);
1096-
callback();
1097-
}
1098-
}
1059+
callback(null, updatedFiles);
1060+
});
1061+
});
10991062
};
11001063

11011064
/**

system-test/storage.js

+8-5
Original file line numberDiff line numberDiff line change
@@ -818,12 +818,15 @@ describe('storage', function() {
818818
});
819819
});
820820

821-
afterEach(function(done) {
822-
versionedBucket.deleteFiles({ versions: true }, done);
823-
});
824-
825821
after(function(done) {
826-
versionedBucket.delete(done);
822+
versionedBucket.deleteFiles({ versions: true }, function(err) {
823+
if (err) {
824+
done(err);
825+
return;
826+
}
827+
828+
versionedBucket.delete(done);
829+
});
827830
});
828831

829832
it('should overwrite file, then get older version', function(done) {

test/storage/bucket.js

+7-41
Original file line numberDiff line numberDiff line change
@@ -406,23 +406,6 @@ describe('Bucket', function() {
406406
});
407407
});
408408

409-
it('should get more files if more exist', function(done) {
410-
var fakeNextQuery = { a: 'b', c: 'd' };
411-
412-
bucket.getFiles = function(query, callback) {
413-
if (Object.keys(query).length === 0) {
414-
// First time through, return a `nextQuery` value.
415-
callback(null, [], fakeNextQuery);
416-
} else {
417-
// Second time through.
418-
assert.deepEqual(query, fakeNextQuery);
419-
done();
420-
}
421-
};
422-
423-
bucket.deleteFiles({}, assert.ifError);
424-
});
425-
426409
it('should execute callback with error from getting files', function(done) {
427410
var error = new Error('Error.');
428411

@@ -1024,7 +1007,7 @@ describe('Bucket', function() {
10241007
done();
10251008
};
10261009

1027-
bucket.getFiles = function(query, callback) {
1010+
bucket.getFiles = function(callback) {
10281011
callback(null, []);
10291012
};
10301013

@@ -1042,7 +1025,7 @@ describe('Bucket', function() {
10421025
callback();
10431026
}));
10441027

1045-
bucket.getFiles = function(query, callback) {
1028+
bucket.getFiles = function(callback) {
10461029
callback(null, files);
10471030
};
10481031

@@ -1064,7 +1047,7 @@ describe('Bucket', function() {
10641047
callback();
10651048
}));
10661049

1067-
bucket.getFiles = function(query, callback) {
1050+
bucket.getFiles = function(callback) {
10681051
callback(null, files);
10691052
};
10701053

@@ -1075,27 +1058,10 @@ describe('Bucket', function() {
10751058
});
10761059
});
10771060

1078-
it('should get more files if more exist', function(done) {
1079-
var fakeNextQuery = { a: 'b', c: 'd' };
1080-
1081-
bucket.getFiles = function(query, callback) {
1082-
if (Object.keys(query).length === 0) {
1083-
// First time through, return a `nextQuery` value.
1084-
callback(null, [], fakeNextQuery);
1085-
} else {
1086-
// Second time through.
1087-
assert.deepEqual(query, fakeNextQuery);
1088-
done();
1089-
}
1090-
};
1091-
1092-
bucket.makeAllFilesPublicPrivate_({}, assert.ifError);
1093-
});
1094-
10951061
it('should execute callback with error from getting files', function(done) {
10961062
var error = new Error('Error.');
10971063

1098-
bucket.getFiles = function(query, callback) {
1064+
bucket.getFiles = function(callback) {
10991065
callback(error);
11001066
};
11011067

@@ -1115,7 +1081,7 @@ describe('Bucket', function() {
11151081
callback(error);
11161082
}));
11171083

1118-
bucket.getFiles = function(query, callback) {
1084+
bucket.getFiles = function(callback) {
11191085
callback(null, files);
11201086
};
11211087

@@ -1135,7 +1101,7 @@ describe('Bucket', function() {
11351101
callback(error);
11361102
}));
11371103

1138-
bucket.getFiles = function(query, callback) {
1104+
bucket.getFiles = function(callback) {
11391105
callback(null, files);
11401106
};
11411107

@@ -1165,7 +1131,7 @@ describe('Bucket', function() {
11651131
callback(error);
11661132
}));
11671133

1168-
bucket.getFiles = function(query, callback) {
1134+
bucket.getFiles = function(callback) {
11691135
callback(null, successFiles.concat(errorFiles));
11701136
};
11711137

0 commit comments

Comments
 (0)