protected List getComponentIdentifiers()

in build-tools/src/main/java/co/elastic/otel/android/compilation/tools/tasks/BaseTask.java [29:56]


    protected List<ComponentIdentifier> getComponentIdentifiers(Configuration dependencies) {
        List<String> externalDependenciesIds = new ArrayList<>();

        for (Dependency dependency : dependencies.getAllDependencies()) {
            if (dependency instanceof ExternalModuleDependency) {
                ExternalModuleDependency moduleDependency = (ExternalModuleDependency) dependency;
                externalDependenciesIds.add(moduleDependency.getGroup() + ":" + moduleDependency.getName());
            }
        }

        Set<ResolvedArtifact> resolvedArtifacts = dependencies.getResolvedConfiguration().getResolvedArtifacts();
        List<ComponentIdentifier> identifiers = new ArrayList<>();

        for (ResolvedArtifact resolvedArtifact : resolvedArtifacts) {
            ModuleVersionIdentifier moduleId = resolvedArtifact.getModuleVersion().getId();
            String moduleIdName = moduleId.getGroup() + ":" + moduleId.getName();
            if (externalDependenciesIds.contains(moduleIdName)) {
                externalDependenciesIds.remove(moduleIdName);
                identifiers.add(resolvedArtifact.getId().getComponentIdentifier());
            }
        }

        if (!externalDependenciesIds.isEmpty()) {
            getLogger().warn("POM files not found for the following dependencies: " + externalDependenciesIds);
        }

        return identifiers;
    }