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