Class DependencyConflictDetector
java.lang.Object
com.pragma.archetype.domain.service.DependencyConflictDetector
Domain service responsible for detecting dependency conflicts.
Identifies version conflicts and framework incompatibilities.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapplyVersionOverrides(List<AdapterMetadata.Dependency> dependencies, Map<String, String> overrides) Applies version overrides to a list of dependencies.detectFrameworkConflicts(String frameworkName, List<AdapterMetadata.Dependency> newDependencies) Detects conflicts with framework dependencies.detectVersionConflicts(List<AdapterMetadata.Dependency> existingDependencies, List<AdapterMetadata.Dependency> newDependencies) Detects version conflicts between existing and new dependencies.getVersionOverride(AdapterMetadata.Dependency dependency, Map<String, String> overrides) Checks if a dependency override is configured for a given dependency.suggestResolution(List<String> conflicts) Suggests resolutions for detected conflicts.
-
Constructor Details
-
DependencyConflictDetector
public DependencyConflictDetector()
-
-
Method Details
-
detectVersionConflicts
public List<String> detectVersionConflicts(List<AdapterMetadata.Dependency> existingDependencies, List<AdapterMetadata.Dependency> newDependencies) Detects version conflicts between existing and new dependencies.- Parameters:
existingDependencies- list of existing dependencies in the projectnewDependencies- list of new dependencies to be added- Returns:
- list of conflict descriptions
-
detectFrameworkConflicts
public List<String> detectFrameworkConflicts(String frameworkName, List<AdapterMetadata.Dependency> newDependencies) Detects conflicts with framework dependencies. Checks for incompatibilities between adapter dependencies and the project framework.- Parameters:
frameworkName- the framework used in the project (e.g., "spring", "quarkus")newDependencies- list of new dependencies to be added- Returns:
- list of conflict descriptions
-
suggestResolution
Suggests resolutions for detected conflicts.- Parameters:
conflicts- list of conflict descriptions- Returns:
- list of resolution suggestions
-
getVersionOverride
public String getVersionOverride(AdapterMetadata.Dependency dependency, Map<String, String> overrides) Checks if a dependency override is configured for a given dependency.- Parameters:
dependency- the dependency to checkoverrides- map of dependency overrides from configuration- Returns:
- the override version if configured, null otherwise
-
applyVersionOverrides
public List<AdapterMetadata.Dependency> applyVersionOverrides(List<AdapterMetadata.Dependency> dependencies, Map<String, String> overrides) Applies version overrides to a list of dependencies.- Parameters:
dependencies- list of dependenciesoverrides- map of dependency overrides- Returns:
- list of dependencies with overrides applied
-