J2K Translator migrated onto Leda

This commit is contained in:
Andrey Breslav
2012-07-24 22:29:07 +04:00
parent cee77c3b7e
commit d8632f81aa
2 changed files with 52 additions and 47 deletions
@@ -15,7 +15,8 @@
*/ */
package org.jetbrains.jet.j2k; package org.jetbrains.jet.j2k;
import com.intellij.core.JavaCoreEnvironment; import com.intellij.core.JavaCoreApplicationEnvironment;
import com.intellij.core.JavaCoreProjectEnvironment;
import com.intellij.lang.java.JavaLanguage; import com.intellij.lang.java.JavaLanguage;
import com.intellij.openapi.Disposable; import com.intellij.openapi.Disposable;
import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.util.text.StringUtil;
@@ -38,38 +39,42 @@ import java.net.URLClassLoader;
* @author ignatov * @author ignatov
*/ */
public class JavaToKotlinTranslator { public class JavaToKotlinTranslator {
private JavaToKotlinTranslator() {
private static final Disposable DISPOSABLE = new Disposable() {
@Override
public void dispose() {
} }
};
private static final Converter CONVERTER = new Converter(); private static final Converter CONVERTER = new Converter();
private JavaToKotlinTranslator() {
}
@Nullable @Nullable
private static PsiFile createFile(@NotNull String text) { private static PsiFile createFile(@NotNull String text) {
JavaCoreEnvironment javaCoreEnvironment = setUpJavaCoreEnvironment(); JavaCoreProjectEnvironment javaCoreEnvironment = setUpJavaCoreEnvironment();
return PsiFileFactory.getInstance(javaCoreEnvironment.getProject()).createFileFromText( return PsiFileFactory.getInstance(javaCoreEnvironment.getProject()).createFileFromText(
"test.java", JavaLanguage.INSTANCE, text "test.java", JavaLanguage.INSTANCE, text
); );
} }
@Nullable @Nullable
static PsiFile createFile(@NotNull JavaCoreEnvironment javaCoreEnvironment, @NotNull String text) { static PsiFile createFile(@NotNull JavaCoreProjectEnvironment javaCoreEnvironment, @NotNull String text) {
return PsiFileFactory.getInstance(javaCoreEnvironment.getProject()).createFileFromText( return PsiFileFactory.getInstance(javaCoreEnvironment.getProject()).createFileFromText(
"test.java", JavaLanguage.INSTANCE, text "test.java", JavaLanguage.INSTANCE, text
); );
} }
@NotNull @NotNull
static JavaCoreEnvironment setUpJavaCoreEnvironment() { static JavaCoreProjectEnvironment setUpJavaCoreEnvironment() {
JavaCoreEnvironment javaCoreEnvironment = new JavaCoreEnvironment(new Disposable() { JavaCoreApplicationEnvironment applicationEnvironment = new JavaCoreApplicationEnvironment(DISPOSABLE);
@Override JavaCoreProjectEnvironment javaCoreEnvironment = new JavaCoreProjectEnvironment(DISPOSABLE, applicationEnvironment);
public void dispose() {
}
});
javaCoreEnvironment.addToClasspath(findRtJar()); javaCoreEnvironment.addJarToClassPath(findRtJar());
File annotations = findAnnotations(); File annotations = findAnnotations();
if (annotations != null && annotations.exists()) { if (annotations != null && annotations.exists()) {
javaCoreEnvironment.addToClasspath(annotations); javaCoreEnvironment.addJarToClassPath(annotations);
} }
return javaCoreEnvironment; return javaCoreEnvironment;
} }
@@ -16,7 +16,7 @@
package org.jetbrains.jet.j2k; package org.jetbrains.jet.j2k;
import com.intellij.core.JavaCoreEnvironment; import com.intellij.core.JavaCoreProjectEnvironment;
import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.io.FileUtil;
import com.intellij.psi.PsiFile; import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiJavaFile; import com.intellij.psi.PsiJavaFile;
@@ -37,7 +37,7 @@ public class StandaloneJavaToKotlinConverterTest extends TestCase {
private final String myDataPath; private final String myDataPath;
private final String myName; private final String myName;
@NotNull @NotNull
private final static JavaCoreEnvironment myJavaCoreEnvironment = JavaToKotlinTranslator.setUpJavaCoreEnvironment(); private final static JavaCoreProjectEnvironment myJavaCoreEnvironment = JavaToKotlinTranslator.setUpJavaCoreEnvironment();
public StandaloneJavaToKotlinConverterTest(String dataPath, String name) { public StandaloneJavaToKotlinConverterTest(String dataPath, String name) {
myDataPath = dataPath; myDataPath = dataPath;