extract coverage plugin

This commit is contained in:
Anna Kozlova
2009-08-31 14:38:23 +04:00
parent 3f3df4fcdf
commit ab067179df
11 changed files with 84 additions and 25 deletions
@@ -70,4 +70,12 @@ public abstract class RunConfigurationExtension {
public abstract void readExternal(ModuleBasedConfiguration runConfiguration, Element element) throws InvalidDataException;
public abstract void writeExternal(ModuleBasedConfiguration runConfiguration, Element element) throws WriteExternalException;
public abstract <T extends ModuleBasedConfiguration & RunJavaConfiguration> void patchConfiguration(T runJavaConfiguration);
public static <T extends ModuleBasedConfiguration & RunJavaConfiguration> void patchCreatedConfiguration(T configuration) {
for (RunConfigurationExtension extension : Extensions.getExtensions(EP_NAME)) {
extension.patchConfiguration(configuration);
}
}
}
@@ -1,6 +1,7 @@
package com.intellij.execution;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.Nullable;
public interface RunJavaConfiguration {
int VM_PARAMETERS_PROPERTY = 0;
@@ -19,4 +20,11 @@ public interface RunJavaConfiguration {
String getAlternativeJrePath();
void setAlternativeJrePath(String ALTERNATIVE_JRE_PATH);
@Nullable
String getRunClass();
@Nullable
String getPackage();
}
@@ -156,6 +156,17 @@ public class ApplicationConfiguration extends ModuleBasedConfiguration<JavaRunCo
}
}
@Nullable
public String getRunClass() {
return MAIN_CLASS_NAME;
}
@Nullable
public String getPackage() {
return null;
}
public boolean isAlternativeJrePathEnabled() {
return ALTERNATIVE_JRE_PATH_ENABLED;
}
@@ -2,6 +2,7 @@ package com.intellij.execution.application;
import com.intellij.execution.JavaExecutionUtil;
import com.intellij.execution.Location;
import com.intellij.execution.RunConfigurationExtension;
import com.intellij.execution.actions.ConfigurationContext;
import com.intellij.execution.configurations.ConfigurationUtil;
import com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl;
@@ -53,6 +54,7 @@ public class ApplicationConfigurationProducer extends JavaRuntimeConfigurationPr
configuration.MAIN_CLASS_NAME = JavaExecutionUtil.getRuntimeQualifiedName(aClass);
configuration.setName(configuration.getGeneratedName());
setupConfigurationModule(context, configuration);
RunConfigurationExtension.patchCreatedConfiguration(configuration);
copyStepsBeforeRun(project, configuration);
return settings;
}