1 package org.apache.maven.plugin.assembly.archive.phase;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.List;
23
24 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
25 import org.apache.maven.plugin.assembly.AssemblyContext;
26 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
27 import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
28 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
29 import org.apache.maven.plugin.assembly.model.Assembly;
30 import org.apache.maven.plugin.assembly.model.FileSet;
31 import org.codehaus.plexus.archiver.Archiver;
32 import org.codehaus.plexus.component.annotations.Component;
33 import org.codehaus.plexus.logging.AbstractLogEnabled;
34
35
36
37
38
39
40 @Component( role = AssemblyArchiverPhase.class, hint = "file-sets" )
41 public class FileSetAssemblyPhase
42 extends AbstractLogEnabled
43 implements AssemblyArchiverPhase
44 {
45
46
47
48
49 public void execute( final Assembly assembly, final Archiver archiver,
50 final AssemblerConfigurationSource configSource, final AssemblyContext context )
51 throws ArchiveCreationException, AssemblyFormattingException
52 {
53 final List<FileSet> fileSets = assembly.getFileSets();
54
55 if ( ( fileSets != null ) && !fileSets.isEmpty() )
56 {
57 final AddFileSetsTask task = new AddFileSetsTask( fileSets );
58
59 task.setLogger( getLogger() );
60 task.execute( archiver, configSource );
61 }
62 }
63
64 }