blob: 7aec38f44aa1b7637c00a180226761ecc30511a7 [file] [log] [blame]
Brian O'Connorc67f9fa2014-08-07 18:17:46 -07001package net.floodlightcontroller.debugevent;
2
3/**
4 * eventUPdater is used to log events for pre-registered events.
5 */
6public interface IEventUpdater<T> {
7
8 /**
9 * Logs the instance of the event thread-locally. Flushing to the global
10 * circular buffer for this event is delayed resulting in better performance.
11 * This method should typically be used by those events that happen in the
12 * packet processing pipeline
13 *
14 * @param event an instance of the user-defined event of type T
15 */
16 public void updateEventNoFlush(T event);
17
18 /**
19 * Logs the instance of the event thread-locally and immediated flushes
20 * to the global circular buffer for this event.
21 * This method should typically be used by those events that happen
22 * outside the packet processing pipeline
23 *
24 * @param event an instance of the user-defined event of type T
25 */
26 public void updateEventWithFlush(T event);
27
28
29
30}