Class VersionsEngine
- java.lang.Object
-
- org.eclipse.tycho.versions.engine.VersionsEngine
-
@Component(role=VersionsEngine.class, instantiationStrategy="per-lookup") public class VersionsEngine extends java.lang.Object
Applies direct and indirect version changes to a set of projects.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
VersionsEngine.PropertyChange
-
Field Summary
Fields Modifier and Type Field Description private org.codehaus.plexus.logging.Logger
logger
private java.util.List<MetadataManipulator>
manipulators
private java.util.Set<PomVersionChange>
originalVersionChanges
private MetadataManipulator
pomManipulator
private java.util.Collection<ProjectMetadata>
projects
private java.util.Set<VersionsEngine.PropertyChange>
propertyChanges
private boolean
updateVersionRangeMatchingBounds
-
Constructor Summary
Constructors Constructor Description VersionsEngine()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPropertyChange(java.lang.String artifactId, java.lang.String propertyName, java.lang.String propertyValue)
void
addVersionChange(java.lang.String artifactId, java.lang.String newVersion)
void
addVersionChange(PomVersionChange change)
void
apply()
private PomFile
getMutablePom(java.lang.String artifactId)
private ProjectMetadata
getProject(java.lang.String artifactId)
boolean
isUpdateVersionRangeMatchingBounds()
void
setProjects(java.util.Collection<ProjectMetadata> projects)
void
setUpdateVersionRangeMatchingBounds(boolean updateVersionRangeMatchingBounds)
-
-
-
Field Detail
-
logger
@Requirement private org.codehaus.plexus.logging.Logger logger
-
manipulators
@Requirement(role=MetadataManipulator.class) private java.util.List<MetadataManipulator> manipulators
-
pomManipulator
@Requirement(hint="pom") private MetadataManipulator pomManipulator
-
projects
private java.util.Collection<ProjectMetadata> projects
-
originalVersionChanges
private java.util.Set<PomVersionChange> originalVersionChanges
-
propertyChanges
private java.util.Set<VersionsEngine.PropertyChange> propertyChanges
-
updateVersionRangeMatchingBounds
private boolean updateVersionRangeMatchingBounds
-
-
Method Detail
-
isUpdateVersionRangeMatchingBounds
public boolean isUpdateVersionRangeMatchingBounds()
-
setUpdateVersionRangeMatchingBounds
public void setUpdateVersionRangeMatchingBounds(boolean updateVersionRangeMatchingBounds)
-
setProjects
public void setProjects(java.util.Collection<ProjectMetadata> projects)
-
addVersionChange
public void addVersionChange(java.lang.String artifactId, java.lang.String newVersion) throws java.io.IOException
- Throws:
java.io.IOException
-
getMutablePom
private PomFile getMutablePom(java.lang.String artifactId) throws java.io.IOException
- Throws:
java.io.IOException
-
addVersionChange
public void addVersionChange(PomVersionChange change)
-
apply
public void apply() throws java.io.IOException
- Throws:
java.io.IOException
-
getProject
private ProjectMetadata getProject(java.lang.String artifactId)
-
addPropertyChange
public void addPropertyChange(java.lang.String artifactId, java.lang.String propertyName, java.lang.String propertyValue) throws java.io.IOException
- Throws:
java.io.IOException
-
-