func mergePluginEvents()

in pkg/plugin/predicates/predicate_manager.go [88:110]


func mergePluginEvents(actionMap map[framework.EventResource]framework.ActionType, events []framework.ClusterEventWithHint) {
	if _, ok := actionMap[framework.WildCard]; ok {
		// already registered for all events; skip further processing
		return
	}
	for _, event := range events {
		if event.Event.IsWildCard() {
			// clear existing entries and add a wildcard entry
			for k := range actionMap {
				delete(actionMap, k)
			}
			actionMap[framework.WildCard] = framework.All
			return
		}
		action, ok := actionMap[event.Event.Resource]
		if !ok {
			action = event.Event.ActionType
		} else {
			action |= event.Event.ActionType
		}
		actionMap[event.Event.Resource] = action
	}
}