Skip to content

Commit e69606a

Browse files
authored
Add Cloud Storage file samples. (GoogleCloudPlatform#162)
1 parent 1dc0854 commit e69606a

File tree

14 files changed

+1144
-113
lines changed

14 files changed

+1144
-113
lines changed

Diff for: appengine/disk/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
seen.txt

Diff for: appengine/disk/seen.txt

-17
This file was deleted.

Diff for: package.json

+6-5
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@
3232
"describe",
3333
"it",
3434
"assert",
35-
"sinon"
35+
"sinon",
36+
"uuid"
3637
],
3738
"ignore": [
3839
"appengine/bower/public/bower_components",
@@ -58,17 +59,17 @@
5859
"all-cover": "npm run pretest && nyc --cache npm run all-test && nyc report --reporter=html && nyc report --reporter=lcov"
5960
},
6061
"devDependencies": {
61-
"async": "^1.5.2",
62+
"async": "^2.0.1",
6263
"intelli-espower-loader": "^1.0.1",
63-
"mocha": "^2.5.3",
64+
"mocha": "^3.0.2",
6465
"nodejs-repo-tools": "git+https://github.com/GoogleCloudPlatform/nodejs-repo-tools.git#bbbb6035d77671eb053dbe6b6f0e3ff983f79639",
65-
"nyc": "^6.4.4",
66+
"nyc": "^7.1.0",
6667
"power-assert": "^1.4.1",
6768
"proxyquire": "^1.7.10",
6869
"request": "^2.72.0",
6970
"semistandard": "^8.0.0",
7071
"shelljs": "^0.7.3",
7172
"sinon": "^1.17.5",
72-
"supertest": "^1.2.0"
73+
"supertest": "^2.0.0"
7374
}
7475
}

Diff for: storage/README.md

