String determineVersionViaApplicationEnvironment()

in core/container/src/main/java/org/wildfly/swarm/internal/ArtifactManager.java [173:214]


    String determineVersionViaApplicationEnvironment(String groupId, String artifactId, String packaging, String classifier) throws IOException {
        ApplicationEnvironment env = ApplicationEnvironment.get();

        if (classifier.isEmpty()) {
            classifier = null;
        }

        for (String dep : env.getDependencies()) {
            String[] parts = dep.split(COLON);

            String depGroupId = parts[0];
            String depArtifactId = parts[1];
            String depPackaging = parts[2];
            String depVersion = null;
            String depClassifier = null;
            if (parts.length == 4) {
                depVersion = parts[3];
            } else {
                depClassifier = parts[3];
                depVersion = parts[4];
            }

            if (groupId.equals(depGroupId)) {
                if (artifactId.equals(depArtifactId)) {
                    if (packaging.equals(depPackaging)) {
                        if (classifier == null) {
                            if (depClassifier == null) {
                                return depVersion;
                            }
                        } else {
                            if (depClassifier != null && classifier.equals(depClassifier)) {
                                return depVersion;
                            }
                        }
                    }
                }
            }

        }

        return null;
    }