public static void createAndAddSdk(@NotNull String interpreterPath, @NotNull PerlHostData hostData, @NotNull PerlVersionManagerData versionManagerData, @Nullable Consumer<Sdk> sdkConsumer, @NotNull Project project) { createSdk(interpreterPath, hostData, versionManagerData, sdk -> { PerlSdkTable.getInstance().addJdk(sdk); if (sdkConsumer != null) { sdkConsumer.accept(sdk); } PerlRunUtil.refreshSdkDirs(sdk, project); }); }
protected void addSdk() { PerlSdkType.createSdk( "/usr/bin/perl", PerlHostHandler.getDefaultHandler().createData(), PerlVersionManagerHandler.getDefaultHandler().createData(), sdk -> { PerlSdkTable.getInstance().addJdk(sdk, getTestRootDisposable()); PerlProjectManager.getInstance(getProject()).setProjectSdk(sdk); PerlRunUtil.refreshSdkDirs(sdk, getProject()); }); }
protected void setUpLibrary() { Application application = ApplicationManager.getApplication(); application.invokeAndWait(() -> application.runWriteAction( () -> { VirtualFile libdir = LocalFileSystem.getInstance().refreshAndFindFileByPath("../testData/testlib"); assert libdir != null; PerlProjectManager perlProjectManager = PerlProjectManager.getInstance(getProject()); ProjectJdkImpl testSdk = PerlSdkTable.getInstance().createSdk("test"); testSdk.setSdkAdditionalData(new PerlSdkAdditionalData( PerlHostHandler.getDefaultHandler().createData(), PerlVersionManagerData.getDefault(), PerlImplementationHandler.getDefaultHandler().createData())); PerlSdkTable.getInstance().addJdk(testSdk, getTestRootDisposable()); perlProjectManager.setProjectSdk(testSdk); perlProjectManager.addExternalLibrary(libdir); CodeInsightTestFixtureImpl.ensureIndexesUpToDate(getProject()); })); }