@NotNull @Override public Set<UsageDescriptor> getProjectUsages(@Nullable Project project) { if (project == null) return Collections.emptySet(); final Set<LibraryKind> usedKinds = new HashSet<LibraryKind>(); final Processor<Library> processor = new Processor<Library>() { @Override public boolean process(Library library) { usedKinds.addAll(LibraryPresentationManagerImpl.getLibraryKinds(library, null)); return true; } }; for (Module module : ModuleManager.getInstance(project).getModules()) { ModuleRootManager.getInstance(module) .orderEntries() .librariesOnly() .forEachLibrary(processor); } final HashSet<UsageDescriptor> usageDescriptors = new HashSet<UsageDescriptor>(); for (LibraryKind kind : usedKinds) { usageDescriptors.add(new UsageDescriptor(kind.getKindId(), 1)); } return usageDescriptors; }
public class JsHeaderLibraryPresentationProvider extends LibraryPresentationProvider<LibraryVersionProperties> { public static final LibraryKind KOTLIN_JAVASCRIPT_HEADER_KIND = LibraryKind.create("kotlin-js-header"); public static JsHeaderLibraryPresentationProvider getInstance() { return LibraryPresentationProvider.EP_NAME.findExtension( JsHeaderLibraryPresentationProvider.class); } protected JsHeaderLibraryPresentationProvider() { super(KOTLIN_JAVASCRIPT_HEADER_KIND); } @Nullable @Override public Icon getIcon() { return JetIcons.SMALL_LOGO_13; } @Nullable @Override public LibraryVersionProperties detect(@NotNull List<VirtualFile> classesRoots) { return JsHeaderLibraryDetectionUtil.isJsHeaderLibraryDetected(classesRoots) ? new LibraryVersionProperties(null) : null; } }
private void readProperties(Element element) { final String typeId = element.getAttributeValue(LIBRARY_TYPE_ATTR); if (typeId == null) return; myKind = (PersistentLibraryKind<?>) LibraryKind.findById(typeId); if (myKind == null) return; myProperties = myKind.createDefaultProperties(); final Element propertiesElement = element.getChild(PROPERTIES_ELEMENT); if (propertiesElement != null) { ComponentSerializationUtil.loadComponentState(myProperties, propertiesElement); } }
LibraryImpl(LibraryTable table, Element element, ModifiableRootModel rootModel) throws InvalidDataException { this( table, rootModel, null, element.getAttributeValue(LIBRARY_NAME_ATTR), (PersistentLibraryKind<?>) LibraryKind.findById(element.getAttributeValue(LIBRARY_TYPE_ATTR))); readProperties(element); myJarDirectories.readExternal(element); readRoots(element); myRootsWatcher.updateWatchedRoots(); }
public MoonLibraryType() { super(LibraryKind.<MoonLibraryProperties>create(MOON_LIBRARY_TYPE_ID)); }
/** Created by IntelliJ IDEA. User: Jon S Akhtar Date: 8/24/12 Time: 6:09 PM */ public interface LuaLibrary { String LUA_LIBRARY_TYPE_ID = "Lua"; String LUA_LIBRARY_CATEGORY_NAME = "Lua"; String LUA_LIBRARY_KIND_ID = "Lua"; LibraryKind KIND = LibraryKind.create(LUA_LIBRARY_KIND_ID); }