static void moveFromLocalRepo(final DownloadableFile downloadableFile, final String fileName, boolean downloadToLocalRepo, String modFolder) {
val newProjectName = getProjectNameOrDefault(downloadableFile.getName());
String folder = downloadableFile.getFolder();
if (Strings.isNullOrEmpty(folder)) {
folder = modFolder;
}
try {
File downloadedFile = getDownloadedFile(fileName, folder);
if (downloadToLocalRepo) {
FileUtils.copyFileToDirectory(getLocalFile(fileName, newProjectName), new File(folder));
} else if (!downloadedFile.exists()) {
FileUtils.moveFileToDirectory(getLocalFile(fileName, newProjectName), new File(folder), true);
}
if (!Strings.isNullOrEmpty(downloadableFile.getRename())) {
downloadedFile.renameTo(new File(downloadedFile.getParent() + File.separator + downloadableFile.getRename()));
}
} catch (final IOException e) {
log.error("Could not copy {} from local repo.", newProjectName, e);
}
}