@NotNull FileTypeWithDescriptor getFileTypeWithDescriptorByExtension(@NotNull String extension) {
    FileTypeBean pendingFileType = withReadLock(() -> pendingAssociations.findByExtension(extension));
    if (pendingFileType != null) {
      FileTypeWithDescriptor type = instantiateFileTypeBean(pendingFileType);
      return type == null ? coreDescriptorFor(UnknownFileType.INSTANCE) : type;
    }
    FileTypeWithDescriptor descriptor = withReadLock(() -> patternsTable.findByExtension(extension));
    return descriptor == null ? coreDescriptorFor(UnknownFileType.INSTANCE) : descriptor;
  }
@NotNull FileTypeWithDescriptor getFileTypeWithDescriptorByExtension(@NotNull String extension)