Class FileIOUtils

java.lang.Object
com.vaadin.flow.server.frontend.FileIOUtils

public class FileIOUtils extends Object
  • Method Details

    • writeIfChanged

      public static boolean writeIfChanged(File file, List<String> content) throws IOException
      Writes the given content into the given file unless the file already contains that content.
      Parameters:
      file - the file to write to
      content - the lines to write
      Returns:
      true if the content was written to the file, false otherwise
      Throws:
      IOException - if something went wrong
    • writeIfChanged

      public static boolean writeIfChanged(File file, String content) throws IOException
      Writes the given content into the given file unless the file already contains that content.
      Parameters:
      file - the file to write to
      content - the content to write
      Returns:
      true if the content was written to the file, false otherwise
      Throws:
      IOException - if something went wrong
    • getProjectFolderFromClasspath

      public static File getProjectFolderFromClasspath()
      Try determining the project folder from the classpath.
      Returns:
      A file referring to the project folder or null if the folder could not be determined
    • isProbablyTemporaryFile

      public static boolean isProbablyTemporaryFile(File file)
      Checks if the given file is likely a temporary file created by an editor.
      Parameters:
      file - the file to check
      Returns:
      true if the file is likely a temporary file, false otherwise
    • getFilesByPattern

      public static List<Path> getFilesByPattern(Path baseDir, String pattern) throws IOException
      Get a list of files in a given directory that match a given glob pattern.
      Parameters:
      baseDir - a directory to walk in
      pattern - glob pattern to filter files, e.g. "*.js".
      Returns:
      a list of files matching a given pattern
      Throws:
      IOException - if an I/O error is thrown while walking through the tree in base directory
    • compareIgnoringIndentationAndEOL

      public static boolean compareIgnoringIndentationAndEOL(String content1, String content2, BiPredicate<String,String> compareFn)
      Compare two file content strings ignoring indentation and EOL characters.
      Parameters:
      content1 - the first file content to compare
      content2 - the second file content to compare
      compareFn - a function to compare the normalized strings
      Returns:
      true if the normalized strings are equal, false otherwise
    • compareIgnoringIndentationEOLAndWhiteSpace

      public static boolean compareIgnoringIndentationEOLAndWhiteSpace(String content1, String content2, BiPredicate<String,String> compareFn)
      Compare two file content strings ignoring indentation, EOL characters and white space where it does not matter (before and after {, }, ' and : chars).
      Parameters:
      content1 - the first file content to compare
      content2 - the second file content to compare
      compareFn - a function to compare the normalized strings
      Returns:
      true if the normalized strings are equal, false otherwise