Search in sources :

Example 46 with Library

use of com.intellij.openapi.roots.libraries.Library in project intellij-community by JetBrains.

the class UsageInArtifact method replaceElement.

@Override
public void replaceElement(final ProjectStructureElement newElement) {
    Library library = ((LibraryProjectStructureElement) newElement).getLibrary();
    PackagingElement<?> newLibraryElement = PackagingElementFactory.getInstance().createLibraryFiles(library.getName(), library.getTable().getTableLevel(), null);
    replaceElement(newLibraryElement);
}
Also used : Library(com.intellij.openapi.roots.libraries.Library) LibraryProjectStructureElement(com.intellij.openapi.roots.ui.configuration.projectRoot.daemon.LibraryProjectStructureElement)

Example 47 with Library

use of com.intellij.openapi.roots.libraries.Library in project intellij-plugins by JetBrains.

the class DartProjectComponent method removeGlobalDartSdkLib.

private void removeGlobalDartSdkLib() {
    for (final Library library : ApplicationLibraryTable.getApplicationTable().getLibraries()) {
        if (DartSdk.DART_SDK_LIB_NAME.equals(library.getName())) {
            final DartSdk oldGlobalSdk = DartSdk.getSdkByLibrary(library);
            if (oldGlobalSdk != null) {
                DartSdkUtil.updateKnownSdkPaths(myProject, oldGlobalSdk.getHomePath());
            }
            ApplicationManager.getApplication().runWriteAction(() -> ApplicationLibraryTable.getApplicationTable().removeLibrary(library));
            return;
        }
    }
}
Also used : DartSdk(com.jetbrains.lang.dart.sdk.DartSdk) Library(com.intellij.openapi.roots.libraries.Library)

Example 48 with Library

use of com.intellij.openapi.roots.libraries.Library in project intellij-plugins by JetBrains.

the class DartSdkLibUtil method createDartSdkLib.

private static void createDartSdkLib(@NotNull final Project project, @NotNull final LibraryTable.ModifiableModel libraryTableModel, @NotNull final String sdkHomePath) {
    final Library existingLib = libraryTableModel.getLibraryByName(DartSdk.DART_SDK_LIB_NAME);
    if (existingLib != null) {
        setupDartSdkRoots(project, existingLib, sdkHomePath);
    } else {
        final Library library = libraryTableModel.createLibrary(DartSdk.DART_SDK_LIB_NAME);
        setupDartSdkRoots(project, library, sdkHomePath);
    }
}
Also used : Library(com.intellij.openapi.roots.libraries.Library)

Example 49 with Library

use of com.intellij.openapi.roots.libraries.Library in project intellij-plugins by JetBrains.

the class DartSdkLibUtil method ensureDartSdkConfigured.

public static void ensureDartSdkConfigured(@NotNull final Project project, @NotNull final String sdkHomePath) {
    final LibraryTable libraryTable = ProjectLibraryTable.getInstance(project);
    final Library library = libraryTable.getLibraryByName(DartSdk.DART_SDK_LIB_NAME);
    if (library == null) {
        final LibraryTable.ModifiableModel model = libraryTable.getModifiableModel();
        createDartSdkLib(project, model, sdkHomePath);
        model.commit();
    } else {
        final DartSdk sdk = DartSdk.getSdkByLibrary(library);
        if (sdk == null || !sdkHomePath.equals(sdk.getHomePath())) {
            setupDartSdkRoots(project, library, sdkHomePath);
        }
    }
}
Also used : ProjectLibraryTable(com.intellij.openapi.roots.impl.libraries.ProjectLibraryTable) LibraryTable(com.intellij.openapi.roots.libraries.LibraryTable) Library(com.intellij.openapi.roots.libraries.Library)

Example 50 with Library

use of com.intellij.openapi.roots.libraries.Library in project intellij-plugins by JetBrains.

the class CucumberConfigUtil method getCucumberCoreVersionImpl.

@Nullable
private static String getCucumberCoreVersionImpl(Module module) {
    for (OrderEntry orderEntry : ModuleRootManager.getInstance(module).getOrderEntries()) {
        if (orderEntry instanceof LibraryOrderEntry) {
            final String libraryName = ((LibraryOrderEntry) orderEntry).getLibraryName();
            final Library library = ((LibraryOrderEntry) orderEntry).getLibrary();
            //libraryName is null for simple jar entries
            if ((libraryName == null || libraryName.toLowerCase().contains("cucumber")) && library != null) {
                final VirtualFile[] files = library.getFiles(OrderRootType.CLASSES);
                for (VirtualFile file : files) {
                    final String version = getVersionByFile(file);
                    if (version != null)
                        return version;
                }
            }
        }
    }
    return getSimpleVersionFromMainClass(module);
}
Also used : VirtualFile(com.intellij.openapi.vfs.VirtualFile) Library(com.intellij.openapi.roots.libraries.Library) Nullable(org.jetbrains.annotations.Nullable)

Aggregations

Library (com.intellij.openapi.roots.libraries.Library)240 LibraryTable (com.intellij.openapi.roots.libraries.LibraryTable)58 VirtualFile (com.intellij.openapi.vfs.VirtualFile)58 Module (com.intellij.openapi.module.Module)41 NotNull (org.jetbrains.annotations.NotNull)31 File (java.io.File)29 LibraryEx (com.intellij.openapi.roots.impl.libraries.LibraryEx)25 Nullable (org.jetbrains.annotations.Nullable)25 LibraryOrderEntry (com.intellij.openapi.roots.LibraryOrderEntry)23 Project (com.intellij.openapi.project.Project)22 ProjectLibraryTable (com.intellij.openapi.roots.impl.libraries.ProjectLibraryTable)20 ArrayList (java.util.ArrayList)15 Sdk (com.intellij.openapi.projectRoots.Sdk)13 ModifiableRootModel (com.intellij.openapi.roots.ModifiableRootModel)13 OrderEntry (com.intellij.openapi.roots.OrderEntry)10 THashSet (gnu.trove.THashSet)9 IOException (java.io.IOException)9 Element (org.jdom.Element)9 OrderRoot (com.intellij.openapi.roots.libraries.ui.OrderRoot)8 LibrariesContainer (com.intellij.openapi.roots.ui.configuration.projectRoot.LibrariesContainer)7