Package org.openrewrite.maven
Class AddDependency
- java.lang.Object
-
- org.openrewrite.AbstractSourceVisitor<T>
-
- org.openrewrite.AbstractRefactorVisitor<org.openrewrite.xml.tree.Xml>
-
- org.openrewrite.xml.XmlRefactorVisitor
-
- org.openrewrite.maven.MavenRefactorVisitor
-
- org.openrewrite.maven.AddDependency
-
- All Implemented Interfaces:
MavenSourceVisitor<org.openrewrite.xml.tree.Xml>,org.openrewrite.RefactorVisitor<org.openrewrite.xml.tree.Xml>,org.openrewrite.SourceVisitor<org.openrewrite.xml.tree.Xml>,org.openrewrite.xml.XmlSourceVisitor<org.openrewrite.xml.tree.Xml>
public class AddDependency extends MavenRefactorVisitor
Adds a dependency if there is no dependency matchinggroupIdandartifactId. A matching dependency with a different version or scope does NOT have its version or scope updated. UseChangeDependencyVersionorUpgradeDependencyVersionin the case of a different version. UseChangeDependencyScopein the case of a different scope.Places a new dependency as physically "near" to a group of similar dependencies as possible.
-
-
Field Summary
-
Fields inherited from class org.openrewrite.maven.MavenRefactorVisitor
model, modules, settings
-
-
Constructor Summary
Constructors Constructor Description AddDependency()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisIdempotent()voidsetArtifactId(java.lang.String artifactId)voidsetClassifier(java.lang.String classifier)voidsetFamilyPattern(java.lang.String familyPattern)voidsetGroupId(java.lang.String groupId)voidsetMetadataPattern(java.lang.String metadataPattern)Allows us to extend version selection beyond the original Node Semver semantics.voidsetReleasesOnly(boolean releasesOnly)voidsetScope(java.lang.String scope)voidsetSkipIfPresent(boolean skipIfPresent)voidsetVersion(java.lang.String version)org.openrewrite.Validatedvalidate()MavenvisitMaven(Maven maven)-
Methods inherited from class org.openrewrite.maven.MavenRefactorVisitor
findDependencies, findDependencies, findDependency, isDependencyTag, isDependencyTag, isManagedDependencyTag, isManagedDependencyTag, isParentTag, isPropertyTag, maybeAddDependency, visitDocument
-
Methods inherited from class org.openrewrite.xml.XmlRefactorVisitor
enclosingRootTag, enclosingTag, visitAttribute, visitCharData, visitComment, visitDocTypeDecl, visitElement, visitIdent, visitProcessingInstruction, visitProlog, visitTag
-
Methods inherited from class org.openrewrite.AbstractRefactorVisitor
andThen, andThen, next, refactor, refactor, refactor
-
Methods inherited from class org.openrewrite.AbstractSourceVisitor
getCursor, setCursoringOn, visit, visitAfter, visitAfter
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Method Detail
-
setMetadataPattern
public void setMetadataPattern(@Nullable java.lang.String metadataPattern)Allows us to extend version selection beyond the original Node Semver semantics. So for example, We can pair aHyphenRangeof "25-29" with a metadata pattern of "-jre" to select Guava 29.0-jre- Parameters:
metadataPattern- The metadata pattern extending semver selection.
-
setGroupId
public void setGroupId(java.lang.String groupId)
-
setArtifactId
public void setArtifactId(java.lang.String artifactId)
-
setVersion
public void setVersion(@Nullable java.lang.String version)
-
setClassifier
public void setClassifier(@Nullable java.lang.String classifier)
-
setScope
public void setScope(@Nullable java.lang.String scope)
-
setSkipIfPresent
public void setSkipIfPresent(boolean skipIfPresent)
-
setReleasesOnly
public void setReleasesOnly(boolean releasesOnly)
-
setFamilyPattern
public void setFamilyPattern(@Nullable java.lang.String familyPattern)- Parameters:
familyPattern- A glob expression used to identify other dependencies in the same family as the dependency to be added.
-
validate
public org.openrewrite.Validated validate()
-
isIdempotent
public boolean isIdempotent()
-
visitMaven
public Maven visitMaven(Maven maven)
- Specified by:
visitMavenin interfaceMavenSourceVisitor<org.openrewrite.xml.tree.Xml>- Overrides:
visitMavenin classMavenRefactorVisitor
-
-