Skip to content

Commit 3e15527

Browse files
committed
Changes "ignore" error handling
1 parent a79577a commit 3e15527

File tree

7 files changed

+11
-234
lines changed

7 files changed

+11
-234
lines changed

bower.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angularjs-socket-cluster",
3-
"version": "1.1.4",
3+
"version": "1.1.5",
44
"homepage": "https://github.com/ryanpager/angularjs-socket-cluster",
55
"authors": [
66
"Ryan Page <ryanpager@gmail.com>"

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angularjs-socket-cluster",
3-
"version": "1.1.4",
3+
"version": "1.1.5",
44
"description": "AngularJS SocketCluster Interface",
55
"scripts": {
66
"test": "echo \"Error: no test specified\" && exit 1"

release/socket.js

Lines changed: 0 additions & 220 deletions
Original file line numberDiff line numberDiff line change
@@ -2160,223 +2160,3 @@ module.exports={
21602160

21612161
},{}]},{},[4])(4)
21622162
});
2163-
2164-
/**
2165-
* AngularJS SocketCluster Interface
2166-
* @author Ryan Page <ryanpager@gmail.com>
2167-
* @version v1.1.3
2168-
* @see https://github.com/ryanpager/angularjs-socket-cluster#readme
2169-
* @license MIT
2170-
*/
2171-
(function() { 'use strict';
2172-
/*
2173-
>> Class Declaration
2174-
*/
2175-
var Socket;
2176-
2177-
Socket = (function() {
2178-
var connectionOptions, debuggingEnabled, instance;
2179-
2180-
Socket.prototype.$inject = [];
2181-
2182-
function Socket() {}
2183-
2184-
debuggingEnabled = false;
2185-
2186-
instance = null;
2187-
2188-
connectionOptions = {
2189-
autoReconnect: true,
2190-
protocol: 'http',
2191-
hostname: '127.0.0.1',
2192-
port: 8000
2193-
};
2194-
2195-
Socket.prototype.$get = [
2196-
'socketCluster', '$q', '$rootScope', '$log', '$timeout', function(socketCluster, $q, $rootScope, $log, $timeout) {
2197-
var service;
2198-
return service = {
2199-
connect: function(opts) {
2200-
if (opts == null) {
2201-
opts = {};
2202-
}
2203-
return $q(function(resolve, reject) {
2204-
angular.merge(connectionOptions, opts);
2205-
if (debuggingEnabled) {
2206-
$log.info('Socket :: Attempting connection...');
2207-
}
2208-
instance = socketCluster.connect(connectionOptions);
2209-
instance.on('error', function(err) {
2210-
if (err === true) {
2211-
return;
2212-
}
2213-
return $log.error("Socket :: Error >> " + err);
2214-
});
2215-
instance.on('subscribeFail', function(err) {
2216-
return $log.error("Socket :: Channel subscription error >> " + err);
2217-
});
2218-
instance.on('disconnect', function(err) {
2219-
if (debuggingEnabled) {
2220-
return $log.info('Socket :: Disconnection successful');
2221-
}
2222-
});
2223-
instance.on('connectAbort', function(err) {
2224-
err = "Socket :: Connection aborted >> " + err;
2225-
$log.error(err);
2226-
return reject(err);
2227-
});
2228-
return instance.on('connect', function() {
2229-
if (debuggingEnabled) {
2230-
$log.info('Socket :: Connection successful');
2231-
}
2232-
return resolve(true);
2233-
});
2234-
});
2235-
},
2236-
disconnect: function() {
2237-
return $q(function(resolve, reject) {
2238-
var err;
2239-
if (debuggingEnabled) {
2240-
$log.info('Socket :: Attempting disconnect...');
2241-
}
2242-
if (instance == null) {
2243-
err = 'Socket :: Error >> no socket connection established.';
2244-
$log.error(err);
2245-
reject(err);
2246-
}
2247-
instance.disconnect();
2248-
return resolve(true);
2249-
});
2250-
},
2251-
subscribe: function(channel) {
2252-
if (channel == null) {
2253-
channel = null;
2254-
}
2255-
return $q(function(resolve, reject) {
2256-
var err, handleEvent;
2257-
if (channel == null) {
2258-
err = 'Socket :: Error >> no socket channel specified.';
2259-
$log.error(err);
2260-
reject(err);
2261-
}
2262-
if (instance == null) {
2263-
err = 'Socket :: Error >> no socket connection established.';
2264-
$log.error(err);
2265-
reject(err);
2266-
}
2267-
if (debuggingEnabled) {
2268-
$log.info("Socket :: Subscribe to channel " + channel);
2269-
}
2270-
handleEvent = function(eventData) {
2271-
if (eventData.$error != null) {
2272-
if (debuggingEnabled) {
2273-
$log.error('Socket :: Event error >>', eventData);
2274-
}
2275-
return;
2276-
}
2277-
if (debuggingEnabled) {
2278-
$log.info('Socket :: Event received >>', eventData);
2279-
}
2280-
return $rootScope.$apply(function() {
2281-
if (debuggingEnabled) {
2282-
$log.info("Socket :: Rebroadcast event >> " + eventData.$event);
2283-
}
2284-
return $rootScope.$broadcast("socket:" + eventData.$event, eventData);
2285-
});
2286-
};
2287-
instance.watch(channel, handleEvent);
2288-
instance.on('single.publish', handleEvent);
2289-
instance.subscribe(channel);
2290-
return resolve(true);
2291-
});
2292-
},
2293-
unsubscribe: function(channel) {
2294-
if (channel == null) {
2295-
channel = null;
2296-
}
2297-
return $q(function(resolve, reject) {
2298-
var err;
2299-
if (channel == null) {
2300-
err = 'Socket :: Error >> no socket channel specified.';
2301-
$log.error(err);
2302-
reject(err);
2303-
}
2304-
if (instance == null) {
2305-
err = 'Socket :: Error >> no socket connection established.';
2306-
$log.error(err);
2307-
reject(err);
2308-
}
2309-
if (debuggingEnabled) {
2310-
$log.info("Socket :: Unsubscribe to channel " + channel);
2311-
}
2312-
instance.unsubscribe(channel);
2313-
instance.unwatch(channel);
2314-
return resolve(true);
2315-
});
2316-
},
2317-
publish: function(channel, eventData) {
2318-
if (channel == null) {
2319-
channel = null;
2320-
}
2321-
if (eventData == null) {
2322-
eventData = {};
2323-
}
2324-
return $q(function(resolve, reject) {
2325-
var err;
2326-
if (channel == null) {
2327-
err = 'Socket :: Error >> no socket channel specified.';
2328-
$log.error(err);
2329-
reject(err);
2330-
}
2331-
if (instance == null) {
2332-
err = 'Socket :: Error >> no socket connection established.';
2333-
$log.error(err);
2334-
reject(err);
2335-
}
2336-
if (debuggingEnabled) {
2337-
$log.info("Socket :: Publish to channel " + channel + " >>", eventData);
2338-
}
2339-
return instance.publish(channel, eventData, function(err) {
2340-
if (err != null) {
2341-
return reject(err);
2342-
} else {
2343-
return resolve(true);
2344-
}
2345-
});
2346-
});
2347-
},
2348-
toggleDebugging: function(enabled) {
2349-
if (enabled == null) {
2350-
enabled = false;
2351-
}
2352-
return debuggingEnabled = enabled;
2353-
},
2354-
subscriptions: function() {
2355-
if (instance == null) {
2356-
$log.error('Socket :: Error >> no socket connection established.');
2357-
return;
2358-
}
2359-
return instance.subscriptions();
2360-
},
2361-
isSubscribed: function(channel) {
2362-
if (instance == null) {
2363-
$log.error('Socket :: Error >> no socket connection established.');
2364-
return;
2365-
}
2366-
return instance.isSubscribed(channel);
2367-
}
2368-
};
2369-
}
2370-
];
2371-
2372-
return Socket;
2373-
2374-
})();
2375-
2376-
2377-
/*
2378-
>> Module Declaration
2379-
*/
2380-
2381-
angular.module('sbb.components', []).constant('socketCluster', socketCluster).provider('sbb.components.socket', Socket);
2382-
})();

