Skip to content

Commit fcad9c1

Browse files
committed
Merge pull request #1528 from kingcody/refactor/api-controller
Refactor api controller
2 parents ebf9bc4 + 446be5a commit fcad9c1

File tree

2 files changed

+24
-32
lines changed

2 files changed

+24
-32
lines changed

Diff for: app/templates/server/api/user(auth)/user.controller.js

-7
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,6 @@ function handleError(res, statusCode) {
2020
};
2121
}
2222

23-
function respondWith(res, statusCode) {
24-
statusCode = statusCode || 200;
25-
return function() {
26-
res.status(statusCode).end();
27-
};
28-
}
29-
3023
/**
3124
* Get list of users
3225
* restriction: 'admin'

Diff for: endpoint/templates/basename.controller.js

+24-25
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,10 @@
1010
'use strict';<% if (filters.models) { %>
1111

1212
import _ from 'lodash';<% if (filters.mongooseModels) { %>
13-
var <%= classedName %> = require('./<%= basename %>.model');<% } if (filters.sequelizeModels) { %>
14-
var sqldb = require('<%= relativeRequire(config.get('registerModelsFile')) %>');
15-
var <%= classedName %> = sqldb.<%= classedName %>;<% } %>
13+
import <%= classedName %> from './<%= basename %>.model';<% } if (filters.sequelizeModels) { %>
14+
import {<%= classedName %>} from '<%= relativeRequire(config.get('registerModelsFile')) %>';<% } %>
1615

17-
function handleError(res, statusCode) {
18-
statusCode = statusCode || 500;
19-
return function(err) {
20-
res.status(statusCode).send(err);
21-
};
22-
}
23-
24-
function responseWithResult(res, statusCode) {
16+
function respondWithResult(res, statusCode) {
2517
statusCode = statusCode || 200;
2618
return function(entity) {
2719
if (entity) {
@@ -30,16 +22,6 @@ function responseWithResult(res, statusCode) {
3022
};
3123
}
3224

33-
function handleEntityNotFound(res) {
34-
return function(entity) {
35-
if (!entity) {
36-
res.status(404).end();
37-
return null;
38-
}
39-
return entity;
40-
};
41-
}
42-
4325
function saveUpdates(updates) {
4426
return function(entity) {
4527
<% if (filters.mongooseModels) { %>var updated = _.merge(entity, updates);
@@ -62,14 +44,31 @@ function removeEntity(res) {
6244
});
6345
}
6446
};
47+
}
48+
49+
function handleEntityNotFound(res) {
50+
return function(entity) {
51+
if (!entity) {
52+
res.status(404).end();
53+
return null;
54+
}
55+
return entity;
56+
};
57+
}
58+
59+
function handleError(res, statusCode) {
60+
statusCode = statusCode || 500;
61+
return function(err) {
62+
res.status(statusCode).send(err);
63+
};
6564
}<% } %>
6665

6766
// Gets a list of <%= classedName %>s
6867
export function index(req, res) {<% if (!filters.models) { %>
6968
res.json([]);<% } else { %>
7069
<% if (filters.mongooseModels) { %><%= classedName %>.findAsync()<% }
7170
if (filters.sequelizeModels) { %><%= classedName %>.findAll()<% } %>
72-
.then(responseWithResult(res))
71+
.then(respondWithResult(res))
7372
.catch(handleError(res));<% } %>
7473
}<% if (filters.models) { %>
7574

@@ -82,15 +81,15 @@ export function show(req, res) {
8281
}
8382
})<% } %>
8483
.then(handleEntityNotFound(res))
85-
.then(responseWithResult(res))
84+
.then(respondWithResult(res))
8685
.catch(handleError(res));
8786
}
8887

8988
// Creates a new <%= classedName %> in the DB
9089
export function create(req, res) {
9190
<% if (filters.mongooseModels) { %><%= classedName %>.createAsync(req.body)<% }
9291
if (filters.sequelizeModels) { %><%= classedName %>.create(req.body)<% } %>
93-
.then(responseWithResult(res, 201))
92+
.then(respondWithResult(res, 201))
9493
.catch(handleError(res));
9594
}
9695

@@ -107,7 +106,7 @@ export function update(req, res) {
107106
})<% } %>
108107
.then(handleEntityNotFound(res))
109108
.then(saveUpdates(req.body))
110-
.then(responseWithResult(res))
109+
.then(respondWithResult(res))
111110
.catch(handleError(res));
112111
}
113112

0 commit comments

Comments
 (0)