From 0b302e41abc055819c77c97a65af801cbdba470e Mon Sep 17 00:00:00 2001 From: "ivan.rigo" <ivan.rigo@etu.hesge.ch> Date: Wed, 30 Nov 2022 16:30:11 +0100 Subject: [PATCH] Added Yaml, need more fix and doc --- web-service-gin/Gnutella.go | 46 +++++++++++++++++++++++++++---------- web-service-gin/go.mod | 1 + web-service-gin/go.sum | 2 ++ 3 files changed, 37 insertions(+), 12 deletions(-) diff --git a/web-service-gin/Gnutella.go b/web-service-gin/Gnutella.go index aeac7b5..c9fd41c 100644 --- a/web-service-gin/Gnutella.go +++ b/web-service-gin/Gnutella.go @@ -11,10 +11,24 @@ import ( "sync" "github.com/gin-gonic/gin" + "gopkg.in/yaml.v2" ) +type nodeData struct { + ID int `yaml:"id"` + Address string `yaml:"address"` + Neighbours []Neighbors `yaml:"neighbors"` +} + +type Neighbors struct { + ID int `yaml:"id"` + Address string `yaml:"address"` +} + +var data nodeData var storage []string var idServ string +var addressCur string var transmitter int var msgId = 0 var err error @@ -123,25 +137,33 @@ func foundReq(c *gin.Context) { func printErr(err error) { if err != nil { log.Fatal(err) + os.Exit(1) } } func main() { - idServ = os.Args[1] - - nbIdServ, err := strconv.Atoi(idServ) - files, err := ioutil.ReadDir("Storage" + idServ + "/") + neighborsFile := os.Args[1] + idServ = os.Args[2] + buf, err := ioutil.ReadFile(neighborsFile) + err = yaml.Unmarshal(buf, &data) printErr(err) + addressCur = data.Address - for _, file := range files { - storage = append(storage, file.Name()) - } + /* + nbIdServ, err := strconv.Atoi(idServ) + files, err := ioutil.ReadDir("Storage" + idServ + "/") + printErr(err) + + for _, file := range files { + storage = append(storage, file.Name()) + } - router := gin.Default() - router.GET("/initReq/:tlv/:ressource", initReq) - router.GET("/req/:transmitter/:tlv/:msgId/:ressource", receiveReq) - router.GET("/foundReq/:finder/:ressource", foundReq) + router := gin.Default() + router.GET("/initReq/:tlv/:ressource", initReq) + router.GET("/req/:transmitter/:tlv/:msgId/:ressource", receiveReq) + router.GET("/foundReq/:finder/:ressource", foundReq) - router.Run("localhost:" + strconv.Itoa(basePort+nbIdServ)) + router.Run("localhost:" + strconv.Itoa(basePort+nbIdServ)) + */ } diff --git a/web-service-gin/go.mod b/web-service-gin/go.mod index eb0f396..5797fc8 100644 --- a/web-service-gin/go.mod +++ b/web-service-gin/go.mod @@ -23,4 +23,5 @@ require ( golang.org/x/text v0.3.6 // indirect google.golang.org/protobuf v1.28.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/web-service-gin/go.sum b/web-service-gin/go.sum index c81df80..68f629f 100644 --- a/web-service-gin/go.sum +++ b/web-service-gin/go.sum @@ -73,3 +73,5 @@ gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -- GitLab