public void test000_noChangeReload() throws Exception { IProject p1 = createExisting("t000-p1"); IFile pom = p1.getFile(IMavenConstants.POM_FILE_NAME); waitForJobsToComplete(); IMavenProjectFacade oldFacade = manager.create(p1, monitor); MavenProjectChangedEvent event; // assertEquals(1, events.size()); // event = events.get(0); // assertEquals(pom, event.getSource()); // assertEquals(MavenProjectChangedEvent.KIND_ADDED, event.getKind()); events.clear(); pom.setLocalTimeStamp(pom.getLocalTimeStamp() + 1000L); pom.touch(monitor); waitForJobsToComplete(); IMavenProjectFacade newFacade = manager.create(p1, monitor); assertNotSame(oldFacade.getMavenProject(monitor), newFacade.getMavenProject(monitor)); assertEquals(1, events.size()); event = events.get(0); assertEquals(pom, event.getSource()); assertEquals(MavenProjectChangedEvent.KIND_CHANGED, event.getKind()); assertEquals(MavenProjectChangedEvent.FLAG_NONE, event.getFlags()); assertNotNull(event.getOldMavenProject()); assertNotNull(event.getMavenProject()); }
public void test000_removeClosed() throws Exception { IProject p1 = createExisting("t000-p1"); waitForJobsToComplete(); IMavenProjectFacade f1 = manager.create(p1, monitor); MavenProjectChangedEvent event; // assertEquals(1, events.size()); // event = events.get(0); // assertEquals(MavenProjectChangedEvent.KIND_ADDED, event.getKind()); // assertNull(event.getOldMavenProject()); // assertSame(f1, event.getMavenProject()); assertEquals(p1.getFullPath(), f1.getFullPath()); events.clear(); p1.close(monitor); waitForJobsToComplete(); assertNull(manager.create(p1, monitor)); assertEquals(1, events.size()); event = events.get(0); assertEquals(MavenProjectChangedEvent.KIND_REMOVED, event.getKind()); assertSame(f1, event.getOldMavenProject()); assertNull(event.getMavenProject()); }
@Override public void mavenProjectChanged( final MavenProjectChangedEvent mavenProjectChangedEvent, final IProgressMonitor monitor) throws CoreException { final IMavenProjectFacade mavenProjectFacade = mavenProjectChangedEvent.getMavenProject(); if (mavenProjectFacade != null) { final MavenProject mavenProject = mavenProjectFacade.getMavenProject(); if (mavenProject == null) { return; } final MavenPluginWrapper pluginWrapper = this.getMavenPlugin(monitor, mavenProjectFacade); final IProject project = mavenProjectFacade.getProject(); if (this.checkUnconfigurationRequired( monitor, mavenProjectFacade, mavenProjectChangedEvent.getOldMavenProject())) { this.unconfigureEclipsePlugin(project, monitor); return; } if (pluginWrapper.isPluginConfigured()) { // only call handler if maven plugin is configured or found. // we need a session. MavenExecutionRequest request = maven.createExecutionRequest(monitor); MavenSession session = maven.createSession(request, mavenProject); this.handleProjectConfigurationChange( session, mavenProjectFacade, project, monitor, pluginWrapper); } else { // TODO: redirect to eclipse logger. // this.console.logMessage(String.format( // "Will not configure the Eclipse Plugin for Maven Plugin [%s:%s]," // + // "(Could not find maven plugin instance or configuration in pom)", // this.getMavenPluginGroupId(), // this.getMavenPluginArtifactId())); } } super.mavenProjectChanged(mavenProjectChangedEvent, monitor); }