All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.structurizr.dsl.FileUtils Maven / Gradle / Ivy

The newest version!
package com.structurizr.dsl;

import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

final class FileUtils {

    private static final String STRUCTURIZR_DSL_FILE_EXTENSION = ".dsl";

    static List findFiles(File path) {
        List files = new ArrayList<>();
        if (path.isDirectory()) {
            files = findFilesInDirectory(path);
        } else {
            files.add(path);
        }

        return files;
    }

    private static List findFilesInDirectory(File directory) {
        List files = new ArrayList<>();

        File[] filesInDirectory = directory.listFiles();
        if (filesInDirectory == null || filesInDirectory.length == 0) {
            return files;
        }

        Arrays.sort(filesInDirectory);

        for (File file : filesInDirectory) {
            if (!file.isDirectory() && file.getName().endsWith(STRUCTURIZR_DSL_FILE_EXTENSION)) {
                files.add(file);
            }

            if (file.isDirectory()) {
                files.addAll(findFilesInDirectory(file));
            }
        }

        return files;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy