Emcee
19 строк · 742.0 Байт
1import DateProvider
2import Foundation
3
4internal final class AfterPeriodOfInactivityTerminationController: BaseAutomaticTerminationController, CustomStringConvertible {
5private let inactivityInterval: TimeInterval
6
7public init(dateProvider: DateProvider, inactivityInterval: TimeInterval) {
8self.inactivityInterval = inactivityInterval
9super.init(dateProvider: dateProvider)
10}
11
12override var isTerminationAllowed: Bool {
13return dateProvider.currentDate() > lastActivityDate.currentValue().addingTimeInterval(inactivityInterval)
14}
15
16var description: String {
17return "<AfterPeriodOfInactivity, \(isTerminationAllowed ? "termination allowed" : "termination not alowed")>"
18}
19}
20