Search in sources :

Example 1 with Dependency

use of org.eclipse.m2e.model.edit.pom.Dependency in project m2e-core-tests by tesla.

the class ExcludeArtifactRefactoringTest method hasExclusionSet.

/*
   * The editor has the given exclusion set
   */
protected static boolean hasExclusionSet(MavenPomEditor editor, final ArtifactKey dependencyKey, final ArtifactKey excluded) throws Exception {
    final boolean[] found = new boolean[1];
    found[0] = false;
    performOnDOMDocument(new OperationTuple(editor.getDocument(), document -> {
        Element dep = findChild(findChild(document.getDocumentElement(), DEPENDENCIES), DEPENDENCY, childEquals(GROUP_ID, dependencyKey.getGroupId()), childEquals(ARTIFACT_ID, dependencyKey.getArtifactId()), childEquals(VERSION, dependencyKey.getVersion()));
        if (dep != null) {
            Element exclusion = findChild(findChild(dep, EXCLUSIONS), EXCLUSION, childEquals(GROUP_ID, excluded.getGroupId()), childEquals(ARTIFACT_ID, excluded.getArtifactId()));
            found[0] = exclusion != null;
        }
    }, true));
    return found[0];
}
Also used : ArtifactKey(org.eclipse.m2e.core.embedder.ArtifactKey) ParentGatherer(org.eclipse.m2e.core.ui.internal.util.ParentGatherer) CompositeChange(org.eclipse.ltk.core.refactoring.CompositeChange) ExcludeArtifactRefactoring(org.eclipse.m2e.refactoring.exclude.ExcludeArtifactRefactoring) CoreException(org.eclipse.core.runtime.CoreException) IStatus(org.eclipse.core.runtime.IStatus) PomEdits.performOnDOMDocument(org.eclipse.m2e.core.ui.internal.editing.PomEdits.performOnDOMDocument) ARTIFACT_ID(org.eclipse.m2e.core.ui.internal.editing.PomEdits.ARTIFACT_ID) PartInitException(org.eclipse.ui.PartInitException) After(org.junit.After) OperationTuple(org.eclipse.m2e.core.ui.internal.editing.PomEdits.OperationTuple) AbstractMavenProjectTestCase(org.eclipse.m2e.tests.common.AbstractMavenProjectTestCase) PomEdits.childEquals(org.eclipse.m2e.core.ui.internal.editing.PomEdits.childEquals) Assert.fail(org.junit.Assert.fail) Change(org.eclipse.ltk.core.refactoring.Change) PomResourceImpl(org.eclipse.m2e.model.edit.pom.util.PomResourceImpl) RefactoringStatusEntry(org.eclipse.ltk.core.refactoring.RefactoringStatusEntry) NLS(org.eclipse.osgi.util.NLS) IEditorInput(org.eclipse.ui.IEditorInput) PlatformUI(org.eclipse.ui.PlatformUI) IStructuredModel(org.eclipse.wst.sse.core.internal.provisional.IStructuredModel) MavenPomEditor(org.eclipse.m2e.editor.pom.MavenPomEditor) EXCLUSIONS(org.eclipse.m2e.core.ui.internal.editing.PomEdits.EXCLUSIONS) Status(org.eclipse.core.runtime.Status) Display(org.eclipse.swt.widgets.Display) IWorkbenchPage(org.eclipse.ui.IWorkbenchPage) DocumentChange(org.eclipse.ltk.core.refactoring.DocumentChange) List(java.util.List) Resource(org.eclipse.emf.ecore.resource.Resource) Model(org.eclipse.m2e.model.edit.pom.Model) EXCLUSION(org.eclipse.m2e.core.ui.internal.editing.PomEdits.EXCLUSION) DEPENDENCY(org.eclipse.m2e.core.ui.internal.editing.PomEdits.DEPENDENCY) Dependency(org.eclipse.m2e.model.edit.pom.Dependency) Exclusion(org.eclipse.m2e.model.edit.pom.Exclusion) URI(org.eclipse.emf.common.util.URI) HashMap(java.util.HashMap) ResolverConfiguration(org.eclipse.m2e.core.project.ResolverConfiguration) IDocument(org.eclipse.jface.text.IDocument) IProject(org.eclipse.core.resources.IProject) VERSION(org.eclipse.m2e.core.ui.internal.editing.PomEdits.VERSION) GROUP_ID(org.eclipse.m2e.core.ui.internal.editing.PomEdits.GROUP_ID) RefactoringStatus(org.eclipse.ltk.core.refactoring.RefactoringStatus) PomEdits.findChild(org.eclipse.m2e.core.ui.internal.editing.PomEdits.findChild) IFile(org.eclipse.core.resources.IFile) PomResourceFactoryImpl(org.eclipse.m2e.model.edit.pom.util.PomResourceFactoryImpl) FileEditorInput(org.eclipse.ui.part.FileEditorInput) IMavenProjectFacade(org.eclipse.m2e.core.project.IMavenProjectFacade) Assert.assertNotNull(org.junit.Assert.assertNotNull) Assert.assertTrue(org.junit.Assert.assertTrue) Test(org.junit.Test) TextFileChange(org.eclipse.ltk.core.refactoring.TextFileChange) DEPENDENCIES(org.eclipse.m2e.core.ui.internal.editing.PomEdits.DEPENDENCIES) Element(org.w3c.dom.Element) StructuredModelManager(org.eclipse.wst.sse.core.StructuredModelManager) ParentHierarchyEntry(org.eclipse.m2e.core.ui.internal.util.ParentHierarchyEntry) MavenPlugin(org.eclipse.m2e.core.MavenPlugin) Assert.assertEquals(org.junit.Assert.assertEquals) OperationTuple(org.eclipse.m2e.core.ui.internal.editing.PomEdits.OperationTuple) Element(org.w3c.dom.Element)

