1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.rat.analysis.license;
20
21 import java.util.Arrays;
22
23 import org.apache.rat.DeprecationReporter;
24 import org.apache.rat.configuration.builders.AbstractBuilder;
25 import org.apache.rat.configuration.builders.AnyBuilder;
26 import org.apache.rat.configuration.builders.TextBuilder;
27 import org.apache.rat.license.ILicense;
28
29
30
31
32
33
34 @Deprecated
35 @DeprecationReporter.Info(since = "0.16", forRemoval = true, use = "new configuration options")
36 public class SimplePatternBasedLicense extends BaseLicense {
37 private String[] patterns;
38
39 public SimplePatternBasedLicense() {
40 DeprecationReporter.logDeprecated(SimplePatternBasedLicense.class);
41 }
42
43 public String[] getPatterns() {
44 return patterns;
45 }
46
47 public void setPatterns(String[] pPatterns) {
48 patterns = pPatterns;
49 }
50
51 private AbstractBuilder getMatcher() {
52 if (patterns.length == 1) {
53 return new TextBuilder().setSimpleText(patterns[0]);
54 } else {
55 AnyBuilder any = new AnyBuilder();
56 Arrays.stream(patterns).map(s -> new TextBuilder().setSimpleText(s)).forEach(any::addEnclosed);
57 return any;
58 }
59 }
60
61 @Override
62 public ILicense.Builder getLicense() {
63 return ILicense.builder()
64 .setFamily(getLicenseFamilyCategory())
65 .setName(getLicenseFamilyName())
66 .setMatcher(getMatcher())
67 .setNote(getNotes());
68 }
69 }