@Override protected void projectClosed() { try { removeSourceDirListener(); CssPreprocessors.getDefault().removeCssPreprocessorsListener(cssPreprocessorsListener); frameworks.projectClosed(); ClassPathProviderImpl cpProvider = lookup.lookup(ClassPathProviderImpl.class); ClassPath[] bootClassPaths = cpProvider.getProjectClassPaths(PhpSourcePath.BOOT_CP); GlobalPathRegistry.getDefault().unregister(PhpSourcePath.BOOT_CP, bootClassPaths); GlobalPathRegistry.getDefault().unregister(PhpSourcePath.PROJECT_BOOT_CP, cpProvider.getProjectClassPaths(PhpSourcePath.PROJECT_BOOT_CP)); GlobalPathRegistry.getDefault().unregister(PhpSourcePath.SOURCE_CP, cpProvider.getProjectClassPaths(PhpSourcePath.SOURCE_CP)); for (ClassPath classPath : bootClassPaths) { IncludePathClassPathProvider.removeProjectIncludePath(classPath); } // internal web server lookup.lookup(InternalWebServer.class).stop(); // browser lookup.lookup(ClientSideDevelopmentSupport.class).close(); JsTestingProvider jsTestingProvider = JsTestingProviders.getDefault().getJsTestingProvider(PhpProject.this, false); if (jsTestingProvider != null) { jsTestingProvider.projectClosed(PhpProject.this); } } finally { // #187060 - exception in projectClosed => project IS closed (so do it in finally block) getCopySupport().projectClosed(); // #192386 LOGGER.finest("PROJECT_CLOSED_FINISHED"); } }
@Override protected void projectClosed() { project.getEvaluator().removePropertyChangeListener(this); removeSiteRootListener(); GlobalPathRegistry.getDefault().unregister(ClassPathProviderImpl.SOURCE_CP, new ClassPath[]{project.getSourceClassPath()}); CssPreprocessors.getDefault().removeCssPreprocessorsListener(project.cssPreprocessorsListener); JsTestingProvider jsTestingProvider = project.getJsTestingProvider(false); if (jsTestingProvider != null) { jsTestingProvider.projectClosed(project); } // browser ClientProjectEnhancedBrowserImplementation enhancedBrowserImpl = project.getEnhancedBrowserImpl(); if (enhancedBrowserImpl != null) { enhancedBrowserImpl.close(); } }
CssPreprocessors.getDefault().removeCssPreprocessorsListener(cssSupport);