Skip to content

Commit 09ecdff

Browse files
committed
Merge pull request octokit#238 from danielmiller-nl/master
Add getAll for users
2 parents 5f51fc8 + 5ed5e14 commit 09ecdff

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

api/v3.0.0/routes.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2919,6 +2919,20 @@
29192919
},
29202920

29212921
"user": {
2922+
"get-all": {
2923+
"url": "/users",
2924+
"method": "GET",
2925+
"params": {
2926+
"since":{
2927+
"type": "Number",
2928+
"required": false,
2929+
"validation": "",
2930+
"description": "The integer ID of the last User that you’ve seen."
2931+
}
2932+
}
2933+
2934+
},
2935+
29222936
"get-from": {
29232937
"url": "/users/:user",
29242938
"method": "GET",

api/v3.0.0/user.js

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,45 @@ var user = module.exports = {
1919
};
2020

2121
(function() {
22+
/** section: github
23+
* user#getAll(msg, callback) -> null
24+
* - msg (Object): Object that contains the parameters and their values to be sent to the server.
25+
* - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
26+
*
27+
* ##### Params on the `msg` object:
28+
*
29+
* - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
30+
* - since (Number): Optional. The integer ID of the last User that you’ve seen.
31+
**/
32+
this.getAll = function(msg, block, callback) {
33+
var self = this;
34+
this.client.httpSend(msg, block, function(err, res) {
35+
if (err)
36+
return self.sendError(err, null, msg, callback);
37+
38+
var ret;
39+
try {
40+
ret = res.data && JSON.parse(res.data);
41+
}
42+
catch (ex) {
43+
if (callback)
44+
callback(new error.InternalServerError(ex.message), res);
45+
return;
46+
}
47+
48+
if (!ret)
49+
ret = {};
50+
if (!ret.meta)
51+
ret.meta = {};
52+
["x-ratelimit-limit", "x-ratelimit-remaining", "x-ratelimit-reset", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
53+
if (res.headers[header])
54+
ret.meta[header] = res.headers[header];
55+
});
56+
57+
if (callback)
58+
callback(null, ret);
59+
});
60+
};
2261
/** section: github
2362
* user#getFrom(msg, callback) -> null
2463
* - msg (Object): Object that contains the parameters and their values to be sent to the server.

0 commit comments

Comments
 (0)