Extract parts of plugin that depend on Java-only plugins to idea-jvn

This commit is contained in:
Dmitry Jemerov
2017-08-30 15:19:58 +02:00
parent 8b0d606ab5
commit 895d5fda46
18 changed files with 59 additions and 19 deletions
+1
View File
@@ -63,6 +63,7 @@
<element id="module-output" name="frontend.script" />
<element id="extracted-dir" path="$PROJECT_DIR$/dependencies/json-org.jar" path-in-jar="/" />
<element id="module-output" name="idea-gradle" />
<element id="module-output" name="idea-jvm" />
</element>
<element id="library" level="project" name="javax.inject" />
<element id="directory" name="jps">
+1
View File
@@ -53,6 +53,7 @@
<module fileurl="file://$PROJECT_DIR$/idea/idea-core/idea-core.iml" filepath="$PROJECT_DIR$/idea/idea-core/idea-core.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-gradle/idea-gradle.iml" filepath="$PROJECT_DIR$/idea/idea-gradle/idea-gradle.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-jps-common/idea-jps-common.iml" filepath="$PROJECT_DIR$/idea/idea-jps-common/idea-jps-common.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-jvm/idea-jvm.iml" filepath="$PROJECT_DIR$/idea/idea-jvm/idea-jvm.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-live-templates/idea-live-templates.iml" filepath="$PROJECT_DIR$/idea/idea-live-templates/idea-live-templates.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-maven/idea-maven.iml" filepath="$PROJECT_DIR$/idea/idea-maven/idea-maven.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-repl/idea-repl.iml" filepath="$PROJECT_DIR$/idea/idea-repl/idea-repl.iml" group="ide" />
+1
View File
@@ -11,5 +11,6 @@
<orderEntry type="module" module-name="idea" scope="PROVIDED" />
<orderEntry type="module" module-name="idea-maven" />
<orderEntry type="module" module-name="idea-gradle" />
<orderEntry type="module" module-name="idea-jvm" />
</component>
</module>
+1
View File
@@ -19,5 +19,6 @@
<orderEntry type="module" module-name="js.frontend" />
<orderEntry type="module" module-name="frontend.script" />
<orderEntry type="module" module-name="kotlin-gradle-tooling" />
<orderEntry type="module" module-name="idea-jvm" />
</component>
</module>
+19
View File
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" scope="PROVIDED" name="idea-full" level="project" />
<orderEntry type="library" scope="PROVIDED" name="junit-plugin" level="project" />
<orderEntry type="library" scope="PROVIDED" name="testng-plugin" level="project" />
<orderEntry type="library" scope="PROVIDED" name="coverage-plugin" level="project" />
<orderEntry type="module" module-name="frontend.java" />
<orderEntry type="module" module-name="idea" />
<orderEntry type="module" module-name="light-classes" />
<orderEntry type="library" name="java-decompiler-plugin" level="project" />
</component>
</module>
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
* Copyright 2010-2017 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.
@@ -0,0 +1,32 @@
/*
* Copyright 2010-2017 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 org.jetbrains.kotlin.idea.internal
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.WritingAccessProvider
import com.intellij.openapi.vfs.ex.dummy.DummyFileSystem
class DecompiledFileWritingAccessProvider : WritingAccessProvider() {
override fun isPotentiallyWritable(file: VirtualFile): Boolean {
if (file.fileSystem is DummyFileSystem && file.parent?.name == KOTLIN_DECOMPILED_FOLDER) {
return false
}
return true
}
override fun requestWriting(vararg files: VirtualFile): Collection<VirtualFile> = emptyList()
}
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2016 JetBrains s.r.o.
* Copyright 2010-2017 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.
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
* Copyright 2010-2017 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.
-4
View File
@@ -25,8 +25,6 @@
<orderEntry type="module" module-name="cli-common" />
<orderEntry type="library" name="idea-full" level="project" />
<orderEntry type="library" scope="PROVIDED" name="intellilang-plugin" level="project" />
<orderEntry type="library" scope="PROVIDED" name="junit-plugin" level="project" />
<orderEntry type="library" scope="PROVIDED" name="testng-plugin" level="project" />
<orderEntry type="library" scope="PROVIDED" name="copyright-plugin" level="project" />
<orderEntry type="module" module-name="j2k" />
<orderEntry type="module" module-name="cli" scope="TEST" />
@@ -37,7 +35,6 @@
<orderEntry type="module" module-name="idea-core" />
<orderEntry type="module" module-name="idea-analysis" exported="" />
<orderEntry type="module" module-name="js.frontend" />
<orderEntry type="library" scope="PROVIDED" name="coverage-plugin" level="project" />
<orderEntry type="module" module-name="util" />
<orderEntry type="module" module-name="android-extensions-compiler" scope="TEST" />
<orderEntry type="module" module-name="android-extensions-idea" scope="TEST" />
@@ -53,7 +50,6 @@
<orderEntry type="module" module-name="lint-idea" scope="PROVIDED" />
<orderEntry type="module" module-name="uast-kotlin" scope="PROVIDED" />
<orderEntry type="module" module-name="uast-kotlin-idea" scope="PROVIDED" />
<orderEntry type="library" name="java-decompiler-plugin" level="project" />
<orderEntry type="module" module-name="formatter" />
<orderEntry type="library" scope="TEST" name="native-platform-uberjar" level="project" />
<orderEntry type="module" module-name="allopen-ide" scope="TEST" />
@@ -22,7 +22,6 @@ import com.intellij.openapi.util.io.FileUtil
import com.intellij.openapi.vfs.VfsUtil
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.VirtualFileManager
import com.intellij.openapi.vfs.WritingAccessProvider
import com.intellij.openapi.vfs.ex.dummy.DummyFileSystem
import org.jetbrains.kotlin.idea.util.application.runWriteAction
import org.jetbrains.kotlin.psi.KtFile
@@ -52,13 +51,3 @@ fun getOrCreateDummyRoot(): VirtualFile =
VirtualFileManager.getInstance().refreshAndFindFileByUrl(KOTLIN_DECOMPILED_ROOT) ?:
DummyFileSystem.getInstance().createRoot(KOTLIN_DECOMPILED_FOLDER)
class DecompiledFileWritingAccessProvider : WritingAccessProvider() {
override fun isPotentiallyWritable(file: VirtualFile): Boolean {
if (file.fileSystem is DummyFileSystem && file.parent?.name == KOTLIN_DECOMPILED_FOLDER) {
return false
}
return true
}
override fun requestWriting(vararg files: VirtualFile): Collection<VirtualFile> = emptyList()
}
@@ -16,6 +16,7 @@
package org.jetbrains.kotlin.idea;
import com.google.common.collect.Lists;
import com.intellij.openapi.editor.Caret;
import com.intellij.openapi.editor.Editor;
import com.intellij.rt.execution.junit.FileComparisonFailure;
@@ -26,7 +27,6 @@ import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase;
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase;
import org.jetbrains.kotlin.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TagsTestDataUtil;
import org.testng.collections.Lists;
import java.io.File;