Browse Source

v0.0.1

master
Georg Spar 4 years ago
parent
commit
22a82fd182
  1. 5
      gocart/go.mod
  2. 5
      gocart/rester/go.mod
  3. 2
      gocart/rester/go.sum
  4. 17
      gocart/rester/rest.go
  5. 32
      spargcom/gocart/database/database.go
  6. 10
      spargcom/gocart/database/go.mod
  7. 2
      spargcom/gocart/database/go.sum
  8. 0
      spargcom/gocart/domain/domain.go
  9. 3
      spargcom/gocart/domain/go.mod
  10. 5
      spargcom/gocart/go.mod
  11. 0
      spargcom/gocart/go.sum
  12. 0
      spargcom/gocart/gocart.go
  13. 13
      spargcom/gocart/rester/go.mod
  14. 4
      spargcom/gocart/rester/go.sum
  15. 46
      spargcom/gocart/rester/rest.go
  16. 0
      spargcom/gocart/rester/rester.uxf

5
gocart/go.mod

@ -1,5 +0,0 @@
module spargcom/gocart
go 1.16
require github.com/gorilla/mux v1.8.0 // indirect

5
gocart/rester/go.mod

@ -1,5 +0,0 @@
module rest.go
go 1.16
require github.com/gorilla/mux v1.8.0 // indirect

2
gocart/rester/go.sum

@ -1,2 +0,0 @@
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=

17
gocart/rester/rest.go

@ -1,17 +0,0 @@
package main
import (
"net/http"
"github.com/gorilla/mux"
)
func main() {
r := mux.NewRouter()
r.HandleFunc("/rhabarber", rhab)
http.ListenAndServe(":8081", r)
}
func rhab(writer http.ResponseWriter, req *http.Request) {
writer.Write([]byte("Babablub"))
}

32
spargcom/gocart/database/database.go

@ -0,0 +1,32 @@
package database
import (
"database/sql"
"fmt"
"spargcom/gocart/domain"
_ "github.com/go-sql-driver/mysql"
)
var (
dbConnection = "gocuser:123456@tcp(10.1.1.6:3300)/gocart"
dbType = "mysql"
)
func CreatePackage(pk domain.Package) (resPk domain.Package, err error) {
conn, err := sql.Open(dbType, dbConnection)
if err != nil {
fmt.Println("Error while connecting DB: ", err)
}
fmt.Println("Verbindung hergestellt")
fmt.Println("Name = ", pk.Name)
defer conn.Close()
_, err = conn.Exec("INSERT INTO package VALUES(?,?,?,?,?)", pk.Id, pk.Name, pk.Amount, pk.Price, pk.IsActive)
if err != nil {
fmt.Println("Error while executing insert statement", err)
}
resPk = pk
return resPk, err
}

10
spargcom/gocart/database/go.mod

@ -0,0 +1,10 @@
module spargcom/gocart/database
go 1.16
require (
github.com/go-sql-driver/mysql v1.5.0
spargcom/gocart/domain v0.0.0-00010101000000-000000000000
)
replace spargcom/gocart/domain => ../domain

2
spargcom/gocart/database/go.sum

@ -0,0 +1,2 @@
github.com/go-sql-driver/mysql v1.5.0 h1:ozyZYNQW3x3HtqT1jira07DN2PArx2v7/mN66gGcHOs=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=

0
gocart/domain/domain.go → spargcom/gocart/domain/domain.go

3
spargcom/gocart/domain/go.mod

@ -0,0 +1,3 @@
module spargcom/gocart/domain
go 1.16

5
spargcom/gocart/go.mod

@ -0,0 +1,5 @@
module spargcom/gocart
go 1.16
require github.com/gorilla/mux v1.8.0

0
gocart/go.sum → spargcom/gocart/go.sum

0
gocart/gocart.go → spargcom/gocart/gocart.go

13
spargcom/gocart/rester/go.mod

@ -0,0 +1,13 @@
module spargcom/gocart/rest
go 1.16
require (
github.com/gorilla/mux v1.8.0
spargcom/gocart/database v0.0.0-00010101000000-000000000000
spargcom/gocart/domain v0.0.0-00010101000000-000000000000
)
replace spargcom/gocart/domain => ../domain
replace spargcom/gocart/database => ../database

4
spargcom/gocart/rester/go.sum

@ -0,0 +1,4 @@
github.com/go-sql-driver/mysql v1.5.0 h1:ozyZYNQW3x3HtqT1jira07DN2PArx2v7/mN66gGcHOs=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=

46
spargcom/gocart/rester/rest.go

@ -0,0 +1,46 @@
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"spargcom/gocart/database"
"spargcom/gocart/domain"
"github.com/gorilla/mux"
)
func main() {
r := mux.NewRouter()
r.HandleFunc("/packages", createPackagesHandler).Methods("POST")
http.ListenAndServe(":8081", r)
fmt.Println("running on localhost, Port 8081")
}
func createPackagesHandler(writer http.ResponseWriter, req *http.Request) {
body, err := ioutil.ReadAll(req.Body)
if err != nil {
writer.WriteHeader(http.StatusBadRequest)
}
var pk domain.Package
fmt.Println(body)
json.Unmarshal(body, &pk)
fmt.Println("Name = ", pk.Name)
res, err := database.CreatePackage(pk)
if err != nil {
writer.WriteHeader(http.StatusInternalServerError)
}
b, err := json.Marshal(res)
if err != nil {
fmt.Println("Error: ", err)
}
location := fmt.Sprintf("%s/%d", req.URL.String(), res.Id)
writer.Header().Set("Location:", location)
writer.Header().Set("Content-Type", "application/json")
writer.WriteHeader(http.StatusCreated)
writer.Write(b)
}

0
gocart/rester/rester.uxf → spargcom/gocart/rester/rester.uxf

Loading…
Cancel
Save