in src/main/java/org/apache/sling/cpconverter/maven/mojos/ConvertCPMojo.java [348:385]
private void copyFiles(File source, File destination) {
for(File file: source.listFiles()) {
String name = file.getName();
if(file.isDirectory()) {
File newDest = new File(destination, name);
if(!newDest.exists()) {
newDest.mkdirs();
}
if(newDest.isDirectory()) {
copyFiles(file, newDest);
} else {
getLog().warn("Source File: '" + file.getAbsolutePath() + "' is a folder but its counterpart is a file: " + newDest.getAbsolutePath());
}
} else {
File newDest = new File(destination, name);
if(!newDest.exists()) {
// Copy File over
try {
Files.copy(file.toPath(), newDest.toPath(), StandardCopyOption.COPY_ATTRIBUTES);
} catch (IOException e) {
getLog().warn("Failed to copy File: '" + file.getAbsolutePath() + "' to File: " + newDest.getAbsolutePath(), e);
}
} else {
// We only overwrite converted files
if(name.endsWith(PACKAGE_CLASSIFIER + "." + ZIP_TYPE)) {
// Copy File over
try {
Files.copy(file.toPath(), newDest.toPath(), StandardCopyOption.COPY_ATTRIBUTES, StandardCopyOption.REPLACE_EXISTING);
} catch (IOException e) {
getLog().warn("Failed to copy generated File: '" + file.getAbsolutePath() + "' to File: " + newDest.getAbsolutePath(), e);
}
} else {
getLog().info("Ignore File: '" + file.getAbsolutePath());
}
}
}
}
}