Use Prepare/Exec for SQL inserts
diff --git a/listener.go b/listener.go
index 6c025c7..2152bea 100644
--- a/listener.go
+++ b/listener.go
@@ -116,22 +116,26 @@
 /*
  * INSERT INTO APP_CREDENTIAL op
  */
-func insertCreateCredential(ele common.Row, db *sql.DB) {
+func insertCreateCredential(ele common.Row, db *sql.DB) bool {
 
 	var scope, id, appId, consumerSecret, appstatus, status, tenantId string
 	var issuedAt int64
 
-	txn, _ := db.Begin()
-	err := ele.Get("_apid_scope", &scope)
-	err = ele.Get("id", &id)
-	err = ele.Get("app_id", &appId)
-	err = ele.Get("consumer_secret", &consumerSecret)
-	err = ele.Get("app_status", &appstatus)
-	err = ele.Get("status", &status)
-	err = ele.Get("issued_at", &issuedAt)
-	err = ele.Get("tenant_id", &tenantId)
+	ele.Get("_apid_scope", &scope)
+	ele.Get("id", &id)
+	ele.Get("app_id", &appId)
+	ele.Get("consumer_secret", &consumerSecret)
+	ele.Get("app_status", &appstatus)
+	ele.Get("status", &status)
+	ele.Get("issued_at", &issuedAt)
+	ele.Get("tenant_id", &tenantId)
 
-	_, err = txn.Exec("INSERT INTO APP_CREDENTIAL (_apid_scope, id, app_id, consumer_secret, app_status, status, issued_at, tenant_id)VALUES(?,?,?,?,?,?,?,?);",
+	stmt, err := db.Prepare("INSERT INTO APP_CREDENTIAL (_apid_scope, id, app_id, consumer_secret, app_status, status, issued_at, tenant_id)VALUES($1,$2,$3,$4,$5,$6,$7,$8);")
+	if err != nil {
+		log.Error("INSERT CRED Failed: ", id, ", ", scope, ")", err)
+		return false
+	}
+	_, err = stmt.Exec(
 		scope,
 		id,
 		appId,
@@ -143,31 +147,35 @@
 
 	if err != nil {
 		log.Error("INSERT CRED Failed: ", id, ", ", scope, ")", err)
-		txn.Rollback()
+		return false
 	} else {
 		log.Info("INSERT CRED Success: (", id, ", ", scope, ")")
-		txn.Commit()
+		return true
 	}
 
 }
-func insertApiProductMapper(ele common.Row, db *sql.DB) {
+func insertApiProductMapper(ele common.Row, db *sql.DB) bool {
 
 	var ApiProduct, AppId, EntityIdentifier, tenantId, Scope, Status string
 
-	txn, _ := db.Begin()
-	err := ele.Get("apiprdt_id", &ApiProduct)
-	err = ele.Get("app_id", &AppId)
-	err = ele.Get("appcred_id", &EntityIdentifier)
-	err = ele.Get("tenant_id", &tenantId)
-	err = ele.Get("_apid_scope", &Scope)
-	err = ele.Get("status", &Status)
+	ele.Get("apiprdt_id", &ApiProduct)
+	ele.Get("app_id", &AppId)
+	ele.Get("appcred_id", &EntityIdentifier)
+	ele.Get("tenant_id", &tenantId)
+	ele.Get("_apid_scope", &Scope)
+	ele.Get("status", &Status)
 
 	/*
 	 * If the credentials has been successfully inserted, insert the
 	 * mapping entries associated with the credential
 	 */
 
-	_, err = txn.Exec("INSERT INTO APP_CREDENTIAL_APIPRODUCT_MAPPER(apiprdt_id, app_id, appcred_id, tenant_id, _apid_scope, status) VALUES(?,?,?,?,?,?);",
+	stmt, err := db.Prepare("INSERT INTO APP_CREDENTIAL_APIPRODUCT_MAPPER(apiprdt_id, app_id, appcred_id, tenant_id, _apid_scope, status) VALUES($1,$2,$3,$4,$5,$6);")
+	if err != nil {
+		log.Error("INSERT APP_CREDENTIAL_APIPRODUCT_MAPPER Failed: ", err)
+		return false
+	}
+	_, err = stmt.Exec(
 		ApiProduct,
 		AppId,
 		EntityIdentifier,
@@ -177,50 +185,54 @@
 
 	if err != nil {
 		log.Error("INSERT APP_CREDENTIAL_APIPRODUCT_MAPPER Failed: (",
-			ApiProduct,
-			AppId,
-			EntityIdentifier,
-			tenantId,
-			Scope,
+			ApiProduct, ", ",
+			AppId, ", ",
+			EntityIdentifier, ", ",
+			tenantId, ", ",
+			Scope, ", ",
 			Status,
 			")",
 			err)
-		txn.Rollback()
+		return false
 	} else {
 		log.Info("INSERT APP_CREDENTIAL_APIPRODUCT_MAPPER Success: (",
-			ApiProduct,
-			AppId,
-			EntityIdentifier,
-			tenantId,
-			Scope,
+			ApiProduct, ", ",
+			AppId, ", ",
+			EntityIdentifier, ", ",
+			tenantId, ", ",
+			Scope, ", ",
 			Status,
 			")")
-		txn.Commit()
+		return true
 	}
 }
 
 /*
  * DELETE CRED
  */
-func deleteCredential(ele common.Row, db *sql.DB) {
-
+func deleteCredential(ele common.Row, db *sql.DB) bool {
+	return true
 }
 
 /*
  * INSERT INTO API product op
  */
-func insertAPIproduct(ele common.Row, db *sql.DB) {
+func insertAPIproduct(ele common.Row, db *sql.DB) bool {
 
 	var scope, apiProduct, res, env, tenantId string
 
-	txn, _ := db.Begin()
-	err := ele.Get("_apid_scope", &scope)
-	err = ele.Get("id", &apiProduct)
-	err = ele.Get("api_resources", &res)
-	err = ele.Get("environments", &env)
-	err = ele.Get("tenant_id", &tenantId)
+	ele.Get("_apid_scope", &scope)
+	ele.Get("id", &apiProduct)
+	ele.Get("api_resources", &res)
+	ele.Get("environments", &env)
+	ele.Get("tenant_id", &tenantId)
 
-	_, err = txn.Exec("INSERT INTO API_PRODUCT (id, api_resources, environments, tenant_id,_apid_scope) VALUES(?,?,?,?,?)",
+	stmt, err := db.Prepare("INSERT INTO API_PRODUCT (id, api_resources, environments, tenant_id,_apid_scope) VALUES($1,$2,$3,$4,$5)")
+	if err != nil {
+		log.Error("INSERT API_PRODUCT Failed: ", err)
+		return false
+	}
+	_, err = stmt.Exec(
 		apiProduct,
 		res,
 		env,
@@ -228,11 +240,11 @@
 		scope)
 
 	if err != nil {
-		log.Error("INSERT API_PRODUCT Failed: (", apiProduct, tenantId, ")", err)
-		txn.Rollback()
+		log.Error("INSERT API_PRODUCT Failed: (", apiProduct, ", ", tenantId, ")", err)
+		return false
 	} else {
-		log.Info("INSERT API_PRODUCT Success: (", apiProduct, tenantId, ")")
-		txn.Commit()
+		log.Info("INSERT API_PRODUCT Success: (", apiProduct, ", ", tenantId, ")")
+		return true
 	}
 
 }
@@ -240,26 +252,30 @@
 /*
  * INSERT INTO APP op
  */
-func insertCreateApplication(ele common.Row, db *sql.DB) {
+func insertCreateApplication(ele common.Row, db *sql.DB) bool {
 
 	var scope, EntityIdentifier, DeveloperId, CallbackUrl, Status, AppName, AppFamily, tenantId, CreatedBy, LastModifiedBy string
 	var CreatedAt, LastModifiedAt int64
-	txn, _ := db.Begin()
 
-	err := ele.Get("_apid_scope", &scope)
-	err = ele.Get("id", &EntityIdentifier)
-	err = ele.Get("developer_id", &DeveloperId)
-	err = ele.Get("callback_url", &CallbackUrl)
-	err = ele.Get("status", &Status)
-	err = ele.Get("name", &AppName)
-	err = ele.Get("app_family", &AppFamily)
-	err = ele.Get("created_at", &CreatedAt)
-	err = ele.Get("created_by", &CreatedBy)
-	err = ele.Get("updated_at", &LastModifiedAt)
-	err = ele.Get("updated_by", &LastModifiedBy)
-	err = ele.Get("tenant_id", &tenantId)
+	ele.Get("_apid_scope", &scope)
+	ele.Get("id", &EntityIdentifier)
+	ele.Get("developer_id", &DeveloperId)
+	ele.Get("callback_url", &CallbackUrl)
+	ele.Get("status", &Status)
+	ele.Get("name", &AppName)
+	ele.Get("app_family", &AppFamily)
+	ele.Get("created_at", &CreatedAt)
+	ele.Get("created_by", &CreatedBy)
+	ele.Get("updated_at", &LastModifiedAt)
+	ele.Get("updated_by", &LastModifiedBy)
+	ele.Get("tenant_id", &tenantId)
 
-	_, err = txn.Exec("INSERT INTO APP (_apid_scope, id, developer_id,callback_url,status, name, app_family, created_at, created_by,updated_at, updated_by,tenant_id) VALUES(?,?,?,?,?,?,?,?,?,?,?,?);",
+	stmt, err := db.Prepare("INSERT INTO APP (_apid_scope, id, developer_id,callback_url,status, name, app_family, created_at, created_by,updated_at, updated_by,tenant_id) VALUES($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12);")
+	if err != nil {
+		log.Error("INSERT APP Failed: ", err)
+		return false
+	}
+	_, err = stmt.Exec(
 		scope,
 		EntityIdentifier,
 		DeveloperId,
@@ -274,11 +290,11 @@
 		tenantId)
 
 	if err != nil {
-		log.Error("INSERT APP Failed: (", EntityIdentifier, tenantId, ")", err)
-		txn.Rollback()
+		log.Error("INSERT APP Failed: (", EntityIdentifier, ", ", tenantId, ")", err)
+		return false
 	} else {
-		log.Info("INSERT APP Success: (", EntityIdentifier, tenantId, ")")
-		txn.Commit()
+		log.Info("INSERT APP Success: (", EntityIdentifier, ", ", tenantId, ")")
+		return true
 	}
 
 }
@@ -286,25 +302,30 @@
 /*
  * INSERT INTO DEVELOPER op
  */
-func insertCreateDeveloper(ele common.Row, db *sql.DB) {
+func insertCreateDeveloper(ele common.Row, db *sql.DB) bool {
 	var scope, EntityIdentifier, Email, Status, UserName, FirstName, LastName, tenantId, CreatedBy, LastModifiedBy, Username string
 	var CreatedAt, LastModifiedAt int64
-	txn, _ := db.Begin()
 
-	err := ele.Get("_apid_scope", &scope)
-	err = ele.Get("email", &Email)
-	err = ele.Get("id", &EntityIdentifier)
-	err = ele.Get("tenant_id", &tenantId)
-	err = ele.Get("status", &Status)
-	err = ele.Get("username", &Username)
-	err = ele.Get("first_name", &FirstName)
-	err = ele.Get("last_name", &LastName)
-	err = ele.Get("created_at", &CreatedAt)
-	err = ele.Get("created_by", &CreatedBy)
-	err = ele.Get("updated_at", &LastModifiedAt)
-	err = ele.Get("updated_by", &LastModifiedBy)
+	ele.Get("_apid_scope", &scope)
+	ele.Get("email", &Email)
+	ele.Get("id", &EntityIdentifier)
+	ele.Get("tenant_id", &tenantId)
+	ele.Get("status", &Status)
+	ele.Get("username", &Username)
+	ele.Get("first_name", &FirstName)
+	ele.Get("last_name", &LastName)
+	ele.Get("created_at", &CreatedAt)
+	ele.Get("created_by", &CreatedBy)
+	ele.Get("updated_at", &LastModifiedAt)
+	ele.Get("updated_by", &LastModifiedBy)
 
-	_, err = txn.Exec("INSERT INTO DEVELOPER (_apid_scope,email,id,tenant_id,status,username,first_name,last_name,created_at,created_by,updated_at,updated_by) VALUES(?,?,?,?,?,?,?,?,?,?,?,?);",
+	stmt, err := db.Prepare("INSERT INTO DEVELOPER (_apid_scope,email,id,tenant_id,status,username,first_name,last_name,created_at,created_by,updated_at,updated_by) VALUES($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12);")
+	if err != nil {
+		log.Error("INSERT DEVELOPER Failed: ", err)
+		return false
+	}
+
+	_, err = stmt.Exec(
 		scope,
 		Email,
 		EntityIdentifier,
@@ -319,10 +340,10 @@
 		LastModifiedBy)
 
 	if err != nil {
-		log.Error("INSERT DEVELOPER Failed: (", EntityIdentifier, scope, ")", err)
-		txn.Rollback()
+		log.Error("INSERT DEVELOPER Failed: (", EntityIdentifier, ", ", scope, ")", err)
+		return false
 	} else {
-		log.Info("INSERT DEVELOPER Success: (", EntityIdentifier, scope, ")")
-		txn.Commit()
+		log.Info("INSERT DEVELOPER Success: (", EntityIdentifier, ", ", scope, ")")
+		return true
 	}
 }