Emcee

Форк
0
/
ToggleWorkersSharingEndpoint.swift 
32 строки · 1.0 Кб
1
import Dispatch
2
import DistWorkerModels
3
import Foundation
4
import EmceeLogging
5
import RequestSender
6
import RESTInterfaces
7
import RESTMethods
8
import RESTServer
9
import QueueCommunication
10
import WorkerAlivenessProvider
11

12
public final class ToggleWorkersSharingEndpoint: RESTEndpoint {
13
    private let autoupdatingWorkerPermissionProvider: AutoupdatingWorkerPermissionProvider
14
    
15
    public let path: RESTPath = RESTMethod.toggleWorkersSharing
16
    public let requestIndicatesActivity = false
17
    
18
    public init(autoupdatingWorkerPermissionProvider: AutoupdatingWorkerPermissionProvider) {
19
        self.autoupdatingWorkerPermissionProvider = autoupdatingWorkerPermissionProvider
20
    }
21
    
22
    public func handle(payload: ToggleWorkersSharingPayload) throws -> VoidPayload {
23
        switch payload.status {
24
        case .disabled:
25
            autoupdatingWorkerPermissionProvider.stopUpdatingAndRestoreDefaultConfig()
26
        case .enabled:
27
            autoupdatingWorkerPermissionProvider.startUpdating()
28
        }
29
        
30
        return VoidPayload()
31
    }
32
}
33

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

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

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

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