* calculating deltas.
*/
private long connectTimeReal;
- private long duration;
+ private long duration = -1L;
private long holdingStartTime; // The time when the Connection last transitioned
// into HOLDING
}
break;
case DISCONNECTED:
- duration = SystemClock.elapsedRealtime() - connectTimeReal;
+ duration = getDurationMillis();
disconnectTime = System.currentTimeMillis();
break;
case HOLDING:
public long getDurationMillis() {
if (connectTimeReal == 0) {
return 0;
- } else if (duration == 0) {
+ } else if (duration < 0) {
return SystemClock.elapsedRealtime() - connectTimeReal;
} else {
return duration;