Emcee
32 строки · 940.0 Байт
1import Deployer
2import EmceeLogging
3import QueueCommunication
4import RESTInterfaces
5import RESTMethods
6import RESTServer
7
8public final class WorkersToUtilizeEndpoint: RESTEndpoint {
9public let path: RESTPath = RESTMethod.workersToUtilize
10public let requestIndicatesActivity = false
11
12private let logger: ContextualLogger
13private let service: WorkersToUtilizeService
14
15public init(
16logger: ContextualLogger,
17service: WorkersToUtilizeService
18) {
19self.logger = logger
20self.service = service
21}
22
23public func handle(payload: WorkersToUtilizePayload) throws -> WorkersToUtilizeResponse {
24logger.debug("Received workers to utilize payload: \(payload)")
25return .workersToUtilize(
26workerIds: service.workersToUtilize(
27initialWorkerIds: payload.workerIds,
28queueInfo: payload.queueInfo
29)
30)
31}
32}
33