mirror of
https://github.com/openstf/stf
synced 2025-10-04 10:19:30 +02:00
move accessTokens endpoint from app unit to api unit
This commit is contained in:
parent
5729095acb
commit
0ec03aa2c0
4 changed files with 57 additions and 24 deletions
33
lib/units/api/controllers/token.js
Normal file
33
lib/units/api/controllers/token.js
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
var Promise = require('bluebird')
|
||||||
|
|
||||||
|
var dbapi = require('../../../db/api')
|
||||||
|
var logger = require('../../../util/logger')
|
||||||
|
|
||||||
|
var log = logger.createLogger('api:contoller:token')
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
getAccessTokens: getAccessTokens
|
||||||
|
};
|
||||||
|
|
||||||
|
function getAccessTokens(req, res) {
|
||||||
|
dbapi.loadAccessTokens(req.user.email)
|
||||||
|
.then(function(cursor) {
|
||||||
|
return Promise.promisify(cursor.toArray, cursor)()
|
||||||
|
.then(function(list) {
|
||||||
|
var titles = []
|
||||||
|
list.forEach(function(token) {
|
||||||
|
titles.push(token.title)
|
||||||
|
})
|
||||||
|
res.json({
|
||||||
|
success: true
|
||||||
|
, titles: titles
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
.catch(function(err) {
|
||||||
|
log.error('Failed to load tokens: ', err.stack)
|
||||||
|
res.json(500, {
|
||||||
|
success: false
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
|
@ -49,6 +49,21 @@ paths:
|
||||||
description: Unexpected Error
|
description: Unexpected Error
|
||||||
schema:
|
schema:
|
||||||
$ref: "#/definitions/ErrorResponse"
|
$ref: "#/definitions/ErrorResponse"
|
||||||
|
/accessTokens:
|
||||||
|
x-swagger-router-controller: token
|
||||||
|
get:
|
||||||
|
summary: Access Tokens
|
||||||
|
description: Return Current User Access Tokens titles
|
||||||
|
operationId: getAccessTokens
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Access Tokens titles
|
||||||
|
schema:
|
||||||
|
$ref: "#/definitions/AccessTokensResponse"
|
||||||
|
default:
|
||||||
|
description: Unexpected Error
|
||||||
|
schema:
|
||||||
|
$ref: "#/definitions/ErrorResponse"
|
||||||
/devices:
|
/devices:
|
||||||
x-swagger-router-controller: device
|
x-swagger-router-controller: device
|
||||||
get:
|
get:
|
||||||
|
@ -101,6 +116,14 @@ definitions:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
type: object
|
type: object
|
||||||
|
AccessTokensResponse:
|
||||||
|
required:
|
||||||
|
- tokens
|
||||||
|
properties:
|
||||||
|
tokens:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
DeviceListResponse:
|
DeviceListResponse:
|
||||||
required:
|
required:
|
||||||
- devices
|
- devices
|
||||||
|
|
|
@ -124,29 +124,6 @@ module.exports = function(options) {
|
||||||
res.send('var GLOBAL_APPSTATE = ' + JSON.stringify(state))
|
res.send('var GLOBAL_APPSTATE = ' + JSON.stringify(state))
|
||||||
})
|
})
|
||||||
|
|
||||||
app.get('/app/api/v1/accessTokens', function(req, res) {
|
|
||||||
dbapi.loadAccessTokens(req.user.email)
|
|
||||||
.then(function(cursor) {
|
|
||||||
return Promise.promisify(cursor.toArray, cursor)()
|
|
||||||
.then(function(list) {
|
|
||||||
var titles = []
|
|
||||||
list.forEach(function(token) {
|
|
||||||
titles.push(token.title)
|
|
||||||
})
|
|
||||||
res.json({
|
|
||||||
success: true
|
|
||||||
, titles: titles
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
.catch(function(err) {
|
|
||||||
log.error('Failed to load tokens: ', err.stack)
|
|
||||||
res.json(500, {
|
|
||||||
success: false
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
server.listen(options.port)
|
server.listen(options.port)
|
||||||
log.info('Listening on port %d', options.port)
|
log.info('Listening on port %d', options.port)
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@ module.exports = function AccessTokenServiceFactory(
|
||||||
var AccessTokenService = {}
|
var AccessTokenService = {}
|
||||||
|
|
||||||
AccessTokenService.getAccessTokens = function() {
|
AccessTokenService.getAccessTokens = function() {
|
||||||
return $http.get('/app/api/v1/accessTokens')
|
return $http.get('/api/v1/accessTokens')
|
||||||
}
|
}
|
||||||
|
|
||||||
AccessTokenService.generateAccessToken = function(title) {
|
AccessTokenService.generateAccessToken = function(title) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue