(packets, supportsBinary, callback)
| 220 | */ |
| 221 | |
| 222 | export function encodePayload (packets, supportsBinary, callback) { |
| 223 | if (typeof supportsBinary === 'function') { |
| 224 | callback = supportsBinary; |
| 225 | supportsBinary = null; |
| 226 | } |
| 227 | |
| 228 | if (supportsBinary && hasBinary(packets)) { |
| 229 | return encodePayloadAsBinary(packets, callback); |
| 230 | } |
| 231 | |
| 232 | if (!packets.length) { |
| 233 | return callback('0:'); |
| 234 | } |
| 235 | |
| 236 | function encodeOne(packet, doneCallback) { |
| 237 | encodePacket(packet, supportsBinary, false, function(message) { |
| 238 | doneCallback(null, setLengthHeader(message)); |
| 239 | }); |
| 240 | } |
| 241 | |
| 242 | map(packets, encodeOne, function(err, results) { |
| 243 | return callback(results.join('')); |
| 244 | }); |
| 245 | }; |
| 246 | |
| 247 | function setLengthHeader(message) { |
| 248 | return message.length + ':' + message; |
nothing calls this directly
no test coverage detected