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
34 public DefaultEvent(InternalMavenSession session, ExecutionEvent delegate) {
35 this.session = session;
36 this.delegate = delegate;
37 }
38
39 @Override
40 public EventType getType() {
41 return EventType.valueOf(delegate.getType().name());
42 }
43
44 @Override
45 public Session getSession() {
46 return session;
47 }
48
49 @Override
50 public Optional<Project> getProject() {
51 return Optional.ofNullable(delegate.getProject()).map(session::getProject);
52 }
53
54 @Override
55 public Optional<MojoExecution> getMojoExecution() {
56 return Optional.ofNullable(delegate.getMojoExecution()).map(me -> new DefaultMojoExecution(session, me));
57 }
58
59 @Override
60 public Optional<Exception> getException() {
61 return Optional.ofNullable(delegate.getException());
62 }
63 }