Skip to content

Commit 89652f9

Browse files
Merge pull request #146 from Kibibit/make-console-component-server
[REFACTOR] Make console component server
2 parents 71e6341 + 6a79077 commit 89652f9

File tree

6 files changed

+65
-45
lines changed

6 files changed

+65
-45
lines changed

app/models/consoleService.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
var _console = process.console;
2+
3+
var scribeConsole = function(tag, colors) {
4+
colors = colors ? colors : 'red';
5+
return {
6+
log: function(text) {
7+
_console.time().tag({msg: tag, colors: colors})
8+
.info(text);
9+
},
10+
error: function(text) {
11+
_console.time().tag({msg: tag, colors: colors})
12+
.error(text);
13+
},
14+
warn: function(text) {
15+
_console.time().tag({msg: tag, colors: colors})
16+
.warn(text);
17+
},
18+
info: function(text) {
19+
_console.time().tag({msg: tag, colors: colors})
20+
.info(text);
21+
},
22+
debug: function(text) {
23+
_console.time().tag({msg: tag, colors: colors})
24+
.debug(text);
25+
},
26+
customConsole: _console
27+
};
28+
};
29+
30+
module.exports = scribeConsole;

app/models/fileService.js

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
var dirTree = require('directory-tree'),
22
fs = require('fs'),
33
mime = require('mime-types');
4-
var console = process.console;
4+
var console = require('./consoleService')('FILE CONTENT', ['blue', 'inverse']);
55

66
var fileService = {};
77

@@ -34,17 +34,17 @@ fileService.get = function(req, res) {
3434
fs.readFile(fileFullPath, 'utf8', function(err, data) {
3535
if (err) {
3636
res.json(err);
37-
console.time().tag('FILE CONTENT')
38-
.error('file-get returned an error: ' + err);
37+
console.error('file-get returned an error: ' + err);
3938
} else {
40-
var file = {
41-
content: data,
42-
mimeType: mimeType,
43-
tags: fileService.getFileTags(fileFullPath)
44-
};
45-
res.json(file);
46-
console.time().tag('FILE CONTENT')
47-
.info('file requested: ' + fileFullPath);
39+
fs.stat(fileFullPath, function(err, stats) {
40+
var file = {
41+
content: data,
42+
mimeType: mimeType,
43+
lastModified: stats.mtime
44+
};
45+
res.json(file);
46+
console.info('file requested: ' + fileFullPath);
47+
});
4848
}
4949
});
5050
}
@@ -59,22 +59,19 @@ fileService.put = function(req, res) {
5959
'code': 'File already exists',
6060
'path': fileFullPath
6161
});
62-
console.time().tag('FILE CONTENT')
63-
.error('file couldn\'t be saved: ' + fileFullPath);
62+
console.error('file couldn\'t be saved: ' + fileFullPath);
6463
} catch (err) {
6564
if (req.body.newContent) {
6665
fs.writeFile(fileFullPath,
6766
req.body.newContent, 'utf8', function(err) {
6867
if (err) {
6968
res.json(err);
70-
console.time().tag('FILE CONTENT')
71-
.error('file couldn\'t be saved: ' + err);
69+
console.error('file couldn\'t be saved: ' + err);
7270
} else {
7371
res.json({
7472
message: 'file saved successfully'
7573
});
76-
console.time().tag('FILE CONTENT')
77-
.info('file saved: ' + fileFullPath);
74+
console.info('file saved: ' + fileFullPath);
7875
}
7976
});
8077
}
@@ -89,12 +86,10 @@ fileService.delete = function(req, res) {
8986
res.json({
9087
message: 'file deleted successfully'
9188
});
92-
console.time().tag('DELETE CONTENT')
93-
.info('file deleted: ' + fileFullPath);
89+
console.info('file deleted: ' + fileFullPath);
9490
} catch (err) {
9591
res.json(err);
96-
console.time().tag('DELETE CONTENT')
97-
.error('couldn\'t delete file: ' + fileFullPath);
92+
console.error('couldn\'t delete file: ' + fileFullPath);
9893
}
9994
};
10095

