(refactor)clean code (#70)

Change-Id: I480f5b8bb580887543cde66824b2f5704f8fa6e8

- use goimports import lib
- use switch-case instrad of if-else for newClient in pulsar/impl_client.go
diff --git a/pulsar/consumer_test.go b/pulsar/consumer_test.go
index cda9506..e6f4d52 100644
--- a/pulsar/consumer_test.go
+++ b/pulsar/consumer_test.go
@@ -850,6 +850,7 @@
 		SubscriptionName:  "sub-1",
 		ReceiverQueueSize: 4,
 	})
+	assert.Nil(t, err)
 
 	for msgNum := 0; msgNum < 100; msgNum++ {
 		if err := producer.Send(ctx, &ProducerMessage{
diff --git a/pulsar/impl_client.go b/pulsar/impl_client.go
index aeda1c0..7077155 100644
--- a/pulsar/impl_client.go
+++ b/pulsar/impl_client.go
@@ -54,15 +54,16 @@
 	}
 
 	var tlsConfig *internal.TLSOptions
-	if url.Scheme == "pulsar" {
+	switch url.Scheme {
+	case "pulsar":
 		tlsConfig = nil
-	} else if url.Scheme == "pulsar+ssl" {
+	case "pulsar+ssl":
 		tlsConfig = &internal.TLSOptions{
 			AllowInsecureConnection: options.TLSAllowInsecureConnection,
 			TrustCertsFilePath:      options.TLSTrustCertsFilePath,
 			ValidateHostname:        options.TLSValidateHostname,
 		}
-	} else {
+	default:
 		return nil, newError(ResultInvalidConfiguration, fmt.Sprintf("Invalid URL scheme '%s'", url.Scheme))
 	}
 
diff --git a/pulsar/internal/connection.go b/pulsar/internal/connection.go
index 8084017..fe43f79 100644
--- a/pulsar/internal/connection.go
+++ b/pulsar/internal/connection.go
@@ -28,11 +28,12 @@
 	"sync/atomic"
 	"time"
 
+	"github.com/golang/protobuf/proto"
+	log "github.com/sirupsen/logrus"
+
 	"github.com/apache/pulsar-client-go/pkg/auth"
 	"github.com/apache/pulsar-client-go/pkg/pb"
 	"github.com/apache/pulsar-client-go/util"
-	"github.com/golang/protobuf/proto"
-	log "github.com/sirupsen/logrus"
 )
 
 type TLSOptions struct {
@@ -356,6 +357,9 @@
 
 	case pb.BaseCommand_MESSAGE:
 		err = c.handleMessage(cmd.GetMessage(), headersAndPayload)
+		if err != nil {
+			c.Close()
+		}
 	case pb.BaseCommand_PING:
 		c.handlePing()
 	case pb.BaseCommand_PONG:
@@ -364,9 +368,7 @@
 	case pb.BaseCommand_ACTIVE_CONSUMER_CHANGE:
 
 	default:
-		if err != nil {
-			c.log.Errorf("Received invalid command type: %s", cmd.Type)
-		}
+		c.log.Errorf("Received invalid command type: %s", cmd.Type)
 		c.Close()
 	}
 }