code: public static Map<String, List<String>> toHashMap(final String aFilePath, final String aPattern,
              final String... aIgnoreList) throws FileNotFoundException {
          final String filePattern = aPattern != null ? aPattern : WILDCARD;
          final RegexFileFilter filter = new RegexFileFilter(filePattern);
          final Map<String, List<String>> fileMap = new HashMap<>();
          final File source = new File(aFilePath);
  
          for (final File file : listFiles(source, filter, true, aIgnoreList)) {
              final String fileName = file.getName();
              final String filePath = file.getAbsolutePath();
  
              if (fileMap.containsKey(fileName)) {
                  final List<String> paths = fileMap.get(fileName);
  
                  if (!paths.contains(filePath)) {
                      paths.add(filePath);
                  } else {
                      throw new I18nRuntimeException(BUNDLE_NAME, MessageCodes.UTIL_034);
                  }
              } else {
                  final ArrayList<String> pathList = new ArrayList<>();
                  pathList.add(filePath);
                  fileMap.put(fileName, pathList);
              }
          }
  
          return Collections.unmodifiableMap(fileMap);
      }
docs: Returns a Map representation of the supplied directory's structure. The map contains the file name as the key
  and its path as the value. If a file with a name occurs more than once, multiple path values are returned for
  that file name key. The map that is returned is unmodifiable.
  
  @param aFilePath The directory of which you'd like a file listing
  @param aPattern A regular expression pattern which the files must match to be returned
  @param aIgnoreList A list of directories into which we shouldn't descend
  @return An unmodifiable map representing the files in the file structure
  @throws FileNotFoundException If the directory for the supplied file path does not exist
  @throws RuntimeException If a duplicate file path name is discovered