This commit is contained in:
Max Medvedev
2012-11-01 10:50:51 +04:00
parent 1d0528ed3c
commit 7a06688fec
2 changed files with 10 additions and 5 deletions
@@ -53,8 +53,10 @@ public class GroovyRunnerUtil {
return null;
}
public static boolean isRunnable(final PsiClass psiClass) {
final PsiClass runnable = JavaPsiFacade.getInstance(psiClass.getProject()).findClass(CommonClassNames.JAVA_LANG_RUNNABLE, psiClass.getResolveScope());
public static boolean isRunnable(@Nullable final PsiClass psiClass) {
if (psiClass == null) return false;
final PsiClass runnable =
JavaPsiFacade.getInstance(psiClass.getProject()).findClass(CommonClassNames.JAVA_LANG_RUNNABLE, psiClass.getResolveScope());
if (runnable == null) return false;
return psiClass instanceof GrTypeDefinition &&
@@ -76,7 +78,8 @@ public class GroovyRunnerUtil {
return module.getModuleName();
}
PsiClass psiClass = JavaPsiFacade.getInstance(project).findClass(qualifiedName.replace('$', '.'), GlobalSearchScope.projectScope(project));
PsiClass psiClass =
JavaPsiFacade.getInstance(project).findClass(qualifiedName.replace('$', '.'), GlobalSearchScope.projectScope(project));
if (psiClass != null) {
return psiClass.getName();
}
@@ -113,10 +113,12 @@ public class GroovyScriptRunConfigurationProducer extends RuntimeConfigurationPr
}
@Nullable
private RunnerAndConfigurationSettings createConfiguration(final PsiClass aClass) {
private RunnerAndConfigurationSettings createConfiguration(@Nullable final PsiClass aClass) {
if (aClass == null) return null;
final Project project = aClass.getProject();
RunnerAndConfigurationSettings settings = RunManagerEx.getInstanceEx(project).createConfiguration("", getConfigurationFactory());
final GroovyScriptRunConfiguration configuration = (GroovyScriptRunConfiguration) settings.getConfiguration();
final GroovyScriptRunConfiguration configuration = (GroovyScriptRunConfiguration)settings.getConfiguration();
final PsiFile file = aClass.getContainingFile().getOriginalFile();
final PsiDirectory dir = file.getContainingDirectory();
if (dir == null) return null;