1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.lifecycle.internal;
20
21 import java.util.Collection;
22
23 import org.apache.maven.execution.ProjectExecutionEvent;
24 import org.apache.maven.execution.ProjectExecutionListener;
25 import org.apache.maven.lifecycle.LifecycleExecutionException;
26
27 public class CompoundProjectExecutionListener implements ProjectExecutionListener {
28 private final Collection<ProjectExecutionListener> listeners;
29
30 public CompoundProjectExecutionListener(Collection<ProjectExecutionListener> listeners) {
31 this.listeners = listeners;
32 }
33
34 @Override
35 public void beforeProjectExecution(ProjectExecutionEvent event) throws LifecycleExecutionException {
36 for (ProjectExecutionListener listener : listeners) {
37 listener.beforeProjectExecution(event);
38 }
39 }
40
41 @Override
42 public void beforeProjectLifecycleExecution(ProjectExecutionEvent event) throws LifecycleExecutionException {
43 for (ProjectExecutionListener listener : listeners) {
44 listener.beforeProjectLifecycleExecution(event);
45 }
46 }
47
48 @Override
49 public void afterProjectExecutionSuccess(ProjectExecutionEvent event) throws LifecycleExecutionException {
50 for (ProjectExecutionListener listener : listeners) {
51 listener.afterProjectExecutionSuccess(event);
52 }
53 }
54
55 @Override
56 public void afterProjectExecutionFailure(ProjectExecutionEvent event) {
57 for (ProjectExecutionListener listener : listeners) {
58 listener.afterProjectExecutionFailure(event);
59 }
60 }
61 }