@@ -131,15 +131,27 @@ func (er *EventRouter) Run(stopCh <-chan struct{}) {
131
131
132
132
// addEvent is called when an event is created, or during the initial list
133
133
func (er * EventRouter ) addEvent (obj interface {}) {
134
- e := obj .(* v1.Event )
134
+ e , ok := obj .(* v1.Event )
135
+ if ! ok {
136
+ glog .Error ("Given object '%v' not v1.Event" , obj )
137
+ return
138
+ }
135
139
prometheusEvent (e )
136
140
er .eSink .UpdateEvents (e , nil )
137
141
}
138
142
139
143
// updateEvent is called any time there is an update to an existing event
140
144
func (er * EventRouter ) updateEvent (objOld interface {}, objNew interface {}) {
141
- eOld := objOld .(* v1.Event )
142
- eNew := objNew .(* v1.Event )
145
+ eOld , ok := objOld .(* v1.Event )
146
+ if ! ok {
147
+ glog .Error ("Given object '%v' not v1.Event" , objOld )
148
+ return
149
+ }
150
+ eNew , ok := objNew .(* v1.Event )
151
+ if ! ok {
152
+ glog .Error ("Given object '%v' not v1.Event" , objNew )
153
+ return
154
+ }
143
155
prometheusEvent (eNew )
144
156
er .eSink .UpdateEvents (eNew , eOld )
145
157
}
@@ -194,7 +206,11 @@ func prometheusEvent(event *v1.Event) {
194
206
195
207
// deleteEvent should only occur when the system garbage collects events via TTL expiration
196
208
func (er * EventRouter ) deleteEvent (obj interface {}) {
197
- e := obj .(* v1.Event )
209
+ e , ok := obj .(* v1.Event )
210
+ if ! ok {
211
+ glog .Error ("Given object '%v' not v1.Event" , obj )
212
+ return
213
+ }
198
214
// NOTE: This should *only* happen on TTL expiration there
199
215
// is no reason to push this to a sink
200
216
glog .V (5 ).Infof ("Event Deleted from the system:\n %v" , e )
0 commit comments