diff --git a/northbound/server/pnd.go b/northbound/server/pnd.go index 887ded7dccc5ef9adfb069b403cf109c4e34f092..897102483d8e6fce670caba84f2bdd93c59b4a7e 100644 --- a/northbound/server/pnd.go +++ b/northbound/server/pnd.go @@ -8,8 +8,6 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/status" - "code.fbi.h-da.de/cocsn/gosdn/interfaces/device" - ppb "code.fbi.h-da.de/cocsn/api/go/gosdn/pnd" spb "code.fbi.h-da.de/cocsn/api/go/gosdn/southbound" "code.fbi.h-da.de/cocsn/gosdn/interfaces/networkdomain" @@ -211,44 +209,46 @@ func fillSbis(pnd networkdomain.NetworkDomain, all bool, sid ...string) ([]*spb. func fillOnds(pnd networkdomain.NetworkDomain, all bool, did ...string) ([]*ppb.OrchestratedNetworkingDevice, error) { var ondList []uuid.UUID + var onds []*ppb.OrchestratedNetworkingDevice + // all decides if a client wants all devices or only a single one switch all { case true: ondList = pnd.Devices() + onds = make([]*ppb.OrchestratedNetworkingDevice, len(ondList)) default: - var err error if len(did) == 0 { - return nil, &errors.ErrInvalidParameters{ + err := &errors.ErrInvalidParameters{ Func: fillOnds, Param: "length of 'did' cannot be '0' when 'all' is set to 'false'", } - } - ondList, err = stringToUUID(did) - if err != nil { log.Error(err) - return nil, status.Errorf(codes.Aborted, "%v", err) + + return nil, err } + + onds = make([]*ppb.OrchestratedNetworkingDevice, 1) } - onds := make([]*ppb.OrchestratedNetworkingDevice, len(ondList)) - for i, id := range ondList { - d, err := pnd.GetDevice(id.String()) + for i, id := range did { + d, err := pnd.GetDevice(id) if err != nil { log.Error(err) return nil, status.Errorf(codes.Aborted, "%v", err) } cfg := ygot.GNMINotificationsConfig{} - dev, err := ygot.TogNMINotifications(d.(device.Device).Model(), time.Now().UnixNano(), cfg) + dev, err := ygot.TogNMINotifications(d.Model(), time.Now().UnixNano(), cfg) if err != nil { log.Error(err) return nil, status.Errorf(codes.Aborted, "%v", err) } onds[i] = &ppb.OrchestratedNetworkingDevice{ - Id: id.String(), - Name: "", + Id: id, + Name: d.Name(), Device: dev, } } + return onds, nil } diff --git a/nucleus/store.go b/nucleus/store.go index 631da74785b9a381530f485ee47f0931b1001e2f..3742c1ea89495a061512b45d0d15498aba4484df 100644 --- a/nucleus/store.go +++ b/nucleus/store.go @@ -224,7 +224,7 @@ func (s DeviceStore) GetDevice(id uuid.UUID, parseErrors ...error) (device.Devic } } log.WithFields(log.Fields{ - "uuid": id, + "uuid": foundID, "name": d.Name(), }).Debug("device was accessed")