diff --git a/java/openapi/src/com/intellij/psi/util/TypeConversionUtil.java b/java/openapi/src/com/intellij/psi/util/TypeConversionUtil.java index 4b2f17bc59e0..9897de38240e 100644 --- a/java/openapi/src/com/intellij/psi/util/TypeConversionUtil.java +++ b/java/openapi/src/com/intellij/psi/util/TypeConversionUtil.java @@ -17,7 +17,7 @@ package com.intellij.psi.util; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; -import com.intellij.openapi.roots.ProjectRootManager; +import com.intellij.openapi.roots.ProjectRootModificationTracker; import com.intellij.openapi.util.Key; import com.intellij.pom.java.LanguageLevel; import com.intellij.psi.*; @@ -802,7 +802,7 @@ public class TypeConversionUtil { } }); } - return Result.create(set, ProjectRootManager.getInstance(project)); + return Result.create(set, ProjectRootModificationTracker.getInstance(project)); } }, false)); } diff --git a/platform/core-api/src/com/intellij/openapi/roots/ProjectRootModificationTracker.java b/platform/core-api/src/com/intellij/openapi/roots/ProjectRootModificationTracker.java new file mode 100644 index 000000000000..083bee7884f3 --- /dev/null +++ b/platform/core-api/src/com/intellij/openapi/roots/ProjectRootModificationTracker.java @@ -0,0 +1,29 @@ +/* + * Copyright 2000-2011 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.intellij.openapi.roots; + +import com.intellij.openapi.components.ServiceManager; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.util.ModificationTracker; + +/** + * @author yole + */ +public abstract class ProjectRootModificationTracker implements ModificationTracker { + public static ProjectRootModificationTracker getInstance(Project project) { + return ServiceManager.getService(project, ProjectRootModificationTracker.class); + } +} diff --git a/platform/lang-impl/src/com/intellij/openapi/roots/ProjectRootModificationTrackerImpl.java b/platform/lang-impl/src/com/intellij/openapi/roots/ProjectRootModificationTrackerImpl.java new file mode 100644 index 000000000000..119eb8b87639 --- /dev/null +++ b/platform/lang-impl/src/com/intellij/openapi/roots/ProjectRootModificationTrackerImpl.java @@ -0,0 +1,34 @@ +/* + * Copyright 2000-2011 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.intellij.openapi.roots; + +import com.intellij.openapi.project.Project; + +/** + * @author yole + */ +public class ProjectRootModificationTrackerImpl extends ProjectRootModificationTracker { + private final Project myProject; + + public ProjectRootModificationTrackerImpl(Project project) { + myProject = project; + } + + @Override + public long getModificationCount() { + return ProjectRootManager.getInstance(myProject).getModificationCount(); + } +} diff --git a/platform/platform-resources/src/META-INF/LangExtensions.xml b/platform/platform-resources/src/META-INF/LangExtensions.xml index d967fc9fd69e..a11b1a703a9f 100644 --- a/platform/platform-resources/src/META-INF/LangExtensions.xml +++ b/platform/platform-resources/src/META-INF/LangExtensions.xml @@ -293,6 +293,8 @@ serviceImplementation="com.intellij.openapi.roots.impl.ProjectFileIndexImpl"/> +