package org.elixir_lang.mix.runner.exunit;
import com.intellij.compiler.options.CompileStepBeforeRun;
import com.intellij.execution.BeforeRunTask;
import com.intellij.execution.configurations.ConfigurationFactory;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;
import org.jetbrains.annotations.NotNull;
public final class MixExUnitRunConfigurationFactory extends ConfigurationFactory{
private static final MixExUnitRunConfigurationFactory INSTANCE = new MixExUnitRunConfigurationFactory();
private MixExUnitRunConfigurationFactory() {
super(MixExUnitRunConfigurationType.getInstance());
}
@Override
public void configureBeforeRunTaskDefaults(Key<? extends BeforeRunTask> providerID, BeforeRunTask task) {
if(providerID == CompileStepBeforeRun.ID){
task.setEnabled(false);
}
}
@Override
public RunConfiguration createTemplateConfiguration(Project project) {
return new MixExUnitRunConfiguration(MixExUnitRunConfigurationType.TYPE_NAME, project);
}
@NotNull
public static MixExUnitRunConfigurationFactory getInstance(){
return INSTANCE;
}
}