private static IndentOptions getFileTypeIndentOptions(FileTypeIndentOptionsProvider provider) { try { return provider.createIndentOptions(); } catch (AbstractMethodError error) { LOG.error("Plugin uses obsolete API.", new ExtensionException(provider.getClass())); return new IndentOptions(); } }
private static IndentOptions getDefaultIndentOptions(FileType fileType) { final FileTypeIndentOptionsProvider[] providers = Extensions.getExtensions(FileTypeIndentOptionsProvider.EP_NAME); for (final FileTypeIndentOptionsProvider provider : providers) { if (provider.getFileType().equals(fileType)) { return getFileTypeIndentOptions(provider); } } return new IndentOptions(); }
private void loadAdditionalIndentOptions() { synchronized (myAdditionalIndentOptions) { myLoadedAdditionalIndentOptions = true; final FileTypeIndentOptionsProvider[] providers = Extensions.getExtensions(FileTypeIndentOptionsProvider.EP_NAME); for (final FileTypeIndentOptionsProvider provider : providers) { if (!myAdditionalIndentOptions.containsKey(provider.getFileType())) { registerAdditionalIndentOptions( provider.getFileType(), getFileTypeIndentOptions(provider)); } } } }