remainingWarningTime fix. code comment cleanups.

This commit is contained in:
Kyle Matthew Hedden 2023-01-17 12:10:43 -05:00
parent 16d169c46c
commit 1f377dfb51
2 changed files with 5 additions and 5 deletions

View File

@ -30,7 +30,7 @@
#pragma mark - functions to override #pragma mark - functions to override
/// Can override to provide a time until the warning shows in seconds. Set to 0 if there should be no warning. Default is 0 /// Can override to provide a time until the warning shows in seconds. Set to 0 if there should be no warning. Default is 0.
- (NSTimeInterval)timeUntilWarning; - (NSTimeInterval)timeUntilWarning;
/// Can override to provide a time until the timeout happens in seconds. If there is a warning, then this value is used after the warning happens. Set to 0 if there should be no timeout. Default is 0. /// Can override to provide a time until the timeout happens in seconds. If there is a warning, then this value is used after the warning happens. Set to 0 if there should be no timeout. Default is 0.

View File

@ -104,7 +104,7 @@
} }
- (BOOL)isWarningEnabled { - (BOOL)isWarningEnabled {
return !fequal(0, self.secondsUntilWarning); return [self isTimeoutEnabled] && !fequal(0, self.secondsUntilWarning);
} }
- (BOOL)isTimeoutEnabled { - (BOOL)isTimeoutEnabled {
@ -112,7 +112,7 @@
} }
- (NSTimeInterval)remainingTimeUntilWarning { - (NSTimeInterval)remainingTimeUntilWarning {
if (self.timeTimerStarted < 0 || ![self isTimeoutEnabled]) { if (self.timeTimerStarted < 0 || ![self isWarningEnabled]) {
return 0; return 0;
} }
return self.secondsUntilWarning - self.timeSinceStart; return self.secondsUntilWarning - self.timeSinceStart;
@ -160,7 +160,7 @@
self.sessionTimer = [NSTimer scheduledTimerWithTimeInterval:[self remainingTimeUntiTimeout] target:self selector:@selector(sessionTimeout:) userInfo:nil repeats:NO]; self.sessionTimer = [NSTimer scheduledTimerWithTimeInterval:[self remainingTimeUntiTimeout] target:self selector:@selector(sessionTimeout:) userInfo:nil repeats:NO];
MVMCoreLog(@"Session timeout will fire at: %@", self.sessionTimer.fireDate); MVMCoreLog(@"Session timeout will fire at: %@", self.sessionTimer.fireDate);
// Only setup a warning timer if there is a timout timer. Note based on scheduledTimerWithTimeInterval, if the remaining time < 0, this will fire near immediately. // Only setup a warning timer if there is a timeout timer. Note based on scheduledTimerWithTimeInterval, if the remaining time < 0, this will fire near immediately.
if (self.isWarningEnabled && ![self.sessionWarningTimer isValid]) { if (self.isWarningEnabled && ![self.sessionWarningTimer isValid]) {
self.sessionWarningTimer = [NSTimer scheduledTimerWithTimeInterval:[self remainingTimeUntilWarning] target:self selector:@selector(sessionTimeoutWarning) userInfo:nil repeats:NO]; self.sessionWarningTimer = [NSTimer scheduledTimerWithTimeInterval:[self remainingTimeUntilWarning] target:self selector:@selector(sessionTimeoutWarning) userInfo:nil repeats:NO];
MVMCoreLog(@"Session warning will fire at: %@", self.sessionWarningTimer.fireDate); MVMCoreLog(@"Session warning will fire at: %@", self.sessionWarningTimer.fireDate);
@ -211,7 +211,7 @@
- (void)revalidateSessionTimestamp { - (void)revalidateSessionTimestamp {
if (self.sessionBeingTimed || self.sessionTimedOut) { if (self.sessionBeingTimed || self.sessionTimedOut) {
if (self.isTimeoutEnabled && self.remainingTimeUntiTimeout < 0) { if (self.isTimeoutEnabled && self.remainingTimeUntiTimeout < 0) {
// Timeout if we are passed the warning. // Force a timeout if we are passed the timeout interval.
[self sessionTimeout:YES]; [self sessionTimeout:YES];
} else { } else {
[self resumeSessionTimer]; [self resumeSessionTimer];