From d0d6d2196222741def29137d182c85dd819eda4f Mon Sep 17 00:00:00 2001
From: Fabian Seidl <fabian.seidl@h-da.de>
Date: Fri, 16 Jun 2023 10:18:37 +0000
Subject: [PATCH] Application framework qol update

See merge request danet/gosdn!478
---
 application-framework/event/event.go |  7 ++++---
 controller/controller.go             | 11 +++++++++++
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/application-framework/event/event.go b/application-framework/event/event.go
index abce5b0d6..e3d01af9e 100644
--- a/application-framework/event/event.go
+++ b/application-framework/event/event.go
@@ -8,9 +8,10 @@ import (
 
 // Event is a event that can be published via the event service as payload.
 type Event struct {
-	ID       uuid.UUID `json:"id,omitempty"`
-	EntityID uuid.UUID `json:"entity_id,omitempty"`
-	Type     string    `json:"type,omitempty"`
+	ID                uuid.UUID         `json:"id,omitempty"`
+	EntityID          uuid.UUID         `json:"entity_id,omitempty"`
+	Type              string            `json:"type,omitempty"`
+	PathsAndValuesMap map[string]string `json:"paths_and_values,omitempty"` // Used to monitor updates happening on YANG paths of network elements.
 }
 
 func getEventFromPayload(payload []byte) (*Event, error) {
diff --git a/controller/controller.go b/controller/controller.go
index e45e9506f..33d92e4c3 100644
--- a/controller/controller.go
+++ b/controller/controller.go
@@ -297,6 +297,17 @@ func ensureDefaultRoleExists() error {
 			"/gosdn.networkelement.NetworkElementService/SubscribePath",
 			"/gosdn.plugin_internal.PluginInternalService/AvailablePlugins",
 			"/gosdn.plugin_internal.PluginInternalService/GetPluginSchema",
+			"/gosdn.app.AppService/Register",
+			"/gosdn.app.AppService/Deregister",
+			"/gosdn.configurationmanagement.ConfigurationManagementService/ExportSDNConfig",
+			"/gosdn.configurationmanagement.ConfigurationManagementService/ImportSDNConfig",
+			"/gosdn.topology.RoutingTableService/AddRoutingTable",
+			"/gosdn.topology.RoutingTableService/GetRoutes",
+			"/gosdn.topology.RoutingTableService/DeleteRoute",
+			"/gosdn.topology.TopologyService/AddLink",
+			"/gosdn.topology.TopologyService/GetTopology",
+			"/gosdn.topology.TopologyService/UpdateLink",
+			"/gosdn.topology.TopologyService/DeleteLink",
 		}))
 		if err != nil {
 			return err
-- 
GitLab