forked from FlexSNR/l2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
notificationMgr.go
33 lines (28 loc) · 927 Bytes
/
notificationMgr.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package asicdMgr
import (
"l2/lacp/server"
"utils/commonDefs"
)
type NotificationHdl struct {
Server *server.LAServer
}
func initAsicdNotification() commonDefs.AsicdNotification {
nMap := make(commonDefs.AsicdNotification)
nMap = commonDefs.AsicdNotification{
commonDefs.NOTIFY_L2INTF_STATE_CHANGE: true,
commonDefs.NOTIFY_VLAN_CREATE: true,
commonDefs.NOTIFY_VLAN_DELETE: true,
commonDefs.NOTIFY_VLAN_UPDATE: true,
commonDefs.NOTIFY_LAG_CREATE: true,
commonDefs.NOTIFY_LAG_DELETE: true,
commonDefs.NOTIFY_LAG_UPDATE: true,
}
return nMap
}
func NewNotificationHdl(server *server.LAServer) (commonDefs.AsicdNotificationHdl, commonDefs.AsicdNotification) {
nMap := initAsicdNotification()
return &NotificationHdl{server}, nMap
}
func (nHdl *NotificationHdl) ProcessNotification(msg commonDefs.AsicdNotifyMsg) {
nHdl.Server.AsicdSubSocketCh <- msg
}