aem-plugin / com.cognifide.gradle.aem.common.file / FileOperations

FileOperations

object FileOperations

Functions

amendFile

fun amendFile(file: File, amender: (String) -> String): Unit

amendFiles

fun amendFiles(dir: File, wildcardFilters: List<String>, amender: (File, String) -> String): Unit

copyResources

fun copyResources(resourceRoot: String, targetDir: File, skipExisting: Boolean = false): Unit

eachResource

fun eachResource(resourceRoot: String, targetDir: File, callback: (String, File) -> Unit): Unit

find

fun find(project: Project, dirIfFileName: String, pathOrFileNames: List<String>): File?
fun find(project: Project, dirIfFileName: String, pathOrFileName: String): File?
fun find(dir: File, pattern: String): File?
fun find(dir: File, patterns: List<String>): File?

getResources

fun getResources(path: String): List<String>

isDirEmpty

fun isDirEmpty(dir: File): Boolean
fun isDirEmpty(dir: Path): Boolean

lock

fun lock(file: File): Unit
fun lock(file: File, callback: () -> Unit): Unit

readResource

fun readResource(path: String): InputStream?

removeDirContents

fun removeDirContents(dir: File): Boolean

zipContains

fun zipContains(zip: File, fileName: String): Boolean

zipPack

fun zipPack(zip: File, sourceDir: File): Unit

zipUnpackAll

Only Zip4j correctly extracts AEM backup ZIP files. Gradle zipTree and Zero-Turnaround ZipUtil is not working properly in that case.

fun zipUnpackAll(zip: File, targetDir: File): Unit

zipUnpackDir

fun zipUnpackDir(zip: File, dirName: String, dir: File): Unit