+23-9
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ amount of data at any time.
1212
* [Setup](#setup)
1313
* [Samples](#samples)
1414
* [Buckets](#buckets)
15+
* [Files](#files)
1516

1617
## Setup
1718

@@ -29,7 +30,7 @@ amount of data at any time.
2930

3031
View the [documentation][buckets_docs] or the [source code][buckets_code].
3132

32-
__Usage:__
33+
__Usage:__ `node buckets --help`
3334

3435
```
3536
Usage: node buckets [COMMAND] [ARGS...]
@@ -41,17 +42,30 @@ Commands:
4142
delete [BUCKET_NAME]
4243
```
4344

44-
__Create a bucket:__
45+
[buckets_docs]: https://cloud.google.com/storage/docs
46+
[buckets_code]: buckets.js
47+
48+
### Files
4549

46-
node buckets create [BUCKET_NAME]
50+
View the [documentation][files_docs] or the [source code][files_code].
4751

48-
__List buckets:__
52+
__Usage:__ `node files --help`
4953

50-
node buckets list
54+
```
55+
Usage: node files [COMMAND] [ARGS...]
5156
52-
__Delete a bucket:__
57+
Commands:
5358
54-
node buckets delete [BUCKET_NAME]
59+
list [BUCKET_NAME]
60+
listByPrefix [BUCKET_NAME] [PREFIX] [DELIMITER]
61+
upload [BUCKET_NAME] [FILE_NAME]
62+
download [BUCKET_NAME] [SRC_FILE_NAME] [DEST_FILE_NAME]
63+
delete [BUCKET_NAME] [FILE_NAME]
64+
getMetadata [BUCKET_NAME] [FILE_NAME]
65+
makePublic [BUCKET_NAME] [FILE_NAME]
66+
move [BUCKET_NAME] [SRC_FILE_NAME] [DEST_FILE_NAME]
67+
copy [BUCKET_NAME] [SRC_FILE_NAME] [DEST_BUCKET_NAME] [DEST_FILE_NAME]
68+
```
5569

56-
[buckets_docs]: https://cloud.google.com/storage/docs/json_api/v1/json-api-nodejs-samples
57-
[buckets_code]: buckets.js
70+
[files_docs]: https://cloud.google.com/storage/docs
71+
[files_code]: files.js

Diff for: storage/buckets.js

+31-32
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,17 @@ var storage = gcloud.storage();
3232
* @param {string} name The name of the new bucket.
3333
* @param {function} cb The callback function.
3434
*/
35-
function createBucketExample (name, callback) {
35+
function createBucket (name, callback) {
3636
if (!name) {
3737
return callback(new Error('"name" is required!'));
3838
}
3939

40-
// See https://googlecloudplatform.github.io/gcloud-node/#/docs/storage?method=createBucket
41-
storage.createBucket(name, function (err, bucket, apiResponse) {
40+
storage.createBucket(name, function (err, bucket) {
4241
if (err) {
4342
return callback(err);
4443
}
4544

46-
console.log('Created bucket: ' + name);
45+
console.log('Created bucket: %s', name);
4746
return callback(null, bucket);
4847
});
4948
}
@@ -55,15 +54,14 @@ function createBucketExample (name, callback) {
5554
*
5655
* @param {function} cb The callback function.
5756
*/
58-
function listBucketsExample (callback) {
59-
// See https://googlecloudplatform.github.io/gcloud-node/#/docs/storage?method=getBuckets
60-
storage.getBuckets(function (err, buckets, apiResponse) {
57+
function listBuckets (callback) {
58+
storage.getBuckets(function (err, buckets) {
6159
if (err) {
6260
return callback(err);
6361
}
6462

65-
console.log('Found ' + buckets.length + ' buckets!');
66-
return callback(null, buckets, apiResponse);
63+
console.log('Found %d buckets!', buckets.length);
64+
return callback(null, buckets);
6765
});
6866
}
6967
// [END list]
@@ -75,21 +73,19 @@ function listBucketsExample (callback) {
7573
* @param {string} name The name of the bucket to delete.
7674
* @param {function} cb The callback function.
7775
*/
78-
function deleteBucketExample (name, callback) {
76+
function deleteBucket (name, callback) {
7977
if (!name) {
8078
return callback(new Error('"name" is required!'));
8179
}
8280

83-
// See https://googlecloudplatform.github.io/gcloud-node/#/docs/storage?method=bucket
8481
var bucket = storage.bucket(name);
8582

86-
// See https://googlecloudplatform.github.io/gcloud-node/#/docs/storage/bucket?method=delete
8783
bucket.delete(function (err, apiResponse) {
8884
if (err) {
8985
return callback(err);
9086
}
9187

92-
console.log('Deleted bucket: ' + name);
88+
console.log('Deleted bucket: %s', name);
9389
return callback(null, apiResponse);
9490
});
9591
}
@@ -105,28 +101,31 @@ function printUsage () {
105101
}
106102
// [END usage]
107103

108-
// Run the command-line program
109-
function main (args, cb) {
110-
var command = args.shift();
111-
if (command === 'create') {
112-
createBucketExample(args[0], cb);
113-
} else if (command === 'list') {
114-
listBucketsExample(cb);
115-
} else if (command === 'delete') {
116-
deleteBucketExample(args[0], cb);
117-
} else {
118-
printUsage();
119-
cb();
104+
// The command-line program
105+
var program = {
106+
createBucket: createBucket,
107+
listBuckets: listBuckets,
108+
deleteBucket: deleteBucket,
109+
printUsage: printUsage,
110+
111+
// Executed when this program is run from the command-line
112+
main: function (args, cb) {
113+
var command = args.shift();
114+
if (command === 'create') {
115+
this.createBucket(args[0], cb);
116+
} else if (command === 'list') {
117+
this.listBuckets(cb);
118+
} else if (command === 'delete') {
119+
this.deleteBucket(args[0], cb);
120+
} else {
121+
this.printUsage();
122+
}
120123
}
121-
}
124+
};
122125

123126
if (module === require.main) {
124-
main(process.argv.slice(2), console.log);
127+
program.main(process.argv.slice(2), console.log);
125128
}
126129
// [END all]
127130

128-
exports.createBucketExample = createBucketExample;
129-
exports.listBucketsExample = listBucketsExample;
130-
exports.deleteBucketExample = deleteBucketExample;
131-
exports.printUsage = printUsage;
132-
exports.main = main;
131+
module.exports = program;

0 commit comments

Comments
 (0)