release/socket.min.js

Lines changed: 0 additions & 1 deletion
This file was deleted.

release/socket.standalone.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* AngularJS SocketCluster Interface
33
* @author Ryan Page <ryanpager@gmail.com>
4-
* @version v1.1.3
4+
* @version v1.1.5
55
* @see https://github.com/ryanpager/angularjs-socket-cluster#readme
66
* @license MIT
77
*/
@@ -44,7 +44,7 @@ Socket = (function() {
4444
}
4545
instance = socketCluster.connect(connectionOptions);
4646
instance.on('error', function(err) {
47-
if (err === true) {
47+
if (err === 'ignore') {
4848
return;
4949
}
5050
return $log.error("Socket :: Error >> " + err);

release/socket.standalone.min.js

Lines changed: 0 additions & 8 deletions
This file was deleted.

src/socket.coffee

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,13 @@ class Socket
6464

6565
# Generic events to listen for
6666
instance.on 'error', (err) ->
67-
return if err is true # true denotes an error that should be squelched
67+
# this is a workaround for a stupid SocketCluster bug that
68+
# prevents next(true) from working correctly
69+
#
70+
# 'ignore' denotes an error that should be squelched (most likely
71+
# a single publish event was also emitted so we can ignore this
72+
# one)
73+
return if err is 'ignore'
6874
$log.error("Socket :: Error >> #{err}")
6975

7076
instance.on 'subscribeFail', (err) ->

0 commit comments

Comments
 (0)