@@ -106,14 +101,12 @@ fileService.putExtraArg = function(req, res) {
106101
fs.writeFile(fileFullPath, req.body.newContent, 'utf8', function(err) {
107102
if (err) {
108103
res.json(err);
109-
console.time().tag('FILE CONTENT')
110-
.error('file couldn\'t be saved: ' + err);
104+
console.error('file couldn\'t be saved: ' + err);
111105
} else {
112106
res.json({
113107
message: 'file saved successfully'
114108
});
115-
console.time().tag('FILE CONTENT')
116-
.info('file saved: ' + fileFullPath);
109+
console.info('file saved: ' + fileFullPath);
117110
}
118111
});
119112
} else {

app/models/folderService.js

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ var dirTree = require('directory-tree'),
22
fs = require('fs'),
33
path = require('path'),
44
fileService = require('./fileService.js');
5-
var console = process.console;
5+
var console = require('./consoleService')
6+
('DIRECTORY CONTENT', ['green', 'inverse']);
67

78
var folderService = {};
89

@@ -35,11 +36,11 @@ folderService.get = function(req, res) {
3536
}
3637
}
3738
output.children.sort(compare);
39+
console.info('directory requested and sent: ' + directoryFullPath);
3840
res.json(output);
3941
} catch (error) {
4042
res.json(error);
41-
console.time().tag('DIRECTORY CONTENT')
42-
.error('directory requested not found: ' + directoryFullPath);
43+
console.error('directory requested not found: ' + directoryFullPath);
4344
}
4445
});
4546

@@ -89,8 +90,7 @@ folderService.put = function(req, res) {
8990
res.json({
9091
message: 'Folder created successfully'
9192
});
92-
console.time().tag('DIRECTORY CONTENT')
93-
.info('directory created: ' + directoryFullPath);
93+
console.info('directory created: ' + directoryFullPath);
9494
}
9595
});
9696
};
@@ -104,8 +104,7 @@ folderService.delete = function(req, res) {
104104
}
105105
});
106106
res.json(directoryFullPath);
107-
console.time().tag('DIRECTORY CONTENT')
108-
.info('directory deleted: ' + directoryFullPath);
107+
console.info('directory deleted: ' + directoryFullPath);
109108
};
110109

111110
folderService.putExtraArg = function(req, res) {
@@ -115,8 +114,7 @@ folderService.putExtraArg = function(req, res) {
115114
if (err) {
116115
res.json(err);
117116
} else {
118-
console.time().tag('DIRECTORY RENAME')
119-
.info('directory renamed from: ' +
117+
console.info('directory renamed from: ' +
120118
directoryFullPath +
121119
'; to: ' +
122120
newDirectoryFullPath);
@@ -155,8 +153,7 @@ folderService.deleteExtraArg = function(req, res) {
155153
res.json({
156154
message: 'Directory deleted (recursively) successfully'
157155
});
158-
console.time().tag('DIRECTORY DELETED')
159-
.info('directory deleted (recursively) successfully: ' +
156+
console.info('directory deleted (recursively) successfully: ' +
160157
directoryFullPath);
161158
} else {
162159
res.json({
@@ -165,8 +162,7 @@ folderService.deleteExtraArg = function(req, res) {
165162
}
166163
} catch (err) {
167164
res.json(err);
168-
console.time().tag('DIRECTORY DELETED')
169-
.error('directory wasn\'t found: ' + directoryFullPath);
165+
console.error('directory wasn\'t found: ' + directoryFullPath);
170166
}
171167

172168
};
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
var userHomeDirectory = require('user-home');
22

3-
var console = process.console;
3+
var console = require('./consoleService')
4+
('USER DIRECTORY', ['yellow', 'inverse']);
45
var userHomeDirectoryService = {};
56

67
userHomeDirectoryService.get = function(req, res) {
78
res.json(userHomeDirectory);
8-
console.time().tag('DIRECTORY CONTENT')
9-
.info('user home directory sent : ' + userHomeDirectory);
9+
console.info('user home directory sent : ' + userHomeDirectory);
1010
};
1111

1212
module.exports = userHomeDirectoryService;

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"express": "~4.13.3",
2727
"helmet": "^2.1.1",
2828
"mime-types": "^2.1.11",
29-
"scribe-js": "~2.0.4",
29+
"scribe-js": "^2.0.4",
3030
"serve-favicon": "~2.3.0",
3131
"user-home": "^2.0.0"
3232
},

server.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ var express = require('express'), // call express
1212
logo = require('./printLogo');
1313
var app = express(); // define our app using express
1414
var scribe = require('scribe-js')(); // used for logs
15-
var console = process.console;
15+
var console = require('./app/models/consoleService')
16+
('MAIN PROCESS', ['magenta', 'inverse']);
1617

1718
// hook helmet to our express app. This adds some protection to each communication with the server
1819
// read more at https://github.com/helmetjs/helmet
@@ -93,6 +94,6 @@ app.get('*', function(req, res) {
9394
*/
9495
app.listen(config.port, function() {
9596
logo();
96-
console.time()
97-
.info('Server listening at port ' + colors.bgBlue.dim.bold(config.port));
97+
console.info('Server listening at port ' +
98+
colors.bgBlue.white.bold(' ' + config.port + ' '));
9899
});

0 commit comments

Comments
 (0)