@Override public String toString() { return "Document " + getFilePath(); } }
@Override public void onExistingHeader(Document document, Header header) { debug("Header OK in: %s", document.getFilePath()); } };
@Override public void onExistingHeader(Document document, Header header) { debug("Header OK in: %s", document.getFilePath()); } };
@Override public void onUnknownFile(Document document, Header header) { warn("Unknown file extension: %s", document.getFilePath()); unknownFiles.add(document.getFile()); }
public void saveTo(File dest) { if (parser != null) { try { FileUtils.write(dest, parser.getFileContent().getContent(), encoding); } catch (IOException e) { throw new IllegalStateException("Cannot write new header in file " + getFilePath() + ". Cause: " + e.getMessage(), e); } } }
@Override public void onHeaderNotFound(Document document, Header header) { if (skipExistingHeaders) { document.parseHeader(); if (document.headerDetected()) { debug("Existing header in: %s", document.getFilePath()); return; } } warn("Missing header in: %s", document.getFilePath()); missingHeaders.add(document.getFile()); }
public boolean hasHeader(Header header, boolean strictCheck) { if (!strictCheck) { try { String fileHeader = readFirstLines(file, header.getLineCount() + 10, encoding); String fileHeaderOneLine = remove(fileHeader, headerDefinition.getFirstLine().trim(), headerDefinition.getEndLine().trim(), headerDefinition.getBeforeEachLine().trim(), "\n", "\r", "\t", " "); String headerOnOnelIne = mergeProperties(header.asOneLineString()); return fileHeaderOneLine.contains(remove(headerOnOnelIne, headerDefinition.getFirstLine().trim(), headerDefinition.getEndLine().trim(), headerDefinition.getBeforeEachLine().trim())); } catch (IOException e) { throw new IllegalStateException("Cannot read file " + getFilePath() + ". Cause: " + e.getMessage(), e); } } try { return header.isMatchForText(this, headerDefinition, true, encoding); } catch (IOException e) { throw new IllegalStateException("Cannot read file " + getFilePath() + ". Cause: " + e.getMessage(), e); } }
@Override public void onHeaderNotFound(Document document, Header header) { document.parseHeader(); if (document.headerDetected()) { if (skipExistingHeaders) { debug("Keeping license header in: %s", document.getFilePath()); return; } document.removeHeader(); } info("Updating license header in: %s", document.getFilePath()); document.updateHeader(header); if (!dryRun) { document.save(); } else { String name = document.getFile().getName() + ".licensed"; File copy = new File(document.getFile().getParentFile(), name); info("Result saved to: %s", copy); document.saveTo(copy); } }
@Override public void run() { Document document = documentFactory.createDocuments(file); debug("Selected file: %s [header style: %s]", document.getFilePath(), document.getHeaderDefinition()); if (document.isNotSupported()) { callback.onUnknownFile(document, h); } else if (document.is(h)) { debug("Skipping header file: %s", document.getFilePath()); } else if (document.hasHeader(h, strictCheck)) { callback.onExistingHeader(document, h); } else { boolean headerFound = false; for (Header validHeader : validHeaders) { if (headerFound = document.hasHeader(validHeader, strictCheck)) { callback.onExistingHeader(document, h); break; } } if (!headerFound) { callback.onHeaderNotFound(document, h); } } } }, null);