Refactor MessageTracker 11/36511/5
authorRobert Varga <rovarga@cisco.com>
Mon, 21 Mar 2016 19:34:12 +0000 (20:34 +0100)
committerTom Pantelis <tpanteli@brocade.com>
Tue, 29 Mar 2016 22:07:18 +0000 (22:07 +0000)
commit2e75f2a8df84ff50d2b608c3346978d81378ee98
tree3cc749537d4dce206c1f5f373aa479dbf95cfcf5
parent93c17c55ca0c3690d77c96cdfed91b6f186fe56a
Refactor MessageTracker

This patch updates MessageTracker implementation with the following:
- lower overhead when dealing with StopWatch under normal conditions
- prevent Context from being instantiated from the outside
- use a Ticker instance for reliable testing
- use Stopwatch.isRunning() instead of explicit done/enable boolean
- properly reset interval timer when expected message is received
- add explicit @NotThreadSafe and @Beta annotations
- move currentMessage to CurrentMessageContext

Change-Id: Idd553a39a8fb885a5c05e391cb4ae45384a59f07
Signed-off-by: Robert Varga <rovarga@cisco.com>
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/common/actor/MessageTracker.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/Shard.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/common/actor/MessageTrackerTest.java