X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=skyquake%2Fframework%2Fcore%2Fmodules%2Froutes%2Fsockets.js;fp=skyquake%2Fframework%2Fcore%2Fmodules%2Froutes%2Fsockets.js;h=da3f3b1bd3a9cd405305e7cc594e4bfb5ef15888;hb=e29efc315df33d546237e270470916e26df391d6;hp=0000000000000000000000000000000000000000;hpb=9c5e457509ba5a1822c316635c6308874e61b4b9;p=osm%2FUI.git diff --git a/skyquake/framework/core/modules/routes/sockets.js b/skyquake/framework/core/modules/routes/sockets.js new file mode 100644 index 000000000..da3f3b1bd --- /dev/null +++ b/skyquake/framework/core/modules/routes/sockets.js @@ -0,0 +1,62 @@ + +/* + * + * Copyright 2016 RIFT.IO Inc + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +/** + * socket routes module. Provides a RESTful API for this + * skyquake instance's navigation state. + * @module framework/core/modules/routes/socket + * @author Kiran Kashalkar + */ + +var cors = require('cors'); +var bodyParser = require('body-parser'); +var Router = require('express').Router(); +var utils = require('../../api_utils/utils'); + +var sockets = {}; + +sockets.routes = function(socketManager) { + console.log('Configuring socket routes'); + Router.use(bodyParser.json()); + Router.use(cors()); + Router.use(bodyParser.urlencoded({ + extended: true + })); + + Router.post('/socket-polling', cors(), function(req, res) { + socketManager.subscribe(req).then(function(data) { + utils.sendSuccessResponse(data, res); + }, function(error) { + utils.sendErrorResponse(error, res); + }); + }); + + Router.get('/socket-polling-test', cors(), function(req, res) { + utils.sendSuccessResponse({ + statusCode: 200, + data: { + message: 'Hello socket polling' + } + }, res); + }); +} + +sockets.router = Router; + +module.exports = sockets;