diff --git a/plugins/gradle/java/src/service/project/JavaGradleProjectResolver.java b/plugins/gradle/java/src/service/project/JavaGradleProjectResolver.java index 75d8f722256a..6eabbc4f1f1b 100644 --- a/plugins/gradle/java/src/service/project/JavaGradleProjectResolver.java +++ b/plugins/gradle/java/src/service/project/JavaGradleProjectResolver.java @@ -85,7 +85,7 @@ public class JavaGradleProjectResolver extends AbstractProjectResolverExtension } BuildScriptClasspathData buildScriptClasspathData = new BuildScriptClasspathData(GradleConstants.SYSTEM_ID, classpathEntries); buildScriptClasspathData.setGradleHomeDir(buildScriptClasspathModel != null ? buildScriptClasspathModel.getGradleHomeDir() : null); - ideModule.createChild(BuildScriptClasspathData.KEY, GradleProjectResolverUtil.intern(resolverCtx, buildScriptClasspathData)); + ideModule.createChild(BuildScriptClasspathData.KEY, buildScriptClasspathData); nextResolver.populateModuleExtraModels(gradleModule, ideModule); } diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/DefaultProjectResolverContext.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/DefaultProjectResolverContext.java index aca6f5cde5c7..bce533afd153 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/DefaultProjectResolverContext.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/DefaultProjectResolverContext.java @@ -19,8 +19,6 @@ import com.intellij.openapi.externalSystem.model.task.ExternalSystemTaskId; import com.intellij.openapi.externalSystem.model.task.ExternalSystemTaskNotificationListener; import com.intellij.openapi.progress.ProcessCanceledException; import com.intellij.openapi.util.UserDataHolderBase; -import com.intellij.util.containers.HashSetInterner; -import com.intellij.util.containers.Interner; import org.gradle.initialization.BuildLayoutParameters; import org.gradle.tooling.CancellationTokenSource; import org.gradle.tooling.GradleConnector; @@ -52,8 +50,6 @@ public class DefaultProjectResolverContext extends UserDataHolderBase implements @Nullable private String myBuildSrcGroup; @Nullable private BuildEnvironment myBuildEnvironment; - @NotNull private final Interner myInterner = new HashSetInterner(); - public DefaultProjectResolverContext(@NotNull final ExternalSystemTaskId externalSystemTaskId, @NotNull final String projectPath, @Nullable final GradleExecutionSettings settings, @@ -218,10 +214,4 @@ public class DefaultProjectResolverContext extends UserDataHolderBase implements public BuildEnvironment getBuildEnvironment() { return myBuildEnvironment; } - - @NotNull - public T intern(@NotNull T value) { - //noinspection unchecked - return (T)myInterner.intern(value); - } } diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleBuildSrcProjectsResolver.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleBuildSrcProjectsResolver.java index 9d377a9ef975..dda4b22e6c5b 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleBuildSrcProjectsResolver.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleBuildSrcProjectsResolver.java @@ -273,7 +273,7 @@ public class GradleBuildSrcProjectsResolver { DataNode parent = classpathNode.getParent(); assert parent != null; - parent.createChild(BuildScriptClasspathData.KEY, GradleProjectResolverUtil.intern(myResolverContext, buildScriptClasspathData)); + parent.createChild(BuildScriptClasspathData.KEY, buildScriptClasspathData); classpathNode.clear(true); }); } diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleProjectResolverUtil.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleProjectResolverUtil.java index f3dd0e3193c4..71a8e034a034 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleProjectResolverUtil.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/project/GradleProjectResolverUtil.java @@ -588,7 +588,7 @@ public class GradleProjectResolverUtil { for (File artifact: projectDependency.getProjectDependencyArtifacts()) { library.addPath(LibraryPathType.BINARY, artifact.getPath()); } - depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, intern(resolverCtx, libraryDependencyData)); + depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, libraryDependencyData); } else { depOwnerDataNode = ownerDataNode; @@ -604,7 +604,7 @@ public class GradleProjectResolverUtil { moduleDependencyData.setOrder(mergedDependency.getClasspathOrder()); moduleDependencyData.setExported(mergedDependency.getExported()); moduleDependencyData.setModuleDependencyArtifacts(ContainerUtil.map(projectDependencyInfo.dependencyArtifacts, File::getPath)); - depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.MODULE_DEPENDENCY, intern(resolverCtx, moduleDependencyData)); + depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.MODULE_DEPENDENCY, moduleDependencyData); } // put transitive dependencies to the ownerDataNode, @@ -640,7 +640,7 @@ public class GradleProjectResolverUtil { libraryDependencyData.setScope(dependencyScope); libraryDependencyData.setOrder(mergedDependency.getClasspathOrder()); libraryDependencyData.setExported(mergedDependency.getExported()); - depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, intern(resolverCtx, libraryDependencyData)); + depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, libraryDependencyData); } else if (mergedDependency instanceof ExternalMultiLibraryDependency) { final LibraryLevel level = LibraryLevel.MODULE; @@ -664,7 +664,7 @@ public class GradleProjectResolverUtil { library.addPath(LibraryPathType.DOC, file.getAbsolutePath()); } - depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, intern(resolverCtx, libraryDependencyData)); + depOwnerDataNode = ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, libraryDependencyData); } else if (mergedDependency instanceof FileCollectionDependency) { final LibraryLevel level = LibraryLevel.MODULE; @@ -679,7 +679,7 @@ public class GradleProjectResolverUtil { library.addPath(LibraryPathType.BINARY, file.getAbsolutePath()); } - ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, intern(resolverCtx, libraryDependencyData)); + ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, libraryDependencyData); } else if (mergedDependency instanceof UnresolvedExternalDependency) { String libraryName = mergedDependency.getId().getPresentableName(); @@ -691,7 +691,7 @@ public class GradleProjectResolverUtil { LibraryLevel level = linkProjectLibrary(resolverCtx, ideProject, library) ? LibraryLevel.PROJECT : LibraryLevel.MODULE; LibraryDependencyData libraryDependencyData = new LibraryDependencyData(ownerModule, library, level); libraryDependencyData.setScope(dependencyScope); - ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, intern(resolverCtx, libraryDependencyData)); + ownerDataNode.createChild(ProjectKeys.LIBRARY_DEPENDENCY, libraryDependencyData); } if (depOwnerDataNode != null) { @@ -731,22 +731,12 @@ public class GradleProjectResolverUtil { DataNode libraryData = ExternalSystemApiUtil.find(ideProject, ProjectKeys.LIBRARY, node -> libraryName.equals(node.getData().getExternalName())); if (libraryData == null) { - ideProject.createChild(ProjectKeys.LIBRARY, intern(context, library)); + ideProject.createChild(ProjectKeys.LIBRARY, library); return true; } return libraryData.getData().equals(library); } - public static T intern(ProjectResolverContext context, T value) { - // hot fix for hashing issue - return value; - //if (context == null) { - // LOG.warn("ProjectResolverContext should not be null, it is used to intern objects"); - // return value; - //} - //return ((DefaultProjectResolverContext)context).intern(value); - } - public static boolean isIdeaTask(final String taskName, @Nullable String group) { if ((group == null || "ide".equalsIgnoreCase(group)) && StringUtil.containsIgnoreCase(taskName, "idea")) return true; return "other".equalsIgnoreCase(group) && StringUtil.containsIgnoreCase(taskName, "idea");