From 31ee679efe2bfa54bcbdb2e704a75128fb817540 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Sterba?= <andre.sterba@stud.h-da.de>
Date: Thu, 23 Jun 2022 14:25:41 +0200
Subject: [PATCH] Adjust to upstream changes

---
 controller/topology/nodes/nodeStore.go        |  6 +++---
 controller/topology/ports/port.go             | 10 +++++++---
 controller/topology/ports/portService_test.go |  2 +-
 controller/topology/ports/portStore.go        |  6 +++---
 controller/topology/topologyStore.go          |  6 +++---
 5 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/controller/topology/nodes/nodeStore.go b/controller/topology/nodes/nodeStore.go
index 7bf3c4a56..675035ca4 100644
--- a/controller/topology/nodes/nodeStore.go
+++ b/controller/topology/nodes/nodeStore.go
@@ -121,7 +121,7 @@ func (s *DatabaseNodeStore) GetAll() ([]Node, error) {
 	if err != nil {
 		log.Printf("Failed marshalling %v", err)
 
-		return loadedNode, errors.ErrCouldNotMarshall{StoreName: s.storeName}
+		return loadedNode, errors.ErrCouldNotMarshall{Type: loadedNode, Err: err}
 	}
 
 	return loadedNode, nil
@@ -138,7 +138,7 @@ func (s *DatabaseNodeStore) Add(node Node) error {
 		InsertOne(ctx, node)
 	if err != nil {
 		log.Printf("Could not add Node: %v", err)
-		return errors.ErrCouldNotCreate{StoreName: s.storeName}
+		return errors.ErrCouldNotCreate{Identifier: node.ID, Type: node, Err: err}
 	}
 
 	return nil
@@ -169,7 +169,7 @@ func (s *DatabaseNodeStore) Update(node Node) error {
 	if err != nil {
 		log.Printf("Could not update Node: %v", err)
 
-		return errors.ErrCouldNotUpdate{StoreName: s.storeName}
+		return errors.ErrCouldNotUpdate{Identifier: node.ID, Type: node, Err: err}
 	}
 
 	return nil
diff --git a/controller/topology/ports/port.go b/controller/topology/ports/port.go
index 9062f1e51..466292408 100644
--- a/controller/topology/ports/port.go
+++ b/controller/topology/ports/port.go
@@ -1,11 +1,15 @@
 package ports
 
-import "github.com/google/uuid"
+import (
+	"code.fbi.h-da.de/danet/gosdn/controller/topology/ports/configuration"
+	"github.com/google/uuid"
+)
 
 // Port is a representation of physical port on a network element
 type Port struct {
-	ID   uuid.UUID `bson:"_id"`
-	Name string    `bson:"name,omitempty"`
+	ID            uuid.UUID `bson:"_id"`
+	Name          string    `bson:"name,omitempty"`
+	Configuration configuration.IPConfig
 }
 
 // GetID returns the id of a port
diff --git a/controller/topology/ports/portService_test.go b/controller/topology/ports/portService_test.go
index 37dc35457..c02309fda 100644
--- a/controller/topology/ports/portService_test.go
+++ b/controller/topology/ports/portService_test.go
@@ -166,7 +166,7 @@ func TestPortService_Update(t *testing.T) {
 				t.Errorf("PortService.Update() error = %v, wantErr %v", err, tt.wantErr)
 			}
 
-			updatedPort, err := p.Get(store.Query(tt.args.port))
+			updatedPort, err := p.Get(store.Query{ID: tt.args.port.ID})
 			if err != nil {
 				t.Errorf("PortService.Get() failed %v", err)
 			}
diff --git a/controller/topology/ports/portStore.go b/controller/topology/ports/portStore.go
index cc3ea9e79..bb32c3111 100644
--- a/controller/topology/ports/portStore.go
+++ b/controller/topology/ports/portStore.go
@@ -122,7 +122,7 @@ func (s *DatabasePortStore) GetAll() ([]Port, error) {
 	if err != nil {
 		log.Printf("Failed marshalling %v", err)
 
-		return loadedPort, errors.ErrCouldNotMarshall{StoreName: s.storeName}
+		return loadedPort, errors.ErrCouldNotMarshall{Type: loadedPort, Err: err}
 	}
 
 	return loadedPort, nil
@@ -139,7 +139,7 @@ func (s *DatabasePortStore) Add(port Port) error {
 		InsertOne(ctx, port)
 	if err != nil {
 		log.Printf("Could not add Port: %v", err)
-		return errors.ErrCouldNotCreate{StoreName: s.storeName}
+		return errors.ErrCouldNotCreate{Identifier: port.ID, Type: port, Err: err}
 	}
 
 	return nil
@@ -170,7 +170,7 @@ func (s *DatabasePortStore) Update(port Port) error {
 	if err != nil {
 		log.Printf("Could not update Port: %v", err)
 
-		return errors.ErrCouldNotUpdate{StoreName: s.storeName}
+		return errors.ErrCouldNotUpdate{Identifier: port.ID, Type: port, Err: err}
 	}
 
 	return nil
diff --git a/controller/topology/topologyStore.go b/controller/topology/topologyStore.go
index df9b8e5fb..6414b1a69 100644
--- a/controller/topology/topologyStore.go
+++ b/controller/topology/topologyStore.go
@@ -122,7 +122,7 @@ func (s *DatabaseTopologyStore) GetAll() ([]links.Link, error) {
 	if err != nil {
 		log.Printf("Failed marshalling %v", err)
 
-		return loadedTopology, errors.ErrCouldNotMarshall{StoreName: s.storeName}
+		return loadedTopology, errors.ErrCouldNotMarshall{Type: loadedTopology, Err: err}
 	}
 
 	return loadedTopology, nil
@@ -139,7 +139,7 @@ func (s *DatabaseTopologyStore) Add(link links.Link) error {
 		InsertOne(ctx, link)
 	if err != nil {
 		log.Printf("Could not add Link: %v", err)
-		return errors.ErrCouldNotCreate{StoreName: s.storeName}
+		return errors.ErrCouldNotCreate{Identifier: link.ID, Type: link, Err: err}
 	}
 
 	return nil
@@ -170,7 +170,7 @@ func (s *DatabaseTopologyStore) Update(linkToUpdate links.Link) error {
 	if err != nil {
 		log.Printf("Could not update link: %v", err)
 
-		return errors.ErrCouldNotUpdate{StoreName: s.storeName}
+		return errors.ErrCouldNotUpdate{Identifier: linkToUpdate.ID, Type: linkToUpdate, Err: err}
 	}
 
 	return nil
-- 
GitLab