class members refactoring refactoring
[fedora-idea.git] / refactoring / impl / com / intellij / refactoring / util / classMembers / UsesDependencyMemberInfoModel.java
blobfe6a97807696cf57198c6f86824d10aadcce5eb3
1 /*
2 * Created by IntelliJ IDEA.
3 * User: dsl
4 * Date: 08.07.2002
5 * Time: 17:55:02
6 * To change template for new class use
7 * Code Style | Class Templates options (Tools | IDE Options).
8 */
9 package com.intellij.refactoring.util.classMembers;
11 import com.intellij.psi.NavigatablePsiElement;
12 import com.intellij.psi.PsiElement;
13 import com.intellij.psi.PsiModifier;
14 import com.intellij.psi.PsiModifierListOwner;
15 import com.intellij.refactoring.classMembers.MemberInfoBase;
16 import com.intellij.refactoring.classMembers.AbstractUsesDependencyMemberInfoModel;
17 import org.jetbrains.annotations.NotNull;
19 public class UsesDependencyMemberInfoModel<T extends NavigatablePsiElement, C extends PsiElement, M extends MemberInfoBase<T>>
20 extends AbstractUsesDependencyMemberInfoModel<T,C,M> {
22 public UsesDependencyMemberInfoModel(C aClass, C superClass, boolean recursive) {
23 super(aClass, superClass, recursive);
26 @Override
27 protected int doCheck(@NotNull M memberInfo, int problem) {
28 final PsiElement member = memberInfo.getMember();
29 if(problem == ERROR
30 && member instanceof PsiModifierListOwner
31 && ((PsiModifierListOwner) member).hasModifierProperty(PsiModifier.STATIC)) {
32 return WARNING;
34 return problem;