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.AbstractLicenceAppender;
25 import org.apache.rat.annotation.ApacheV2LicenceAppender;
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
31
32 public class LicenseAddingReport extends AbstractReport {
33 private final AbstractLicenceAppender appender;
34
35 public LicenseAddingReport(String pCopyrightMsg, boolean pForced) {
36 appender = pCopyrightMsg == null ? new ApacheV2LicenceAppender() : new ApacheV2LicenceAppender(pCopyrightMsg);
37 appender.setForce(pForced);
38 }
39
40 public void report(org.apache.rat.api.Document document) throws RatException {
41 final MetaData metaData = document.getMetaData();
42 final Datum licenseHeader = metaData.get(MetaData.RAT_URL_HEADER_CATEGORY);
43 if (licenseHeader == null
44 || MetaData.RAT_LICENSE_FAMILY_CATEGORY_DATUM_UNKNOWN.getValue().equals(licenseHeader.getValue())) {
45 final File file = new File(document.getName());
46 if (file.isFile()) {
47 try {
48 appender.append(file);
49 } catch (IOException e) {
50 throw new RatException(e.getMessage(), e);
51 }
52 }
53 }
54 metaData.getData();
55 }
56 }