private UpdateHostResponse resume(RestApi.RequestContext context) {
        String hostNameString = context.pathParameters().getStringOrThrow("hostname");
        HostName hostName = new HostName(hostNameString);
        try {
            orchestrator.resume(hostName);
        } catch (HostNameNotFoundException e) {
            log.log(Level.FINE, () -> "Host not found: " + hostName);
            throw new RestApiException.NotFound(e);
        } catch (UncheckedTimeoutException e) {
            log.log(Level.FINE, () -> "Failed to resume " + hostName + ": " + e.getMessage());
            throw restApiExceptionFromTimeout("resume", hostName, e);
        } catch (HostStateChangeDeniedException e) {
            log.log(Level.FINE, () -> "Failed to resume " + hostName + ": " + e.getMessage());
            throw restApiExceptionWithDenialReason("resume", hostName, e);
        }
        return new UpdateHostResponse(hostName.s(), null);
    }
Resume normal operations for all services on a host that has previously been allowed suspension.

If the host is already registered as running normal operations, then resume() is idempotent
and will succeed.
orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostRequestHandler.java