Fix: MySQL server has gone away according to wait_timeout
[archive/20170607/tools/tic.git] / app.js
diff --git a/app.js b/app.js
index 5025ec0..55ff958 100644 (file)
--- a/app.js
+++ b/app.js
@@ -1,41 +1,41 @@
-var http = require('http');
-var path = require('path');
-
-var socketio = require('socket.io');
-var fs = require('fs');
 var express = require('express');
+var session = require('express-session');
+var path = require('path');
 var bodyParser = require('body-parser');
+var JL = require('jsnlog').JL;
+var jsnlog_nodejs = require('jsnlog-nodejs').jsnlog_nodejs;
+var logger = JL('app.js');
+var AppConfig = require('./config.json');
 
-var app = express();
-var server = http.createServer(app);
-var io = socketio.listen(server);
 
-/* FIXME: change port
-   @author: leechwin.lee@samsung.com
- */
-app.set('port', process.env.PORT || 59002);
+var app = express();
+/* app config */
+app.set('port', process.env.PORT || AppConfig.TIC_WEB.PORT);
 app.use(bodyParser.json());
-app.use(bodyParser.urlencoded());
+app.use(bodyParser.urlencoded({extended: true}));
+app.use(express.static(path.join(__dirname, '/public/src'))); //module directory
 
-app.use(express.static(path.join(__dirname, '/public/src')));
+var server = require('./controller/server').start(app);
+var io = require('./controller/socketio').listen(server);
+var router = require('./controller/router').init(server);
 
-server.listen(app.get('port'),  process.env.IP || "0.0.0.0", function(){
-    var addr = server.address();
-    console.log('Server listening at', addr.address + ':' + addr.port);
-});
+app.use(session({
+    secret: 'tic',
+    resave: false,
+    saveUninitialized: true
+}));
+
+app.use('/api', router);
 
-/* server - socket test
-   TODO: server side logic
-   - fs controllers(read/create)
-   - connection with MIC
+/**
+ * jsnlog.js on the client by default sends log messages to /jsnlog.logger, using POST.
+ * @URI /*.logger
+ * @TYPE POST
  */
-io.on('connection', function (socket) {
-    console.log('socket connection');
+app.post('*.logger', function (req, res) {
+    // Pass the log messages to the server side jsnlog.js
+    jsnlog_nodejs(JL, req.body);
 
-    socket.on('disconnect', function () {
-        console.log('socket disconnect');
-    });
-    socket.on('message', function (msg) {
-        console.log('socket message');
-    });
+    // Send empty response. This is ok, because client side jsnlog does not use response from server.
+    res.send('');
 });