1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.resources.filters;
20
21 import javax.inject.Named;
22 import javax.inject.Singleton;
23
24 import java.io.File;
25 import java.io.IOException;
26 import java.util.ArrayList;
27 import java.util.Collections;
28 import java.util.List;
29
30 import org.apache.commons.io.FileUtils;
31 import org.apache.maven.shared.filtering.MavenFilteringException;
32 import org.apache.maven.shared.filtering.MavenResourcesExecution;
33 import org.apache.maven.shared.filtering.MavenResourcesFiltering;
34
35
36
37
38
39
40 @Singleton
41 @Named("itFilter")
42 public class ItFilter implements MavenResourcesFiltering {
43
44
45
46
47 public List<String> getDefaultNonFilteredFileExtensions() {
48
49 return Collections.emptyList();
50 }
51
52
53
54
55 public boolean filteredFileExtension(String fileName, List<String> userNonFilteredFileExtensions) {
56 return false;
57 }
58
59
60
61
62 public void filterResources(MavenResourcesExecution mavenResourcesExecution) throws MavenFilteringException {
63 System.out.println("ItFilter filterResources");
64 try {
65 File f = new File(mavenResourcesExecution.getOutputDirectory(), "foo.txt");
66 List<String> lines = new ArrayList<>();
67
68 lines.add("foo");
69 lines.add("version=" + mavenResourcesExecution.getMavenProject().getVersion());
70 lines.add("toto="
71 + mavenResourcesExecution
72 .getMavenSession()
73 .getSystemProperties()
74 .getProperty("toto"));
75 FileUtils.writeLines(f, lines);
76 } catch (IOException e) {
77 throw new MavenFilteringException(e.getMessage(), e);
78 }
79 }
80 }