code: function (stream) {
      var that = this
      stream.once('data', function (d) {
        stream.pause()
        stream.unshift(d)
        /*
         * Because:
         * In HTTP 1.0 and 1.1 Request-Line which begins with a method token (or printable chars like [P]OST [G]ET).
         * Also servers SHOULD ignore any empty line(s) received where a Request-Line is expected [rfc2616-sec4.1] [rfc2616-sec5.1]
         * AND
         * In MQTT the first Packet sent from the Client to the Server MUST be a CONNECT Packet [MQTT-3.1.0-1].
         * Therefore:
         * A valid MQTT request begins with 0x10 and a HTTP request must not
         */
        if (d[ 0 ] === 0x10 || d[ 0 ] === String.fromCharCode(0x10)) {
          mqttListener.call(that, stream)
        } else {
          httpListener.call(that, stream)
        }
        stream.resume()
      })
    }
docs: /*
  Taste incoming socket connection.
  It is either HTTP or MQTT protocol or we will fail.