static boolean matches()

in src/main/java/org/apache/sling/feature/analyser/task/impl/CheckFeatureId.java [73:92]


    static boolean matches(ArtifactId artifactId, ArtifactId expectedArtifactId) {
        if (!expectedArtifactId.getGroupId().equals(artifactId.getGroupId()) && !expectedArtifactId.getGroupId().equals("*")) {
            return false;
        }
        if (!expectedArtifactId.getArtifactId().equals(artifactId.getArtifactId()) && !expectedArtifactId.getArtifactId().equals("*")) {
            return false;
        }
        if (!expectedArtifactId.getVersion().equals(artifactId.getVersion()) && !expectedArtifactId.getVersion().equals("*")) {
            return false;
        }
        if (!expectedArtifactId.getType().equals(artifactId.getType()) && !expectedArtifactId.getType().equals("*")) {
            return false;
        }
        // classifier is optional
        if ( (expectedArtifactId.getClassifier() == null && artifactId.getClassifier() != null) || 
             (expectedArtifactId.getClassifier() != null && !expectedArtifactId.getClassifier().equals(artifactId.getClassifier()) && !expectedArtifactId.getClassifier().equals("*"))) {
            return false;
        }
        return true;
    }