diff --git a/lib/nodejs/lib/thrift/connection.js b/lib/nodejs/lib/thrift/connection.js
index 4b84b76..f9c9bcc 100644
--- a/lib/nodejs/lib/thrift/connection.js
+++ b/lib/nodejs/lib/thrift/connection.js
@@ -36,6 +36,7 @@
 
   this.seqId2Service = {};
   this.connection = stream;
+  this.ssl = (stream.encrypted);
   this.options = options || {};
   this.transport = this.options.transport || TBufferedTransport;
   this.protocol = this.options.protocol || TBinaryProtocol;
@@ -61,7 +62,8 @@
       this.options.connect_timeout > 0) {
      this.connect_timeout = +this.options.connect_timeout;
   }
-  this.connection.addListener("connect", function() {
+
+  this.connection.addListener(this.ssl ? "secureConnect" : "connect", function() {
     self.connected = true;
 
     this.setTimeout(self.options.timeout || 0);
@@ -78,24 +80,6 @@
     self.emit("connect");
   });
 
-  this.connection.addListener("secureConnect", function() {
-    self.connected = true;
-
-    this.setTimeout(self.options.timeout || 0);
-    this.setNoDelay();
-    this.frameLeft = 0;
-    this.framePos = 0;
-    this.frame = null;
-    self.initialize_retry_vars();
-
-    self.offline_queue.forEach(function(data) {
-      self.connection.write(data);
-    });
-
-    self.emit("connect");
-  });
-
-
   this.connection.addListener("error", function(err) {
     // Only emit the error if no-one else is listening on the connection
     // or if someone is listening on us
