1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.internal.impl;
20
21 import java.util.Optional;
22
23 import org.apache.maven.api.Event;
24 import org.apache.maven.api.EventType;
25 import org.apache.maven.api.MojoExecution;
26 import org.apache.maven.api.Project;
27 import org.apache.maven.api.Session;
28 import org.apache.maven.execution.ExecutionEvent;
29
30 public class DefaultEvent implements Event {
31 private final InternalMavenSession session;
32 private final ExecutionEvent delegate;
33 private final EventType eventType;
34
35 public DefaultEvent(InternalMavenSession session, ExecutionEvent delegate, EventType eventType) {
36 this.session = session;
37 this.delegate = delegate;
38 this.eventType = eventType;
39 }
40
41 @Override
42 public EventType getType() {
43 return eventType;
44 }
45
46 @Override
47 public Session getSession() {
48 return session;
49 }
50
51 @Override
52 public Optional<Project> getProject() {
53 return Optional.ofNullable(session.getProject(delegate.getProject()));
54 }
55
56 @Override
57 public Optional<MojoExecution> getMojoExecution() {
58 return Optional.ofNullable(delegate.getMojoExecution()).map(me -> new DefaultMojoExecution(session, me));
59 }
60
61 @Override
62 public Optional<Exception> getException() {
63 return Optional.ofNullable(delegate.getException());
64 }
65 }