Skip to content
Snippets Groups Projects

Add basic application framework and example application to show interaction between events an NBI

Merged Ghost User requested to merge istaester/init-application-framework into develop
2 files
+ 161
15
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -4,6 +4,9 @@ import (
"code.fbi.h-da.de/danet/gosdn/controller/interfaces/networkdomain"
"code.fbi.h-da.de/danet/gosdn/controller/interfaces/rbac"
"code.fbi.h-da.de/danet/gosdn/controller/metrics"
"code.fbi.h-da.de/danet/gosdn/controller/topology"
"code.fbi.h-da.de/danet/gosdn/controller/topology/nodes"
"code.fbi.h-da.de/danet/gosdn/controller/topology/ports"
"github.com/prometheus/client_golang/prometheus"
log "github.com/sirupsen/logrus"
"google.golang.org/grpc/codes"
@@ -13,32 +16,48 @@ import (
var pndc networkdomain.PndStore
var userService rbac.UserService
var roleService rbac.RoleService
var topologyService topology.Service
var nodeService nodes.Service
var portService ports.Service
// NorthboundInterface is the representation of the
// gRPC services used provided.
type NorthboundInterface struct {
Pnd *pndServer
Core *core
Csbi *csbi
Sbi *sbiServer
Auth *Auth
User *User
Role *Role
Pnd *pndServer
Core *core
Csbi *csbi
Sbi *sbiServer
Auth *Auth
User *User
Role *Role
Topology *Topology
}
// NewNBI receives a PndStore and returns a new gRPC *NorthboundInterface
func NewNBI(pnds networkdomain.PndStore, users rbac.UserService, roles rbac.RoleService) *NorthboundInterface {
func NewNBI(
pnds networkdomain.PndStore,
users rbac.UserService,
roles rbac.RoleService,
topology topology.Service,
node nodes.Service,
port ports.Service,
) *NorthboundInterface {
pndc = pnds
userService = users
roleService = roles
topologyService = topology
nodeService = node
portService = port
return &NorthboundInterface{
Pnd: &pndServer{},
Core: &core{},
Csbi: &csbi{},
Sbi: &sbiServer{},
Auth: &Auth{},
User: &User{},
Role: &Role{},
Pnd: &pndServer{},
Core: &core{},
Csbi: &csbi{},
Sbi: &sbiServer{},
Auth: &Auth{},
User: &User{},
Role: &Role{},
Topology: &Topology{},
}
}
Loading