This commit is contained in:
Alexey Kudravtsev
2011-02-18 13:46:20 +03:00
parent 2a948f153b
commit 32d60badd9
3 changed files with 9 additions and 11 deletions
@@ -33,7 +33,7 @@ import com.intellij.psi.impl.source.tree.JavaElementType;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.tree.IFileElementType;
import com.intellij.psi.tree.TokenSet;
import com.intellij.psi.util.PsiUtil;
import com.intellij.psi.util.PsiUtilBase;
import org.jetbrains.annotations.NotNull;
/**
@@ -82,7 +82,7 @@ public class JavaParserDefinition implements ParserDefinition {
return ((JavaStubElementType)type).createPsi(node);
}
return PsiUtil.NULL_PSI_ELEMENT;
return PsiUtilBase.NULL_PSI_ELEMENT;
}
public PsiFile createFile(final FileViewProvider viewProvider) {
@@ -22,7 +22,6 @@ import com.intellij.lang.ParserDefinition;
import com.intellij.psi.FileViewProvider;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.impl.source.PsiFileImpl;
import com.intellij.psi.impl.source.tree.FileElement;
import com.intellij.psi.tree.IFileElementType;
import org.jetbrains.annotations.NotNull;
@@ -36,9 +35,9 @@ public abstract class PsiFileBase extends PsiFileImpl {
@NotNull private final Language myLanguage;
@NotNull private final ParserDefinition myParserDefinition;
protected PsiFileBase(FileViewProvider viewProvider, @NotNull Language language) {
protected PsiFileBase(@NotNull FileViewProvider viewProvider, @NotNull Language language) {
super(viewProvider);
myLanguage = findLanguage(language);
myLanguage = findLanguage(language, viewProvider);
final ParserDefinition parserDefinition = LanguageParserDefinitions.INSTANCE.forLanguage(myLanguage);
if (parserDefinition == null) {
throw new RuntimeException("PsiFileBase: language.getParserDefinition() returned null.");
@@ -49,8 +48,7 @@ public abstract class PsiFileBase extends PsiFileImpl {
init(nodeType, nodeType);
}
private Language findLanguage(Language baseLanguage) {
final FileViewProvider viewProvider = getViewProvider();
private static Language findLanguage(Language baseLanguage, FileViewProvider viewProvider) {
final Set<Language> languages = viewProvider.getLanguages();
for (final Language actualLanguage : languages) {
if (actualLanguage.isKindOf(baseLanguage)) {
@@ -65,7 +65,7 @@ import java.util.*;
public class PsiDocumentManagerImpl extends PsiDocumentManager implements ProjectComponent, DocumentListener, SettingsSavingComponent {
private static final Logger LOG = Logger.getInstance("#com.intellij.psi.impl.PsiDocumentManagerImpl");
private static final Key<PsiFile> HARD_REF_TO_PSI = new Key<PsiFile>("HARD_REFERENCE_TO_PSI");
private static final Key<Boolean> KEY_COMMITING = new Key<Boolean>("Commiting");
private static final Key<Boolean> KEY_COMMITTING = new Key<Boolean>("Committing");
private static final Key<List<Runnable>> ACTION_AFTER_COMMIT = Key.create("ACTION_AFTER_COMMIT");
private final Project myProject;
@@ -252,7 +252,7 @@ public class PsiDocumentManagerImpl extends PsiDocumentManager implements Projec
ApplicationManager.getApplication().runWriteAction(new CommitToPsiFileAction(document,myProject) {
public void run() {
if (isCommittingDocument(document)) return;
document.putUserData(KEY_COMMITING, Boolean.TRUE);
document.putUserData(KEY_COMMITTING, Boolean.TRUE);
try {
boolean hasCommits = false;
@@ -280,7 +280,7 @@ public class PsiDocumentManagerImpl extends PsiDocumentManager implements Projec
}
}
finally {
document.putUserData(KEY_COMMITING, null);
document.putUserData(KEY_COMMITTING, null);
}
}
});
@@ -703,7 +703,7 @@ public class PsiDocumentManagerImpl extends PsiDocumentManager implements Projec
}
private static boolean isCommittingDocument(final Document doc) {
return doc.getUserData(KEY_COMMITING) == Boolean.TRUE;
return doc.getUserData(KEY_COMMITTING) == Boolean.TRUE;
}
public void save() {