replace int constants by enum

This commit is contained in:
Eugene Kudelevsky
2011-10-14 13:45:44 +04:00
parent 8266eb0004
commit f67ca4e5ba
3 changed files with 37 additions and 23 deletions
@@ -26,6 +26,7 @@ import com.intellij.execution.configurations.*;
import com.intellij.execution.executors.DefaultDebugExecutor;
import com.intellij.execution.runners.ExecutionEnvironment;
import com.intellij.execution.ui.ConsoleView;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
import com.intellij.openapi.project.Project;
@@ -70,11 +71,9 @@ import java.util.Map;
* To change this template use File | Settings | File Templates.
*/
public abstract class AndroidRunConfigurationBase extends ModuleBasedConfiguration<JavaRunConfigurationModule> {
public static final int SHOW_DIALOG = 0;
public static final int EMULATOR = 1;
public static final int USB_DEVICE = 2;
public int TARGET_SELECTION_MODE = EMULATOR;
private static final Logger LOG = Logger.getInstance("#org.jetbrains.android.run.AndroidRunConfigurationBase");
public String TARGET_SELECTION_MODE = TargetSelectionMode.EMULATOR.name();
public String PREFERRED_AVD = "";
public String COMMAND_LINE = "";
public boolean WIPE_USER_DATA = false;
@@ -143,6 +142,21 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
return result;
}
@NotNull
public TargetSelectionMode getTargetSelectionMode() {
try {
return TargetSelectionMode.valueOf(TARGET_SELECTION_MODE);
}
catch (IllegalArgumentException e) {
LOG.info(e);
return TargetSelectionMode.EMULATOR;
}
}
public void setTargetSelectionMode(@NotNull TargetSelectionMode mode) {
TARGET_SELECTION_MODE = mode.name();
}
private static boolean fillRuntimeAndTestDependencies(@NotNull Module module, @NotNull Map<AndroidFacet, String> module2PackageName) {
for (OrderEntry entry : ModuleRootManager.getInstance(module).getOrderEntries()) {
if (entry instanceof ModuleOrderEntry) {
@@ -169,15 +183,6 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
return true;
}
/*private static boolean containsRealDevice(@NotNull IDevice[] devices) {
for (IDevice device : devices) {
if (!device.isEmulator()) {
return true;
}
}
return false;
}*/
public RunProfileState getState(@NotNull final Executor executor, @NotNull ExecutionEnvironment env) throws ExecutionException {
final Module module = getConfigurationModule().getModule();
if (module == null) {
@@ -214,7 +219,7 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
if (!fillRuntimeAndTestDependencies(module, depModule2PackageName)) return null;
TargetChooser targetChooser = null;
switch (TARGET_SELECTION_MODE) {
switch (getTargetSelectionMode()) {
case SHOW_DIALOG:
targetChooser = new ManualTargetChooser();
break;
@@ -146,12 +146,13 @@ public class AndroidRunConfigurationEditor<T extends AndroidRunConfigurationBase
}
}
int targetSelectionMode = configuration.TARGET_SELECTION_MODE;
myShowChooserRadioButton.setSelected(targetSelectionMode == AndroidRunConfigurationBase.SHOW_DIALOG);
myEmulatorRadioButton.setSelected(targetSelectionMode == AndroidRunConfigurationBase.EMULATOR);
myUsbDeviceRadioButton.setSelected(targetSelectionMode == AndroidRunConfigurationBase.USB_DEVICE);
final TargetSelectionMode targetSelectionMode = configuration.getTargetSelectionMode();
myShowChooserRadioButton.setSelected(targetSelectionMode == TargetSelectionMode.SHOW_DIALOG);
myEmulatorRadioButton.setSelected(targetSelectionMode == TargetSelectionMode.EMULATOR);
myUsbDeviceRadioButton.setSelected(targetSelectionMode == TargetSelectionMode.USB_DEVICE);
myAvdComboComponent.setEnabled(targetSelectionMode == AndroidRunConfigurationBase.EMULATOR);
myAvdComboComponent.setEnabled(targetSelectionMode == TargetSelectionMode.EMULATOR);
myCommandLineField.setText(configuration.COMMAND_LINE);
myConfigurationSpecificEditor.resetFrom(configuration);
@@ -166,13 +167,13 @@ public class AndroidRunConfigurationEditor<T extends AndroidRunConfigurationBase
myModuleSelector.applyTo(configuration);
if (myShowChooserRadioButton.isSelected()) {
configuration.TARGET_SELECTION_MODE = AndroidRunConfigurationBase.SHOW_DIALOG;
configuration.setTargetSelectionMode(TargetSelectionMode.SHOW_DIALOG);
}
else if (myEmulatorRadioButton.isSelected()) {
configuration.TARGET_SELECTION_MODE = AndroidRunConfigurationBase.EMULATOR;
configuration.setTargetSelectionMode(TargetSelectionMode.EMULATOR);
}
else if (myUsbDeviceRadioButton.isSelected()) {
configuration.TARGET_SELECTION_MODE = AndroidRunConfigurationBase.USB_DEVICE;
configuration.setTargetSelectionMode(TargetSelectionMode.USB_DEVICE);
}
configuration.COMMAND_LINE = myCommandLineField.getText();
@@ -0,0 +1,8 @@
package org.jetbrains.android.run;
/**
* @author Eugene.Kudelevsky
*/
public enum TargetSelectionMode {
SHOW_DIALOG, EMULATOR, USB_DEVICE
}