fix(client):throw exception when producer or consumer miss model (#269)

diff --git a/core/producer.go b/core/producer.go
index 9c6901f..2e1279a 100644
--- a/core/producer.go
+++ b/core/producer.go
@@ -85,8 +85,11 @@
 	var cproduer *C.struct_CProducer
 	if config.ProducerModel == OrderlyProducer {
 		cproduer = C.CreateOrderlyProducer(cs)
-	} else {
+	} else if config.ProducerModel == CommonProducer {
 		cproduer = C.CreateProducer(cs)
+	} else {
+		C.free(unsafe.Pointer(cs))
+		return nil, errors.New("ProducerModel is invalid or empty")
 	}
 	C.free(unsafe.Pointer(cs))
 
diff --git a/core/push_consumer.go b/core/push_consumer.go
index bd7b68a..0dc27c4 100644
--- a/core/push_consumer.go
+++ b/core/push_consumer.go
@@ -185,33 +185,26 @@
 		}
 	}
 
-	if config.Model != 0 {
-		var mode C.CMessageModel
-		switch config.Model {
-		case BroadCasting:
-			mode = C.BROADCASTING
-		case Clustering:
-			mode = C.CLUSTERING
-		}
-		err = rmqError(C.SetPushConsumerMessageModel(cconsumer, mode))
-
-		if err != NIL {
-			return nil, err
-		}
-
+	if config.Model == BroadCasting {
+		err = rmqError(C.SetPushConsumerMessageModel(cconsumer, C.BROADCASTING))
+	} else if config.Model == Clustering {
+		err = rmqError(C.SetPushConsumerMessageModel(cconsumer, C.CLUSTERING))
+	} else {
+		return nil, errors.New("model is invalid or empty")
+	}
+	if err != NIL {
+		return nil, err
 	}
 
-	if config.ConsumerModel != 0 {
-		switch config.ConsumerModel {
-		case Orderly:
-			err = rmqError(C.RegisterMessageCallbackOrderly(cconsumer, (C.MessageCallBack)(unsafe.Pointer(C.callback_cgo))))
-		case CoCurrently:
-			err = rmqError(C.RegisterMessageCallback(cconsumer, (C.MessageCallBack)(unsafe.Pointer(C.callback_cgo))))
-		}
-		if err != NIL {
-			return nil, err
-		}
-
+	if config.ConsumerModel == Orderly {
+		err = rmqError(C.RegisterMessageCallbackOrderly(cconsumer, (C.MessageCallBack)(unsafe.Pointer(C.callback_cgo))))
+	} else if config.ConsumerModel == CoCurrently {
+		err = rmqError(C.RegisterMessageCallback(cconsumer, (C.MessageCallBack)(unsafe.Pointer(C.callback_cgo))))
+	} else {
+		return nil, errors.New("consumer model is invalid or empty")
+	}
+	if err != NIL {
+		return nil, err
 	}
 
 	consumer.cconsumer = cconsumer