docs: public static List<File> findFilesRecursive(final File dir, final String filenameToSearch)
  	{
  		final List<File> foundedFileList = new ArrayList<>();
  		final String regex = RegExExtensions.replaceWildcardsWithRE(filenameToSearch);
  		// Get all files
  		final File[] children = dir.getAbsoluteFile().listFiles();
  		if (children == null || children.length < 1)
  		{
  			return foundedFileList;
  		}
  		for (final File element : children)
  		{
  			// if the entry is a directory
  			if (element.isDirectory())
  			{ // then
  				// find recursively in the directory and put it in a List.
  				final List<File> foundedFiles = findFilesRecursive(element, filenameToSearch);
  				// Put the founded files in the main List.
  				foundedFileList.addAll(foundedFiles);
  			}
  			else
  			{
  				// entry is a file
  				final String filename = element.getName();
  				if (filename.matches(regex))
  				{
  					foundedFileList.add(element.getAbsoluteFile());
  				}
  			}
  		}
  		return foundedFileList;
  	}