changeset 257:dfc2b035e055

Slimming down the signature of the JSONHandler type to not take the http.ResponseWriter. Idea of this handler is to simply transform JSON to JSON. The input is already parsed. The output is generated from JSONResult. So there is no need to pass the ResponseWriter to the handler function.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 27 Jul 2018 13:03:56 +0200
parents de6fdb316b8f
children 2ce5cf4bca35
files controllers/json.go controllers/user.go
diffstat 2 files changed, 12 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/controllers/json.go	Fri Jul 27 12:30:19 2018 +0200
+++ b/controllers/json.go	Fri Jul 27 13:03:56 2018 +0200
@@ -19,7 +19,7 @@
 
 type JSONHandler struct {
 	Input  func() interface{}
-	Handle func(http.ResponseWriter, *http.Request, interface{}, *sql.DB) (JSONResult, error)
+	Handle func(interface{}, *http.Request, *sql.DB) (JSONResult, error)
 }
 
 type JSONError struct {
@@ -46,7 +46,7 @@
 	token, _ := auth.GetToken(req)
 	var jr JSONResult
 	err := auth.ConnPool.Do(token, func(db *sql.DB) (err error) {
-		jr, err = j.Handle(rw, req, input, db)
+		jr, err = j.Handle(input, req, db)
 		return err
 	})
 
--- a/controllers/user.go	Fri Jul 27 12:30:19 2018 +0200
+++ b/controllers/user.go	Fri Jul 27 13:03:56 2018 +0200
@@ -183,8 +183,8 @@
 }
 
 func deleteUser(
-	rw http.ResponseWriter, req *http.Request,
-	input interface{}, db *sql.DB,
+	input interface{}, req *http.Request,
+	db *sql.DB,
 ) (jr JSONResult, err error) {
 
 	user := mux.Vars(req)["user"]
@@ -211,8 +211,8 @@
 }
 
 func updateUser(
-	rw http.ResponseWriter, req *http.Request,
-	input interface{}, db *sql.DB,
+	input interface{}, req *http.Request,
+	db *sql.DB,
 ) (jr JSONResult, err error) {
 
 	user := mux.Vars(req)["user"]
@@ -263,8 +263,8 @@
 }
 
 func createUser(
-	rw http.ResponseWriter, req *http.Request,
-	input interface{}, db *sql.DB,
+	input interface{}, req *http.Request,
+	db *sql.DB,
 ) (jr JSONResult, err error) {
 
 	user := input.(*User)
@@ -307,8 +307,8 @@
 }
 
 func listUsers(
-	rw http.ResponseWriter, req *http.Request,
-	input interface{}, db *sql.DB,
+	input interface{}, req *http.Request,
+	db *sql.DB,
 ) (jr JSONResult, err error) {
 
 	var rows *sql.Rows
@@ -347,8 +347,8 @@
 }
 
 func listUser(
-	rw http.ResponseWriter, req *http.Request,
-	input interface{}, db *sql.DB,
+	input interface{}, req *http.Request,
+	db *sql.DB,
 ) (jr JSONResult, err error) {
 
 	user := mux.Vars(req)["user"]