Plato on Github
Report Home
app/Model/SocketServices.js
Maintainability
85.38
Lines of code
53
Difficulty
12.50
Estimated Errors
0.18
Function weight
By Complexity
By SLOC
/*jshint node: true */ 'use strict'; /* * Name : SocketServices.js * Module : FrontEnd::Model * Location : /frontend/app/Model * * History : * Version Date Programmer Description * ================================================================================================= * 0.1.0 2015-05-12 Maria Giovanna Chinellato Add all attributes and all methods * * 0.0.1 2015-05-12 Maria Giovanna Chinellato Initial code * ================================================================================================= * */ angular.module('norris-nrti') .factory('SocketServicesFactory', function ($rootScope) { function SocketServices(url) { var socket = io.connect(url); return { on: function (eventName, callback) { socket.on(eventName, function () { var args = arguments; $rootScope.$apply(function () { callback.apply(socket, args); }); }); }, emit: function (eventName, data, callback) { socket.emit(eventName, data, function () { var args = arguments; $rootScope.$apply(function () { if (callback) { callback.apply(socket, args); } }); }); } }; } function SocketServicesFactory() {} SocketServicesFactory.build = function (url) { return new SocketServices(url); }; return SocketServicesFactory; });