public Result call() throws IOException { MavenExecutionListener mavenExecutionListener = new MavenExecutionListener( this ); try { futures = new ArrayList<Future<?>>();
public void reccordMojoFailed( ExecutionEvent event ) { Long startTime = getMojoStartTime( event.getProject() ); Date endTime = new Date(); MavenProject mavenProject = event.getProject(); getExpressionEvaluator( event.getSession(), event.getMojoExecution() ) ); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject );
private void recordMojoStarted(ExecutionEvent event) { long startTime = initMojoStartTime( event.getProject() ); MavenProject mavenProject = event.getProject(); MojoInfo mojoInfo = new MojoInfo(event,startTime); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject ); if (mavenBuildProxy2 == null) return; for (MavenReporter mavenReporter : fixNull(mavenReporters)) { try { mavenReporter.preExecute( mavenBuildProxy2, mavenProject, mojoInfo, maven3Builder.listener); } catch ( InterruptedException e ) { e.printStackTrace(); } catch ( IOException e ) { e.printStackTrace(); } } }
super.projectDiscoveryStarted( (ExecutionEvent) event ); break; case SessionStarted: super.sessionStarted( (ExecutionEvent) event ); break; case SessionEnded: super.sessionEnded( (ExecutionEvent) event ); break; case ProjectSkipped: super.projectSkipped( (ExecutionEvent) event ); break; case ProjectStarted: super.projectStarted( (ExecutionEvent) event ); break; case ProjectSucceeded: super.projectSucceeded( (ExecutionEvent) event ); break; case ProjectFailed: super.projectFailed( (ExecutionEvent) event ); break; case MojoSkipped: super.mojoSkipped( (ExecutionEvent) event ); break; case MojoStarted: super.mojoStarted( (ExecutionEvent) event ); break; case MojoSucceeded: super.mojoSucceeded( (ExecutionEvent) event ); break;
initializeAsynchronousExecutions(); MavenExecutionListener mavenExecutionListener = supportEventSpy ? new JenkinsEventSpy(this) : new MavenExecutionListener( this ); if (supportEventSpy) if(mavenExecutionListener.hasTestFailures()){ return Result.UNSTABLE;
public void reccordMojoSucceeded( ExecutionEvent event ) { Long startTime = getMojoStartTime( event.getProject() ); Date endTime = new Date(); MavenProject mavenProject = event.getProject(); getExpressionEvaluator( event.getSession(), event.getMojoExecution() ) ); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject );
public void reccordProjectFailed( ExecutionEvent event ) { MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( event.getProject() ); mavenBuildProxy2.end(); mavenBuildProxy2.setResult( Result.FAILURE ); MavenProject mavenProject = event.getProject(); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject );
public void reccordProjectStarted( ExecutionEvent event ) { MavenProject mavenProject = event.getProject(); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject ); mavenBuildProxy2.start();
public void reccordProjectSucceeded( ExecutionEvent event ) { MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( event.getProject() ); mavenBuildProxy2.end(); mavenBuildProxy2.setResult( Result.SUCCESS ); List<MavenReporter> mavenReporters = getMavenReporters( event.getProject() );
private void recordMojoEnded(ExecutionEvent event, Exception problem) { MavenProject mavenProject = event.getProject(); MojoInfo mojoInfo = new MojoInfo(event,getMojoStartTime(event.getProject())); recordExecutionTime(event,mojoInfo); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject ); if (mavenBuildProxy2 == null) return; mavenBuildProxy2.setExecutedMojos( this.executedMojosPerModule.get( new ModuleName(event) ) ); for (MavenReporter mavenReporter : fixNull(mavenReporters)) { try { mavenReporter.postExecute( mavenBuildProxy2, mavenProject, mojoInfo, maven3Builder.listener, problem); if (mavenReporter instanceof TestFailureDetector) { if(((TestFailureDetector) mavenReporter).hasTestFailures()) { hasTestFailures.compareAndSet(false, true); } } } catch ( InterruptedException e ) { e.printStackTrace(); } catch ( IOException e ) { mavenBuildProxy2.setResult(Result.FAILURE); e.printStackTrace(); } } }
/** * @see org.apache.maven.execution.ExecutionListener#sessionEnded(org.apache.maven.execution.ExecutionEvent) */ public void sessionEnded( ExecutionEvent event ) { debug( "sessionEnded" ); this.eventLogger.sessionEnded( event ); Map<ModuleName, MavenProject> buildingProjects = getSessionProjects(event); for (Entry<ModuleName,FilterImpl> e : fixNull(this.proxies.entrySet())) { MavenProject project = buildingProjects.get(e.getKey()); if (project!=null) { for (MavenReporter mavenReporter : reporters.get(e.getKey())) { try { mavenReporter.postBuild( e.getValue() ,project, maven3Builder.listener); } catch ( InterruptedException x ) { x.printStackTrace(); } catch ( IOException x ) { x.printStackTrace(); } } } } }
public void reccordMojoStarted( ExecutionEvent event ) { initMojoStartTime( event.getProject() ); MavenProject mavenProject = event.getProject(); XmlPlexusConfiguration xmlPlexusConfiguration = new XmlPlexusConfiguration( event.getMojoExecution().getConfiguration() ); Mojo mojo = null;//getMojo( event.getMojoExecution(), event.getSession() ); MojoInfo mojoInfo = new MojoInfo( event.getMojoExecution(), mojo, xmlPlexusConfiguration, getExpressionEvaluator( event.getSession(), event.getMojoExecution() ) ); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject ); if (mavenReporters != null) { for (MavenReporter mavenReporter : mavenReporters) { try { mavenReporter.preExecute( mavenBuildProxy2, mavenProject, mojoInfo, maven3Builder.listener); } catch ( InterruptedException e ) { e.printStackTrace(); } catch ( IOException e ) { e.printStackTrace(); } } } }
private void recordProjectEnded(ExecutionEvent event, Result result) { MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( event.getProject() ); if (mavenBuildProxy2 == null) return; mavenBuildProxy2.setResult(result); List<MavenReporter> mavenReporters = getMavenReporters( event.getProject() ); for ( MavenReporter mavenReporter : fixNull(mavenReporters)) { try { mavenReporter.postBuild( mavenBuildProxy2, event.getProject(), maven3Builder.listener); } catch ( InterruptedException e ) { e.printStackTrace(); } catch ( IOException e ) { e.printStackTrace(); } } mavenBuildProxy2.end(); }
private void recordProjectStarted(ExecutionEvent event) { MavenProject mavenProject = event.getProject(); List<MavenReporter> mavenReporters = getMavenReporters( mavenProject ); MavenBuildProxy2 mavenBuildProxy2 = getMavenBuildProxy2( mavenProject ); if (mavenBuildProxy2 == null) return; mavenBuildProxy2.start(); for (MavenReporter mavenReporter : fixNull(mavenReporters)) { try { mavenReporter.enterModule( mavenBuildProxy2 ,mavenProject, maven3Builder.listener); } catch ( InterruptedException e ) { e.printStackTrace(); } catch ( IOException e ) { e.printStackTrace(); } } }
/** * Record how long it took to run this mojo. */ private void recordExecutionTime(ExecutionEvent event, MojoInfo mojoInfo) { MavenProject p = event.getProject(); List<ExecutedMojo> m = executedMojosPerModule.get(new ModuleName(p)); if (m==null) // defensive check executedMojosPerModule.put(new ModuleName(p), m=new CopyOnWriteArrayList<>()); Long startTime = getMojoStartTime( event.getProject() ); m.add(new ExecutedMojo( mojoInfo, startTime == null ? 0 : System.currentTimeMillis() - startTime )); }
/** * @see org.apache.maven.execution.ExecutionListener#mojoFailed(org.apache.maven.execution.ExecutionEvent) */ public void mojoFailed( ExecutionEvent event ) { debug("mojoFailed " + mojoExec(event)); recordMojoEnded(event, getExecutionException(event)); this.eventLogger.mojoFailed( event ); }
/** * @see org.apache.maven.execution.ExecutionListener#projectSucceeded(org.apache.maven.execution.ExecutionEvent) */ public void projectSucceeded( ExecutionEvent event ) { debug( "projectSucceeded "+gav(event.getProject())); recordProjectEnded(event,Result.SUCCESS); this.eventLogger.projectSucceeded( event ); }
/** * All {@link MavenProject}s in the current session, keyed by their names. */ private Map<ModuleName, MavenProject> getSessionProjects(ExecutionEvent event) { List<MavenProject> projects = event.getSession().getProjects(); debug("Projects to build: " + projects); Map<ModuleName,MavenProject> buildingProjects = new HashMap<>(); for (MavenProject p : projects) { buildingProjects.put(new ModuleName(p), p); } return buildingProjects; }