diff --git a/client/client.go b/client/client.go index da13c8ef3ca33e1788a7b9560e0ade4e46b5f6f6..06ab7d0f9a35a7d1070711496d6ca1cb892a258f 100644 --- a/client/client.go +++ b/client/client.go @@ -1 +1 @@ -package client +package main diff --git a/helper/types.go b/helper/types.go index 258e5cf460094668adacc8faec698625c903072f..1b905cbc111894d5425909f53c24ac7efacf7417 100644 --- a/helper/types.go +++ b/helper/types.go @@ -2,6 +2,11 @@ package helper import "fmt" +type NodeWrapper struct { + Resource Resource `yaml:"resource"` + Stora0lwe +} + type Node struct { Resource Resource `json:"resource"` Storage Storage `json:"storage"` @@ -30,10 +35,14 @@ func (se StorageElement) String() string { } func (s Storage) String() string { - output := "Storage{\n" + output := "Storage{" for _, se := range s.Data { - output += fmt.Sprintf("%s\n", se.String()) + output += fmt.Sprintf("\n\t\t%s", se.String()) } - output += "}" + output += "\n\t}\n" return output } + +func (n Node) String() string { + return fmt.Sprintf("Node{\n\t%s,\n\t%s}\n", n.Resource, n.Storage) +} diff --git a/server/neighbour-1.yaml b/server/neighbour-1.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5c7771e3f1924dfbcafcefb37ef2163668058509 --- /dev/null +++ b/server/neighbour-1.yaml @@ -0,0 +1,13 @@ +resource: + name: "a" + address: "127.0.0.10" +storage: + data: + - id: 50 + resource: + name: "a" + address: "127.0.0.10" + - id: 10 + resource: + name: "b" + address: "127.0.0.11" \ No newline at end of file diff --git a/server/neighbour-2.yaml b/server/neighbour-2.yaml new file mode 100644 index 0000000000000000000000000000000000000000..aab840bbf16e81d0e9be70ca434714ed5352bd3c --- /dev/null +++ b/server/neighbour-2.yaml @@ -0,0 +1,11 @@ +name: "b" +address: "127.0.0.11" +storage: + - id: 10 + resource: + name: "b" + address: "127.0.0.11" + - id: 15 + resource: + name: "c" + address: "127.0.0.12" \ No newline at end of file diff --git a/server/neighbour-3.yaml b/server/neighbour-3.yaml new file mode 100644 index 0000000000000000000000000000000000000000..41426a5a26a92f0e08506c7282a1d04bba63c472 --- /dev/null +++ b/server/neighbour-3.yaml @@ -0,0 +1,11 @@ +name: "c" +address: "127.0.0.12" +storage: + - id: 15 + resource: + name: "c" + address: "127.0.0.12" + - id: 50 + resource: + name: "a" + address: "127.0.0.10" \ No newline at end of file diff --git a/server/neighbour-x.yaml b/server/neighbour-x.yaml new file mode 100644 index 0000000000000000000000000000000000000000..229fb9f0329d944e6e268e5b9d9a9b9f45da8d21 --- /dev/null +++ b/server/neighbour-x.yaml @@ -0,0 +1,10 @@ +id: x +address: "127.0.0.x" +neighbours: + - id: x + address: "127.0.0.x" + edge_weight: 0 + + - id: x + address: "127.0.0.x" + edge_weight: 0 \ No newline at end of file diff --git a/server/server b/server/server new file mode 100755 index 0000000000000000000000000000000000000000..40dcd61d5d055bb3056bdaf34a758835c51f02bc Binary files /dev/null and b/server/server differ diff --git a/server/server.go b/server/server.go index e60c2a82adc9fde6d92af0be80f872e0995d7d03..2503233edb645d75bfad9d97c10103dc3351235e 100644 --- a/server/server.go +++ b/server/server.go @@ -1,4 +1,4 @@ -package server +package main import ( "fmt" @@ -6,6 +6,26 @@ import ( ) func main() { + //read arguments passed to the program + //./server <port> <config_number> <mode> + // port is the port the server will listen on + // config_number represents de number of the neighbour-x.yaml file to load + // mode is INIT or WAIT (INIT for the server that will run the search, WAIT for the servers that will listen) + + //initialize socket connection + //if INIT + //run the search algorithm and send message to the servers + //if WAIT + //wait and listen for new connections + + debugTypesPrint() +} + +func parseNodeConfig() { + +} + +func debugTypesPrint() { resource := helper.Resource{ Name: "a", Address: "127.0.0.10", @@ -14,13 +34,22 @@ func main() { Id: 15, Resource: resource, } + storageElement2 := helper.StorageElement{ + Id: 13, + Resource: resource, + } - elements := make([]helper.StorageElement, 1) + elements := make([]helper.StorageElement, 0) elements = append(elements, storageElement) + elements = append(elements, storageElement2) + + storage := helper.Storage{ + Data: elements, + } node := helper.Node{ Resource: resource, - Storage: helper.Storage{Data: elements}, + Storage: storage, } - fmt.Printf(node) + fmt.Printf(node.String()) }