[TIC-UI] add the filedownload feature
[archive/20170607/tools/tic.git] / app.js
1 var http = require('http');
2 var path = require('path');
3
4 var socketio = require('socket.io');
5 var fs = require('fs');
6 var express = require('express');
7 var bodyParser = require('body-parser');
8
9 var FileSystem = require('./server/fs/filesystem');
10 var Mic = require('./server/fs/mic');
11 var Router = require('./server/routes/router');
12
13 var app = express();
14 var server = http.createServer(app);
15 var io = socketio.listen(server);
16
17 /* FIXME: change port
18  * @author: leechwin.lee@samsung.com
19  */
20 app.set('port', process.env.PORT || 59002);
21 app.use(bodyParser.json());
22 app.use(bodyParser.urlencoded());
23
24 app.use(express.static(path.join(__dirname, '/public/src'))); //module directory
25 app.use('/api', Router);
26
27 server.listen(app.get('port'), process.env.IP || "0.0.0.0", function () {
28     var addr = server.address();
29     console.log('Server listening at', addr.address + ':' + addr.port);
30 });
31
32 /* server - socket test
33    TODO: server side logic
34    - fs controllers(read/create)
35    - connection with MIC
36  */
37 io.on('connection', function (socket) {
38     console.log('socket connection');
39
40     socket.on('ws/fs/image/list/from', function (data) {
41         var msgData, fileList, targetDirectory;
42
43         msgData = {};
44         fileList = [];
45         targetDirectory = data.path;
46
47         // get the list of file
48         fileList = FileSystem.list(targetDirectory);
49
50         // set the list
51         msgData.list = fileList;
52
53         // send
54         socket.emit('ws/fs/image/list/to', msgData);
55     });
56
57     socket.on('ws/fs/image/add/from', function (data) {
58         console.log(data);
59         var msgData, ans;
60
61         msgData = {};
62
63         function sendMsg(msg) {
64             // send
65             socket.emit('ws/fs/image/add/to', msg);
66         }
67
68         // get the list of file
69         Mic.create(data, socket);
70     });
71
72     socket.on('ws/fs/image/download/from', function (data) {
73         console.log(data);
74
75     });
76
77     socket.on('disconnect', function () {
78         console.log('socket disconnect');
79     });
80
81     socket.on('message', function (msg) {
82         console.log('socket message');
83     });
84
85 });