Utility method moved to util class

This commit is contained in:
Andrey Breslav
2012-12-20 17:51:05 +04:00
parent 18de2c8a1f
commit 6dd60ac8b0
2 changed files with 15 additions and 14 deletions
@@ -23,7 +23,6 @@ import com.intellij.openapi.progress.ProcessCanceledException;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.Key;
import com.intellij.openapi.util.SystemInfo;
import com.intellij.psi.*;
import com.intellij.psi.impl.PsiClassImplUtil;
import com.intellij.psi.impl.java.stubs.PsiClassStub;
@@ -53,8 +52,6 @@ import javax.swing.*;
import java.util.Collections;
public class JetLightClass extends AbstractLightClass implements JetJavaMirrorMarker {
private static final Logger LOG = Logger.getInstance(JetLightClass.class);
static class JetBadWrapperException extends RuntimeException {
private final String context;
@@ -171,7 +168,7 @@ public class JetLightClass extends AbstractLightClass implements JetJavaMirrorMa
if (LightClassUtil.belongsToKotlinBuiltIns(file)) {
// We may not fail later due to some luck, but generating JetLightClasses for built-ins is a bad idea anyways
// If it fails later, there will be an exception logged
logErrorWithOSInfo(null);
LightClassUtil.logErrorWithOSInfo(null, qualifiedName, file.getVirtualFile());
}
final PsiJavaFileStubImpl answer = new PsiJavaFileStubImpl(JetPsiUtil.getFQName(file).getFqName(), true);
@@ -223,21 +220,13 @@ public class JetLightClass extends AbstractLightClass implements JetJavaMirrorMa
throw e;
}
catch (RuntimeException e) {
logErrorWithOSInfo(e);
LightClassUtil.logErrorWithOSInfo(e, qualifiedName, file.getVirtualFile());
throw e;
}
return answer;
}
private void logErrorWithOSInfo(@Nullable Throwable cause) {
LOG.error(
"Could not generate JetLightClass for " + qualifiedName + " declared in " + file.getVirtualFile().getPath() + "\n" +
"built-ins dir URL is " + LightClassUtil.getBuiltInsDirResourceUrl() + "\n" +
"System: " + SystemInfo.OS_NAME + " " + SystemInfo.OS_VERSION + " Java Runtime: " + SystemInfo.JAVA_RUNTIME_VERSION,
cause);
}
@Override
public boolean isEquivalentTo(PsiElement another) {
return another instanceof PsiClass && Comparing.equal(((PsiClass)another).getQualifiedName(), getQualifiedName());
@@ -17,9 +17,12 @@
package org.jetbrains.jet.asJava;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.SystemInfo;
import com.intellij.openapi.vfs.VirtualFile;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
import org.jetbrains.jet.utils.KotlinVfsUtil;
@@ -27,7 +30,7 @@ import java.net.MalformedURLException;
import java.net.URL;
public class LightClassUtil {
private static final Logger LOG = Logger.getInstance(JetLightClass.class);
private static final Logger LOG = Logger.getInstance(LightClassUtil.class);
private static final String DEFINITION_OF_ANY = "Any.jet";
/**
@@ -68,5 +71,14 @@ public class LightClassUtil {
return url;
}
/*package*/ static void logErrorWithOSInfo(@Nullable Throwable cause, @NotNull FqName fqName, @Nullable VirtualFile virtualFile) {
String path = virtualFile == null ? "<null>" : virtualFile.getPath();
LOG.error(
"Could not generate LightClass for " + fqName + " declared in " + path + "\n" +
"built-ins dir URL is " + getBuiltInsDirResourceUrl() + "\n" +
"System: " + SystemInfo.OS_NAME + " " + SystemInfo.OS_VERSION + " Java Runtime: " + SystemInfo.JAVA_RUNTIME_VERSION,
cause);
}
private LightClassUtil() {}
}