private void deployAllAtOnce()

in src/main/java/org/apache/maven/plugins/deploy/DeployMojo.java [214:247]


    private void deployAllAtOnce() {
        Map<RemoteRepository, Map<Integer, List<ProducedArtifact>>> flattenedRequests = new LinkedHashMap<>();
        // flatten requests, grouping by remote repository and number of retries
        for (Project reactorProject : session.getProjects()) {
            State state = getState(reactorProject);
            if (state == State.TO_BE_DEPLOYED) {
                ArtifactDeployerRequest request = (ArtifactDeployerRequest)
                        session.getPluginContext(reactorProject).get(ArtifactDeployerRequest.class.getName());
                flattenedRequests
                        .computeIfAbsent(request.getRepository(), r -> new LinkedHashMap<>())
                        .computeIfAbsent(request.getRetryFailedDeploymentCount(), i -> new ArrayList<>())
                        .addAll(request.getArtifacts());
            }
        }
        // Re-group all requests
        List<ArtifactDeployerRequest> requests = new ArrayList<>();
        for (Map.Entry<RemoteRepository, Map<Integer, List<ProducedArtifact>>> entry1 : flattenedRequests.entrySet()) {
            for (Map.Entry<Integer, List<ProducedArtifact>> entry2 :
                    entry1.getValue().entrySet()) {
                requests.add(ArtifactDeployerRequest.builder()
                        .session(session)
                        .repository(entry1.getKey())
                        .retryFailedDeploymentCount(entry2.getKey())
                        .artifacts(entry2.getValue())
                        .build());
            }
        }
        // Deploy
        if (!requests.isEmpty()) {
            requests.forEach(this::deploy);
        } else {
            getLog().info("No actual deploy requests");
        }
    }