Emcee

Форк
0
/
WorkerSpecificConfiguration.swift 
29 строк · 1.2 Кб
1
import Foundation
2
import QueueModels
3

4
public struct WorkerSpecificConfiguration: Codable, Hashable {
5
    public let numberOfSimulators: UInt
6
    public let maximumCacheSize: Int
7
    public let maximumCacheTTL: TimeInterval
8

9
    public init(
10
        numberOfSimulators: UInt,
11
        maximumCacheSize: Int,
12
        maximumCacheTTL: TimeInterval
13
    ) {
14
        self.numberOfSimulators = numberOfSimulators
15
        self.maximumCacheSize = maximumCacheSize
16
        self.maximumCacheTTL = maximumCacheTTL
17
    }
18
    
19
    public init(from decoder: Decoder) throws {
20
        let container = try decoder.container(keyedBy: CodingKeys.self)
21
        
22
        numberOfSimulators = try container.decodeIfPresent(UInt.self, forKey: .numberOfSimulators) ??
23
        WorkerSpecificConfigurationDefaultValues.defaultWorkerConfiguration.numberOfSimulators
24
        maximumCacheSize = try container.decodeIfPresent(Int.self, forKey: .maximumCacheSize) ??
25
        WorkerSpecificConfigurationDefaultValues.defaultWorkerConfiguration.maximumCacheSize
26
        maximumCacheTTL = try container.decodeIfPresent(TimeInterval.self, forKey: .maximumCacheTTL) ??
27
        WorkerSpecificConfigurationDefaultValues.defaultWorkerConfiguration.maximumCacheTTL
28
    }
29
}
30

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.