@Override public String toString() { return "Document " + getFilePath(); } }
public void save() { saveTo(file); }
public Document createDocuments(String file) { return getWrapper(file); }
private void remove(Document document) { document.parseHeader(); if (document.headerDetected()) document.removeHeader(); 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);
@Override public void onHeaderNotFound(Document document, Header header) { document.parseHeader(); if (document.headerDetected() && skipExistingHeaders) { logger.info("Ignoring header in: {}", DocumentFactory.getRelativeFile(basedir, document)); return; } else { logger.lifecycle("Missing header in: {}", DocumentFactory.getRelativeFile(basedir, document)); } missingHeaders.add(document.getFile()); }
@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()); }
@Override public void onUnknownFile(Document document, Header header) { warn("Unknown file extension: %s", document.getFilePath()); unknownFiles.add(document.getFile()); }
public boolean isMatchForText(Document d, HeaderDefinition headerDefinition, boolean unix, String encoding) throws IOException { String fileHeader = readFirstLines(d.getFile(), getLineCount() + 10, encoding).replaceAll(" *\r?\n", "\n"); String expected = buildForDefinition(headerDefinition, unix); expected = d.mergeProperties(expected); return isMatchForText(expected, fileHeader, headerDefinition, unix); }
public void removeHeader() { if (headerDetected()) { parser.getFileContent().delete(parser.getBeginPosition(), parser.getEndPosition()); } }
public String mergeProperties(String str) { return placeholderHelper.replacePlaceholders(str, documentPropertiesLoader.load(this)); }
public void updateHeader(Header header) { String headerStr = header.applyDefinitionAndSections(parser.getHeaderDefinition(), parser.getFileContent().isUnix()); parser.getFileContent().insert(parser.getBeginPosition(), mergeProperties(headerStr)); }
@Override public void onHeaderNotFound(Document document, Header header) { document.parseHeader(); if (document.headerDetected() && skipExistingHeaders) { logger.info("Ignoring header in: {}", DocumentFactory.getRelativeFile(basedir, document)); return; } else { logger.lifecycle("Missing header in: {}", DocumentFactory.getRelativeFile(basedir, document)); } missingHeaders.add(document.getFile()); }
@Override public void onExistingHeader(Document document, Header header) { debug("Header OK in: %s", document.getFilePath()); } };
public String getFilePath() { return getFile().getPath().replace('\\', '/'); }
@Override public void onExistingHeader(Document document, Header header) { debug("Header OK in: %s", document.getFilePath()); } };
@Override public void onExistingHeader(Document document, Header header) { info("Removing license header from: %s", document.getFile()); remove(document); }
@Override public void onHeaderNotFound(Document document, Header header) { debug("Header was not found in: %s (But keep trying to find another header to remove)", document.getFile()); remove(document); }