private static void registerFileType(@NotNull FileTypeManager fileTypeManager, FileType fileType) { fileTypeManager.registerFileType(fileType, Collections.singletonList(new ExtensionFileNameMatcher(fileType.getDefaultExtension()))); }
@Nonnull @CheckReturnValue public static String append(@Nonnull String fileName, @Nonnull FileType fileType) { final String extension = fileType.getDefaultExtension(); if (fileName.endsWith(DELIMITER + extension)) { return fileName; } return fileName + DELIMITER + extension; } }
@Nonnull @CheckReturnValue public static String remove(@Nonnull String fileName, @Nonnull FileType fileType) { final String extension = fileType.getDefaultExtension(); if (fileName.endsWith(DELIMITER + extension)) { return fileName.substring(0, fileName.length() - (extension.length() + 1)); } return fileName; }
@Override public void consume(@NotNull FileType fileType) { register(fileType, parse(fileType.getDefaultExtension())); }
@Override public void fileOpened(@NotNull FileEditorManager source, @NotNull VirtualFile file) { if (Objects.equals(file.getFileType().getDefaultExtension(), "java")) { lineMarkersHolder.updateMethodMarker(file); } }
@Override public void consume(@NotNull FileType fileType) { consumer.consume(fileType); registerFileType(fileType, parse(fileType.getDefaultExtension())); }
/** * Removes all profiler gutter icons */ @Override public void fileClosed(@NotNull FileEditorManager source, @NotNull VirtualFile file) { if (source.getProject().isOpen()) { if (Objects.equals(file.getFileType().getDefaultExtension(), "java")) { lineMarkersHolder.removeAllIcons(file); } } } });