1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.rat.report.claim.util;
20
21 import java.io.File;
22 import java.io.IOException;
23
24 import org.apache.rat.annotation.AbstractLicenseAppender;
25 import org.apache.rat.annotation.ApacheV2LicenseAppender;
26 import org.apache.rat.api.MetaData;
27 import org.apache.rat.api.MetaData.Datum;
28 import org.apache.rat.api.RatException;
29 import org.apache.rat.report.AbstractReport;
30 import org.apache.rat.utils.Log;
31
32
33 public class LicenseAddingReport extends AbstractReport {
34 private final AbstractLicenseAppender appender;
35
36 public LicenseAddingReport(final Log log, String pCopyrightMsg, boolean pForced) {
37 appender = pCopyrightMsg == null ? new ApacheV2LicenseAppender(log) : new ApacheV2LicenseAppender(log,pCopyrightMsg);
38 appender.setForce(pForced);
39 }
40
41 @Override
42 public void report(org.apache.rat.api.Document document) throws RatException {
43 final Datum licenseHeader = document.getMetaData().get(MetaData.RAT_URL_HEADER_CATEGORY);
44 if (licenseHeader == null
45 || MetaData.RAT_LICENSE_FAMILY_CATEGORY_DATUM_UNKNOWN.getValue().equals(licenseHeader.getValue())) {
46 final File file = new File(document.getName());
47 if (file.isFile()) {
48 try {
49 appender.append(file);
50 } catch (IOException e) {
51 throw new RatException(e.getMessage(), e);
52 }
53 }
54 }
55 }
56 }