public int checkDeploys() { final List<SingularityPendingDeploy> pendingDeploys = deployManager.getPendingDeploys(); final List<SingularityDeployMarker> cancelDeploys = deployManager.getCancelDeploys(); final List<SingularityUpdatePendingDeployRequest> updateRequests = deployManager.getPendingDeployUpdates(); if (pendingDeploys.isEmpty() && cancelDeploys.isEmpty()) { return 0; } final Map<SingularityPendingDeploy, SingularityDeployKey> pendingDeployToKey = SingularityDeployKey.fromPendingDeploys(pendingDeploys); final Map<SingularityDeployKey, SingularityDeploy> deployKeyToDeploy = deployManager.getDeploysForKeys(pendingDeployToKey.values()); pendingDeploys.parallelStream().forEach((pendingDeploy) -> { lock.runWithRequestLock(() -> { checkDeploy(pendingDeploy, cancelDeploys, pendingDeployToKey, deployKeyToDeploy, updateRequests); }, pendingDeploy.getDeployMarker().getRequestId(), getClass().getSimpleName()); }); cancelDeploys.forEach(deployManager::deleteCancelDeployRequest); updateRequests.forEach(deployManager::deleteUpdatePendingDeployRequest); return pendingDeploys.size(); }
public int checkDeploys() { final List<SingularityPendingDeploy> pendingDeploys = deployManager.getPendingDeploys(); final List<SingularityDeployMarker> cancelDeploys = deployManager.getCancelDeploys(); final List<SingularityUpdatePendingDeployRequest> updateRequests = deployManager.getPendingDeployUpdates(); if (pendingDeploys.isEmpty() && cancelDeploys.isEmpty()) { return 0; } final Map<SingularityPendingDeploy, SingularityDeployKey> pendingDeployToKey = SingularityDeployKey.fromPendingDeploys(pendingDeploys); final Map<SingularityDeployKey, SingularityDeploy> deployKeyToDeploy = deployManager.getDeploysForKeys(pendingDeployToKey.values()); pendingDeploys.parallelStream().forEach((pendingDeploy) -> { lock.runWithRequestLock(() -> { checkDeploy(pendingDeploy, cancelDeploys, pendingDeployToKey, deployKeyToDeploy, updateRequests); }, pendingDeploy.getDeployMarker().getRequestId(), getClass().getSimpleName()); }); cancelDeploys.forEach(deployManager::deleteCancelDeployRequest); updateRequests.forEach(deployManager::deleteUpdatePendingDeployRequest); return pendingDeploys.size(); }