Example 2 with Dependency

use of org.eclipse.m2e.model.edit.pom.Dependency in project m2e-core-tests by tesla.

the class MavenModelEditTest method testManyChange.

@Test
public void testManyChange() throws Exception {
    PomResourceImpl resource = loadModel("many.xml");
    Model model = resource.getModel();
    // Dependency dependency = model.getDependencies().getDependencyArray(0);
    Dependency dependency = model.getDependencies().get(0);
    dependency.setArtifactId("changed-maven-lifecycle");
    assertEquals(loadFile("many_change.xml"), MavenModelUtil.toString(resource));
    resource.unload();
}
Also used : Model(org.eclipse.m2e.model.edit.pom.Model) Dependency(org.eclipse.m2e.model.edit.pom.Dependency) PomResourceImpl(org.eclipse.m2e.model.edit.pom.util.PomResourceImpl) Test(org.junit.Test)

Example 3 with Dependency

use of org.eclipse.m2e.model.edit.pom.Dependency in project m2e-core-tests by tesla.

the class MavenModelEditTest method testManyAdd.

@Test
public void testManyAdd() throws Exception {
    PomResourceImpl resource = loadModel("many.xml");
    Model model = resource.getModel();
    Dependency dependency = PomFactory.eINSTANCE.createDependency();
    dependency.setGroupId("added-groupId");
    dependency.setArtifactId("added-artifactId");
    EList<Dependency> dependencies = model.getDependencies();
    dependencies.add(dependency);
    assertEquals(loadFile("many_add.xml"), MavenModelUtil.toString(resource));
    resource.unload();
}
Also used : Model(org.eclipse.m2e.model.edit.pom.Model) Dependency(org.eclipse.m2e.model.edit.pom.Dependency) PomResourceImpl(org.eclipse.m2e.model.edit.pom.util.PomResourceImpl) Test(org.junit.Test)

Example 4 with Dependency

use of org.eclipse.m2e.model.edit.pom.Dependency in project m2e-core-tests by tesla.

the class ExcludeArtifactRefactoringTest method hasExclusionSet.

/*
   * The editor has the given exclusion set
   */
protected static boolean hasExclusionSet(IProject project, ArtifactKey dependencyKey, ArtifactKey excluded) throws Exception {
    Model model = loadResource(project.getFile("pom.xml")).getModel();
    Dependency d = null;
    for (Dependency dep : model.getDependencies()) {
        if (dep.getArtifactId().equals(dependencyKey.getArtifactId()) && dep.getGroupId().equals(dependencyKey.getGroupId()) && dep.getVersion().equals(dependencyKey.getVersion())) {
            d = dep;
            break;
        }
    }
    if (d == null) {
        return false;
    }
    for (Exclusion ex : d.getExclusions()) {
        if (ex.getArtifactId().equals(excluded.getArtifactId()) && ex.getGroupId().equals(excluded.getGroupId())) {
            return true;
        }
    }
    return false;
}
Also used : Exclusion(org.eclipse.m2e.model.edit.pom.Exclusion) IStructuredModel(org.eclipse.wst.sse.core.internal.provisional.IStructuredModel) Model(org.eclipse.m2e.model.edit.pom.Model) Dependency(org.eclipse.m2e.model.edit.pom.Dependency)

Aggregations

Dependency (org.eclipse.m2e.model.edit.pom.Dependency)4 Model (org.eclipse.m2e.model.edit.pom.Model)4 PomResourceImpl (org.eclipse.m2e.model.edit.pom.util.PomResourceImpl)3 Exclusion (org.eclipse.m2e.model.edit.pom.Exclusion)2 Test (org.junit.Test)2 HashMap (java.util.HashMap)1 List (java.util.List)1 IFile (org.eclipse.core.resources.IFile)1 IProject (org.eclipse.core.resources.IProject)1 CoreException (org.eclipse.core.runtime.CoreException)1 IStatus (org.eclipse.core.runtime.IStatus)1 Status (org.eclipse.core.runtime.Status)1 URI (org.eclipse.emf.common.util.URI)1 Resource (org.eclipse.emf.ecore.resource.Resource)1 IDocument (org.eclipse.jface.text.IDocument)1 Change (org.eclipse.ltk.core.refactoring.Change)1 CompositeChange (org.eclipse.ltk.core.refactoring.CompositeChange)1 DocumentChange (org.eclipse.ltk.core.refactoring.DocumentChange)1 RefactoringStatus (org.eclipse.ltk.core.refactoring.RefactoringStatus)1 RefactoringStatusEntry (org.eclipse.ltk.core.refactoring.RefactoringStatusEntry)1