当前位置: 首页>>代码示例>>Java>>正文


Java JavaExecutionUtil.stepIntoSingleClass方法代码示例

本文整理汇总了Java中com.intellij.execution.JavaExecutionUtil.stepIntoSingleClass方法的典型用法代码示例。如果您正苦于以下问题:Java JavaExecutionUtil.stepIntoSingleClass方法的具体用法?Java JavaExecutionUtil.stepIntoSingleClass怎么用?Java JavaExecutionUtil.stepIntoSingleClass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.execution.JavaExecutionUtil的用法示例。


在下文中一共展示了JavaExecutionUtil.stepIntoSingleClass方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getActivityClass

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Nullable
private static PsiClass getActivityClass(Location location, ConfigurationContext context) {
  final Module module = context.getModule();
  if (module == null) return null;
  location = JavaExecutionUtil.stepIntoSingleClass(location);
  if (location == null) {
    return null;
  }
  PsiElement element = location.getPsiElement();
  JavaPsiFacade facade = JavaPsiFacade.getInstance(element.getProject());
  GlobalSearchScope scope = module.getModuleWithDependenciesAndLibrariesScope(true);
  PsiClass activityClass = facade.findClass(AndroidUtils.ACTIVITY_BASE_CLASS_NAME, scope);
  if (activityClass == null) return null;

  PsiClass elementClass = PsiTreeUtil.getParentOfType(element, PsiClass.class, false);
  while (elementClass != null) {
    if (elementClass.isInheritor(activityClass, true)) {
      return elementClass;
    }
    elementClass = PsiTreeUtil.getParentOfType(elementClass, PsiClass.class);
  }
  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:24,代码来源:AndroidConfigurationProducer.java

示例2: getMainClass

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Nullable
private static PsiClass getMainClass(ConfigurationContext context) {
  Location location = context.getLocation();
  if (location == null) {
    return null;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(location);
  if (location == null) {
    return null;
  }
  PsiElement element = location.getPsiElement();
  if (!element.isPhysical()) {
    return null;
  }
  return ApplicationConfigurationType.getMainClass(element);
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:17,代码来源:BlazeJavaMainClassRunConfigurationProducer.java

示例3: getTestClass

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Nullable
private static ScClass getTestClass(ConfigurationContext context) {
  Location<?> location = context.getLocation();
  if (location == null) {
    return null;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(location);
  if (location == null) {
    return null;
  }
  if (!SmRunnerUtils.getSelectedSmRunnerTreeElements(context).isEmpty()) {
    // handled by a different producer
    return null;
  }
  return getTestClass(location);
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:17,代码来源:BlazeScalaTestClassConfigurationProducer.java

示例4: getMainObject

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Nullable
private static ScObject getMainObject(ConfigurationContext context) {
  Location location = context.getLocation();
  if (location == null) {
    return null;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(context.getLocation());
  if (location == null) {
    return null;
  }
  PsiElement element = location.getPsiElement();
  if (!(element.getContainingFile() instanceof ScalaFile)) {
    return null;
  }
  if (!element.isPhysical()) {
    return null;
  }
  return getMainObjectFromElement(element);
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:20,代码来源:BlazeScalaMainClassRunConfigurationProducer.java

示例5: setupConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
protected boolean setupConfigurationFromContext(JUnitConfiguration configuration,
                                                ConfigurationContext context,
                                                Ref<PsiElement> sourceElement) {
  Location location = JavaExecutionUtil.stepIntoSingleClass(context.getLocation());
  if (location == null) return false;

  if (PatternConfigurationProducer.isMultipleElementsSelected(context)) {
    return false;
  }
  PsiClass testClass = JUnitUtil.getTestClass(location);
  if (testClass == null) return false;
  sourceElement.set(testClass);
  setupConfigurationModule(context, configuration);
  final Module originalModule = configuration.getConfigurationModule().getModule();
  configuration.beClassConfiguration(testClass);
  configuration.restoreOriginalModule(originalModule);
  return true;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:20,代码来源:TestClassConfigurationProducer.java

示例6: createConfigurationByElement

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
protected RunnerAndConfigurationSettings createConfigurationByElement(Location location, ConfigurationContext context) {
  location = JavaExecutionUtil.stepIntoSingleClass(location);
  if (location == null) return null;
  final Project project = location.getProject();
  final PsiElement element = location.getPsiElement();
  myPsiClass = getAppletClass(element, PsiManager.getInstance(project));
  if (myPsiClass == null) return null;
  RunnerAndConfigurationSettings settings = cloneTemplateConfiguration(project, context);
  final AppletConfiguration configuration = (AppletConfiguration)settings.getConfiguration();
  configuration.MAIN_CLASS_NAME = JavaExecutionUtil.getRuntimeQualifiedName(myPsiClass);
  configuration.setModule(myPsiClass.isValid() ? ModuleUtilCore.findModuleForPsiElement(myPsiClass) : null);
  configuration.setGeneratedName();
  return settings;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:AppletConfigurationProducer.java

示例7: isConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
public boolean isConfigurationFromContext(TestNGConfiguration testNGConfiguration, ConfigurationContext context) {
  if (RunConfigurationProducer.getInstance(AbstractTestNGPatternConfigurationProducer.class).isMultipleElementsSelected(context)) {
    return false;
  }
  final RunConfiguration predefinedConfiguration = context.getOriginalConfiguration(TestNGConfigurationType.getInstance());
  final Location contextLocation = context.getLocation();
  if (contextLocation == null) {
    return false;
  }
  Location location = JavaExecutionUtil.stepIntoSingleClass(contextLocation);
  if (location == null) {
    return false;
  }
  final PsiElement element = location.getPsiElement();
  RunnerAndConfigurationSettings template = RunManager.getInstance(location.getProject()).getConfigurationTemplate(getConfigurationFactory());
  final Module predefinedModule = ((TestNGConfiguration)template.getConfiguration()).getConfigurationModule().getModule();
  final String vmParameters =
    predefinedConfiguration instanceof TestNGConfiguration ? ((TestNGConfiguration)predefinedConfiguration).getVMParameters() : null;
  if (vmParameters != null && !Comparing.strEqual(vmParameters, testNGConfiguration.getVMParameters())) return false;
  String paramSetName = contextLocation instanceof PsiMemberParameterizedLocation
                        ? getInvocationNumber(((PsiMemberParameterizedLocation)contextLocation).getParamSetName()) : null;
  if (paramSetName != null && !Comparing.strEqual(paramSetName, testNGConfiguration.getProgramParameters())) return false;
  TestNGTestObject testobject = TestNGTestObject.fromConfig(testNGConfiguration);
  if (testobject != null) {
    if (testobject.isConfiguredByElement(element)) {
      final Module configurationModule = testNGConfiguration.getConfigurationModule().getModule();
      if (Comparing.equal(location.getModule(), configurationModule)) return true;
      if (Comparing.equal(predefinedModule, configurationModule)) return true;
    }
  }
  return false;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:34,代码来源:TestNGConfigurationProducer.java

示例8: getSingleJUnitTestClass

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
/**
 * Returns the {@link TestLocation} corresponding to the single selected JUnit test class, or
 * {@code null} if something else is selected.
 */
@Nullable
private TestLocation getSingleJUnitTestClass(ConfigurationContext context) {
  Location<?> location = context.getLocation();
  if (location == null) {
    return null;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(location);
  if (location == null) {
    return null;
  }

  // check for contexts handled by a different producer
  if (!SmRunnerUtils.getSelectedSmRunnerTreeElements(context).isEmpty()) {
    return null;
  }
  if (JUnitConfigurationUtil.isMultipleElementsSelected(context)) {
    return null;
  }
  if (JavaTestCaseIdentifier.isAnyTestCase(context)) {
    return null;
  }

  PsiClass testClass = JUnitUtil.getTestClass(location);
  if (testClass == null || testClass.hasModifierProperty(PsiModifier.ABSTRACT)) {
    return null;
  }

  TestSize testSize = TestSizeAnnotationMap.getTestSize(testClass);
  TargetInfo target = RunUtil.targetForTestClass(testClass, testSize);
  return target != null ? new TestLocation(testClass, target) : null;
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:36,代码来源:BlazeJavaTestClassConfigurationProducer.java

示例9: findEntryPoint

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Nullable
public static PsiElement findEntryPoint(@Nullable final Location location, @Nullable final Module module) {
  if(location == null || module == null) {
    return null;
  }

  final Location classLocation = JavaExecutionUtil.stepIntoSingleClass(location);

  if(classLocation == null) {
    return null;
  }

  final PsiElement element = classLocation.getPsiElement();

  if(!element.isPhysical()) {
    return null;
  }

  final DefracFacet facet = DefracFacet.getInstance(element);

  if(facet == null || !facet.getPlatform().isAvailableOnHostOS() || facet.getPlatform().isGeneric()) {
    return null;
  }

  if(facet.getPlatform().isAndroid()) {
    return findActivityClass(module, element);
  }

  final PsiElement method = findMainMethod(element);

  if(method != null) {
    return method;
  }

  return ApplicationConfigurationType.getMainClass(element);
}
 
开发者ID:defrac,项目名称:defrac-plugin-intellij,代码行数:37,代码来源:DefracRunUtil.java

示例10: isConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
public boolean isConfigurationFromContext(JUnitConfiguration unitConfiguration, ConfigurationContext context) {
  if (PatternConfigurationProducer.isMultipleElementsSelected(context)) {
    return false;
  }
  final RunConfiguration predefinedConfiguration = context.getOriginalConfiguration(JUnitConfigurationType.getInstance());
  Location location = JavaExecutionUtil.stepIntoSingleClass(context.getLocation());
  final PsiElement element = location.getPsiElement();
  final PsiClass testClass = JUnitUtil.getTestClass(element);
  final PsiMethod testMethod = JUnitUtil.getTestMethod(element, false);
  final PsiPackage testPackage;
  if (element instanceof PsiPackage) {
    testPackage = (PsiPackage)element;
  } else if (element instanceof PsiDirectory){
    testPackage = JavaDirectoryService.getInstance().getPackage(((PsiDirectory)element));
  } else {
    testPackage = null;
  }
  RunnerAndConfigurationSettings template = RunManager.getInstance(location.getProject())
    .getConfigurationTemplate(getConfigurationFactory());
  final Module predefinedModule =
    ((JUnitConfiguration)template
      .getConfiguration()).getConfigurationModule().getModule();
  final String vmParameters = predefinedConfiguration instanceof JUnitConfiguration ? ((JUnitConfiguration)predefinedConfiguration).getVMParameters() : null;

  if (vmParameters != null && !Comparing.strEqual(vmParameters, unitConfiguration.getVMParameters())) return false;
  final TestObject testobject = unitConfiguration.getTestObject();
  if (testobject != null) {
    if (testobject.isConfiguredByElement(unitConfiguration, testClass, testMethod, testPackage)) {
      final Module configurationModule = unitConfiguration.getConfigurationModule().getModule();
      if (Comparing.equal(location.getModule(), configurationModule)) return true;
      if (Comparing.equal(predefinedModule, configurationModule)) {
        return true;
      }
    }
  }
  return false;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:39,代码来源:JUnitConfigurationProducer.java

示例11: setupConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
protected boolean setupConfigurationFromContext(AndroidTestRunConfiguration configuration,
                                                ConfigurationContext context,
                                                Ref<PsiElement> sourceElement) {
  Module module = AndroidUtils.getAndroidModule(context);
  if (module == null) {
    return false;
  }

  Location location = context.getLocation();

  if (location == null) {
    return false;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(location);

  if (location == null) {
    return false;
  }
  final PsiElement element = location.getPsiElement();

  AndroidFacet facet = AndroidFacet.getInstance(module);
  if (facet == null) {
    return false;
  }

  IdeaAndroidProject ideaAndroidProject = facet.getIdeaAndroidProject();
  if (ideaAndroidProject != null && !ideaAndroidProject.getSelectedTestArtifactName().equals(AndroidProject.ARTIFACT_ANDROID_TEST)) {
    // Only suggest the android test run configuration if it makes sense for the selected test artifact.
    return false;
  }

  setupInstrumentationTestRunner(configuration, facet);
  if (setupAllInPackageConfiguration(configuration, element, context, sourceElement)) {
    return true;
  }
  if (setupMethodConfiguration(configuration, element, context, sourceElement)) {
    return true;
  }
  return setupClassConfiguration(configuration, element, context, sourceElement);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:42,代码来源:AndroidTestConfigurationProducer.java

示例12: isConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
public boolean isConfigurationFromContext(AndroidTestRunConfiguration configuration, ConfigurationContext context) {
  Location location = context.getLocation();
  final Module contextModule = AndroidUtils.getAndroidModule(context);

  if (contextModule == null || location == null) {
    return false;
  }
  location = JavaExecutionUtil.stepIntoSingleClass(location);

  if (location == null) {
    return false;
  }
  final PsiElement element = location.getPsiElement();
  final PsiPackage psiPackage = JavaRuntimeConfigurationProducerBase.checkPackage(element);
  final String packageName = psiPackage == null ? null : psiPackage.getQualifiedName();

  final PsiClass elementClass = PsiTreeUtil.getParentOfType(element, PsiClass.class, false);
  final String className = elementClass == null ? null : elementClass.getQualifiedName();

  final PsiMethod elementMethod = PsiTreeUtil.getParentOfType(element, PsiMethod.class, false);
  final String methodName = elementMethod == null ? null : elementMethod.getName();
  final Module moduleInConfig = configuration.getConfigurationModule().getModule();

  if (!Comparing.equal(contextModule, moduleInConfig)) {
    return false;
  }
  switch (configuration.TESTING_TYPE) {
    case AndroidTestRunConfiguration.TEST_ALL_IN_MODULE:
      return psiPackage != null && packageName.isEmpty();

    case AndroidTestRunConfiguration.TEST_ALL_IN_PACKAGE:
      return packageName != null && packageName.equals(configuration.PACKAGE_NAME);

    case AndroidTestRunConfiguration.TEST_CLASS:
      return elementMethod == null && className != null && className.equals(configuration.CLASS_NAME);

    case AndroidTestRunConfiguration.TEST_METHOD:
      return methodName != null && methodName.equals(configuration.METHOD_NAME) &&
             className != null && className.equals(configuration.CLASS_NAME);
  }
  return false;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:44,代码来源:AndroidTestConfigurationProducer.java

示例13: isConfigurationFromContext

import com.intellij.execution.JavaExecutionUtil; //导入方法依赖的package包/类
@Override
public boolean isConfigurationFromContext(T configuration, ConfigurationContext context)
{
	if(isMultipleElementsSelected(context))
	{
		return false;
	}
	final RunConfiguration predefinedConfiguration = context.getOriginalConfiguration(getConfigurationType());
	final Location contextLocation = context.getLocation();
	if(contextLocation == null)
	{
		return false;
	}
	Location location = JavaExecutionUtil.stepIntoSingleClass(contextLocation);
	if(location == null)
	{
		return false;
	}
	final PsiElement element = location.getPsiElement();

	RunnerAndConfigurationSettings template = RunManager.getInstance(location.getProject()).getConfigurationTemplate(getConfigurationFactory());
	final Module predefinedModule = ((T) template.getConfiguration()).getConfigurationModule().getModule();
	final String vmParameters = predefinedConfiguration instanceof CommonJavaRunConfigurationParameters ? ((CommonJavaRunConfigurationParameters) predefinedConfiguration).getVMParameters() :
			null;
	if(vmParameters != null && !Comparing.strEqual(vmParameters, configuration.getVMParameters()))
	{
		return false;
	}
	if(differentParamSet(configuration, contextLocation))
	{
		return false;
	}

	if(configuration.isConfiguredByElement(element))
	{
		final Module configurationModule = configuration.getConfigurationModule().getModule();
		if(Comparing.equal(location.getModule(), configurationModule))
		{
			return true;
		}
		if(Comparing.equal(predefinedModule, configurationModule))
		{
			return true;
		}
	}

	return false;
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:49,代码来源:AbstractJavaTestConfigurationProducer.java


注:本文中的com.intellij.execution.JavaExecutionUtil.stepIntoSingleClass方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。