summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xandroid/src/META-INF/plugin.xml4
-rw-r--r--android/src/com/android/tools/idea/gradle/compiler/GradleCompilerSettingsConfigurable.java1
-rw-r--r--android/src/org/jetbrains/android/AndroidSdkLanguageLevelPusher.java2
-rw-r--r--android/src/org/jetbrains/android/inspections/lint/AndroidLintInspectionBase.java3
-rw-r--r--android/src/org/jetbrains/android/maven/AndroidMavenProviderImpl.java2
-rw-r--r--android/testSrc/com/android/tools/idea/exportSignedPackage/ExportSignedPackageTest.java3
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDataSource.java109
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceProjectComponent.java7
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDataSourcePropertiesDialog.java19
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceStorage.java2
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDbManager.java2
-rw-r--r--android/ultimate/src/org/jetbrains/android/database/AndroidDbUtil.java13
12 files changed, 68 insertions, 99 deletions
diff --git a/android/src/META-INF/plugin.xml b/android/src/META-INF/plugin.xml
index aa3f6a16f63..e45ca64dcff 100755
--- a/android/src/META-INF/plugin.xml
+++ b/android/src/META-INF/plugin.xml
@@ -2,7 +2,7 @@
<name>Android Support</name>
<id>org.jetbrains.android</id>
<description>
- Supports development of Open Handset Alliance Android applications with IntelliJ IDEA.
+ Supports the development of Open Handset Alliance Android applications with IntelliJ IDEA.
</description>
<version>10.0</version>
<vendor>JetBrains</vendor>
@@ -152,7 +152,7 @@
<exportable serviceInterface="com.android.tools.idea.folding.AndroidFoldingSettings"/>
<stepsBeforeRunProvider implementation="com.android.tools.idea.gradle.run.MakeBeforeRunTaskProvider" />
- <projectConfigurable instance="com.android.tools.idea.gradle.compiler.GradleCompilerSettingsConfigurable" id="gradle.compiler"
+ <projectConfigurable groupId="build" instance="com.android.tools.idea.gradle.compiler.GradleCompilerSettingsConfigurable" id="gradle.compiler"
displayName="Compiler"/>
<compiler.optionsManager implementation="com.android.tools.idea.gradle.compiler.HideCompilerOptions" />
diff --git a/android/src/com/android/tools/idea/gradle/compiler/GradleCompilerSettingsConfigurable.java b/android/src/com/android/tools/idea/gradle/compiler/GradleCompilerSettingsConfigurable.java
index bb50b3a390b..a3cba105cad 100644
--- a/android/src/com/android/tools/idea/gradle/compiler/GradleCompilerSettingsConfigurable.java
+++ b/android/src/com/android/tools/idea/gradle/compiler/GradleCompilerSettingsConfigurable.java
@@ -153,6 +153,7 @@ public class GradleCompilerSettingsConfigurable implements SearchableConfigurabl
myVmOptionsEditor.setText(vmOptions);
myAutoMakeCheckBox.setSelected(myCompilerConfiguration.MAKE_PROJECT_ON_SAVE);
myUseInProcessBuildCheckBox.setSelected(myBuildConfiguration.USE_EXPERIMENTAL_FASTER_BUILD);
+ myConfigureOnDemandCheckBox.setSelected(myBuildConfiguration.USE_CONFIGURATION_ON_DEMAND);
myAutoMakeCheckBox.setText("Make project automatically (only works while not running / debugging" +
(PowerSaveMode.isEnabled() ? ", disabled in Power Save mode" : "") +
")");
diff --git a/android/src/org/jetbrains/android/AndroidSdkLanguageLevelPusher.java b/android/src/org/jetbrains/android/AndroidSdkLanguageLevelPusher.java
index 112ca53798b..6af72a73487 100644
--- a/android/src/org/jetbrains/android/AndroidSdkLanguageLevelPusher.java
+++ b/android/src/org/jetbrains/android/AndroidSdkLanguageLevelPusher.java
@@ -85,7 +85,7 @@ public class AndroidSdkLanguageLevelPusher extends AbstractProjectComponent {
return false;
}
if (file.isDirectory()) {
- PushedFilePropertiesUpdater.findAndUpdateValue(project, file, javaPusher, LanguageLevel.HIGHEST);
+ PushedFilePropertiesUpdater.getInstance(project).findAndUpdateValue(file, javaPusher, LanguageLevel.HIGHEST);
}
return true;
}
diff --git a/android/src/org/jetbrains/android/inspections/lint/AndroidLintInspectionBase.java b/android/src/org/jetbrains/android/inspections/lint/AndroidLintInspectionBase.java
index 5787e763b5e..287957901f1 100644
--- a/android/src/org/jetbrains/android/inspections/lint/AndroidLintInspectionBase.java
+++ b/android/src/org/jetbrains/android/inspections/lint/AndroidLintInspectionBase.java
@@ -15,7 +15,6 @@ import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.TextRange;
-import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.profile.codeInspection.InspectionProjectProfileManager;
@@ -348,7 +347,7 @@ public abstract class AndroidLintInspectionBase extends GlobalInspectionTool {
@NotNull
@Override
public String getShortName() {
- return StringUtil.trimEnd(getClass().getSimpleName(), "Inspection");
+ return InspectionProfileEntry.getShortName(getClass().getSimpleName());
}
@NotNull
diff --git a/android/src/org/jetbrains/android/maven/AndroidMavenProviderImpl.java b/android/src/org/jetbrains/android/maven/AndroidMavenProviderImpl.java
index bf2ea606468..aab941ceb41 100644
--- a/android/src/org/jetbrains/android/maven/AndroidMavenProviderImpl.java
+++ b/android/src/org/jetbrains/android/maven/AndroidMavenProviderImpl.java
@@ -122,7 +122,7 @@ public class AndroidMavenProviderImpl implements AndroidMavenProvider {
String resOutputDir,
ResourceProcessor processor) {
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(project).getFileIndex();
- if (!fileIndex.isIgnored(file)) {
+ if (!fileIndex.isExcluded(file)) {
String relPath = VfsUtilCore.getRelativePath(file, sourceRoot, '/');
if (relPath != null && MavenUtil.isIncluded(relPath, includes, excludes)) {
if (processor.process(file, resOutputDir + "/" + relPath)) {
diff --git a/android/testSrc/com/android/tools/idea/exportSignedPackage/ExportSignedPackageTest.java b/android/testSrc/com/android/tools/idea/exportSignedPackage/ExportSignedPackageTest.java
index fe802a5906e..fedd47657e5 100644
--- a/android/testSrc/com/android/tools/idea/exportSignedPackage/ExportSignedPackageTest.java
+++ b/android/testSrc/com/android/tools/idea/exportSignedPackage/ExportSignedPackageTest.java
@@ -21,6 +21,8 @@ import com.google.common.collect.Sets;
import junit.framework.TestCase;
import org.gradle.tooling.GradleConnector;
import org.gradle.tooling.ProjectConnection;
+import org.gradle.util.DistributionLocator;
+import org.gradle.util.GradleVersion;
import org.jetbrains.android.AndroidTestBase;
import org.jetbrains.android.exportSignedPackage.ExportSignedPackageWizard;
import org.jetbrains.annotations.NonNls;
@@ -44,6 +46,7 @@ public class ExportSignedPackageTest extends TestCase {
File projectDir = new File(androidPlugin, BASE_PATH + projectPath);
GradleConnector connector = GradleConnector.newConnector();
connector.forProjectDirectory(projectDir);
+ connector.useDistribution(new DistributionLocator().getDistributionFor(GradleVersion.version("1.10")));
AndroidProject model = null;
ProjectConnection connection = connector.connect();
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSource.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSource.java
index 0fe29fa867e..9e40a8511aa 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSource.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSource.java
@@ -16,7 +16,6 @@ import com.intellij.util.xmlb.annotations.Tag;
import icons.AndroidIcons;
import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import javax.swing.*;
import java.io.IOException;
@@ -32,8 +31,8 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
private State myState = new State();
- public AndroidDataSource(@Nullable String name) {
- super(name, "org.sqlite.JDBC", "", null, null);
+ public AndroidDataSource() {
+ super("", "org.sqlite.JDBC", "", null, null);
}
@NotNull
@@ -43,14 +42,17 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
@NotNull
public State buildFullState() {
- myState.setName(getName());
- myState.setClasspathElements(serializeClasspathElements());
+ myState.name = getName();
+ //myState.uuid = getUniqueId();
+ myState.classpathElements = serializeClasspathElements();
return myState;
}
public void loadState(@NotNull State state) {
myState = state;
- setName(state.getName());
+ setName(state.name);
+ // todo persist uuid must be preserved between sessions
+ //setUniqueId(state.uuid);
setClasspathElements(deserializeClasspathElements());
resetUrl();
}
@@ -80,7 +82,7 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
@NotNull
private List<SimpleClasspathElement> deserializeClasspathElements() {
- final Element[] serializedElements = myState.getClasspathElements();
+ final Element[] serializedElements = myState.classpathElements;
if (serializedElements == null || serializedElements.length == 0) {
return Collections.emptyList();
@@ -107,7 +109,7 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
public String buildLocalDbFileOsPath() {
final State state = getState();
return AndroidRemoteDataBaseManager.buildLocalDbFileOsPath(
- state.getDeviceId(), state.getPackageName(), state.getDatabaseName(), state.isExternal());
+ state.deviceId, state.packageName, state.databaseName, state.external);
}
@Override
@@ -117,15 +119,16 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
@NotNull
public AndroidDataSource copy() {
- final AndroidDataSource newSource = new AndroidDataSource(getName());
- final State newState = newSource.getState();
- final State state = buildFullState();
- newState.setName(state.getName());
- newState.setDeviceId(state.getDeviceId());
- newState.setPackageName(state.getPackageName());
- newState.setDatabaseName(state.getDatabaseName());
- newState.setExternal(state.isExternal());
- newState.setClasspathElements(cloneElementsArray(state.getClasspathElements()));
+ AndroidDataSource newSource = new AndroidDataSource();
+ newSource.setName(getName());
+ State newState = newSource.getState();
+ State state = buildFullState();
+ newState.name = state.name;
+ newState.deviceId = state.deviceId;
+ newState.packageName = state.packageName;
+ newState.databaseName = state.databaseName;
+ newState.external = state.external;
+ newState.classpathElements = cloneElementsArray(state.classpathElements);
newSource.resetUrl();
return newSource;
}
@@ -155,71 +158,25 @@ class AndroidDataSource extends LocalDataSource implements DataSourceInfo, Modif
if (!(o instanceof AndroidDataSource)) return super.equalConfiguration(o);
State s = ((AndroidDataSource)o).getState();
- if (!Comparing.equal(myState.myDeviceId, s.myDeviceId)) return false;
- if (!Comparing.equal(myState.myPackageName, s.myPackageName)) return false;
- if (!Comparing.equal(myState.myDatabaseName, s.myDatabaseName)) return false;
- if (!Comparing.equal(myState.myExternal, s.myExternal)) return false;
- if (!Comparing.equal(myState.myExternal, s.myExternal)) return false;
+ if (!Comparing.equal(myState.deviceId, s.deviceId)) return false;
+ if (!Comparing.equal(myState.packageName, s.packageName)) return false;
+ if (!Comparing.equal(myState.databaseName, s.databaseName)) return false;
+ if (!Comparing.equal(myState.external, s.external)) return false;
+ if (!Comparing.equal(myState.external, s.external)) return false;
return true;
}
@Tag("data-source")
public static class State {
- private String myName = "";
- private String myDeviceId = "";
- private String myPackageName = "";
- private String myDatabaseName = "";
- private boolean myExternal = false;
- private Element[] myClasspathElements = new Element[0];
-
- public String getDeviceId() {
- return myDeviceId;
- }
-
- public String getDatabaseName() {
- return myDatabaseName;
- }
-
- public String getPackageName() {
- return myPackageName;
- }
-
- public String getName() {
- return myName;
- }
-
- public boolean isExternal() {
- return myExternal;
- }
-
+ //@Attribute
+ //public String uuid = "";
+ public String deviceId = "";
+ public String name = "";
+ public String packageName = "";
+ public String databaseName = "";
+ public boolean external = false;
@Tag("classpath-elements")
- public Element[] getClasspathElements() {
- return myClasspathElements;
- }
-
- public void setDeviceId(String deviceId) {
- myDeviceId = deviceId;
- }
-
- public void setDatabaseName(String databaseName) {
- myDatabaseName = databaseName;
- }
-
- public void setPackageName(String packageName) {
- myPackageName = packageName;
- }
-
- public void setExternal(boolean external) {
- myExternal = external;
- }
-
- public void setName(String name) {
- myName = name;
- }
-
- public void setClasspathElements(Element[] classpathElements) {
- myClasspathElements = classpathElements;
- }
+ public Element[] classpathElements = new Element[0];
}
}
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceProjectComponent.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceProjectComponent.java
index 70718e499f0..17d77f098e2 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceProjectComponent.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceProjectComponent.java
@@ -45,7 +45,12 @@ public class AndroidDataSourceProjectComponent extends AbstractProjectComponent
for (AndroidDataSource source : AndroidDataSourceStorage.getInstance(myProject).getDataSources()) {
final AndroidDataSource.State s = source.getState();
- result.add(new AndroidRemoteDbInfo(s.getDeviceId(), s.getPackageName(), s.getDatabaseName(), s.isExternal()));
+ String deviceId = s.deviceId;
+
+ if (deviceId == null) {
+ deviceId = "";
+ }
+ result.add(new AndroidRemoteDbInfo(deviceId, s.packageName, s.databaseName, s.external));
}
return result;
}
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourcePropertiesDialog.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourcePropertiesDialog.java
index 96e0c00462d..d86b8853204 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourcePropertiesDialog.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourcePropertiesDialog.java
@@ -7,6 +7,7 @@ import com.android.ddmlib.MultiLineReceiver;
import com.android.tools.idea.ddms.DeviceComboBoxRenderer;
import com.intellij.database.dataSource.AbstractDataSourceConfigurable;
import com.intellij.database.dataSource.DatabaseDriver;
+import com.intellij.database.util.DbImplUtil;
import com.intellij.facet.ProjectFacetManager;
import com.intellij.javaee.dataSource.AbstractDataSourceConfigurable;
import com.intellij.javaee.dataSource.DatabaseDriver;
@@ -185,7 +186,7 @@ public class AndroidDataSourcePropertiesDialog extends AbstractDataSourceConfigu
private void loadDevices() {
final AndroidDebugBridge bridge = AndroidSdkUtils.getDebugBridge(myProject);
final IDevice[] devices = bridge != null ? getDevicesWithValidDeviceId(bridge) : new IDevice[0];
- final String deviceId = myDataSource.getState().getDeviceId();
+ final String deviceId = myDataSource.getState().deviceId;
final DefaultComboBoxModel model = new DefaultComboBoxModel(devices);
Object selectedItem = null;
@@ -348,10 +349,10 @@ public class AndroidDataSourcePropertiesDialog extends AbstractDataSourceConfigu
public void saveData(@NotNull AndroidDataSource dataSource) {
dataSource.setName(getNameValue());
AndroidDataSource.State state = dataSource.getState();
- state.setDeviceId(getSelectedDeviceId());
- state.setPackageName(getSelectedPackage());
- state.setDatabaseName(getSelectedDatabase());
- state.setExternal(myExternalStorageRadioButton.isSelected());
+ state.deviceId = getSelectedDeviceId();
+ state.packageName = getSelectedPackage();
+ state.databaseName = getSelectedDatabase();
+ state.external = myExternalStorageRadioButton.isSelected();
dataSource.resetUrl();
}
@@ -373,11 +374,11 @@ public class AndroidDataSourcePropertiesDialog extends AbstractDataSourceConfigu
AndroidDataSource.State state = myDataSource.getState();
myNameField.setText(StringUtil.notNullize(myDataSource.getName()));
- myInternalStorageRadioButton.setSelected(!state.isExternal());
- myExternalStorageRadioButton.setSelected(state.isExternal());
+ myInternalStorageRadioButton.setSelected(!state.external);
+ myExternalStorageRadioButton.setSelected(state.external);
- myPackageNameComboBox.getEditor().setItem(StringUtil.notNullize(state.getPackageName()));
- myDataBaseComboBox.getEditor().setItem(StringUtil.notNullize(state.getDatabaseName()));
+ myPackageNameComboBox.getEditor().setItem(StringUtil.notNullize(state.packageName));
+ myDataBaseComboBox.getEditor().setItem(StringUtil.notNullize(state.databaseName));
}
private void registerDeviceListener() {
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceStorage.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceStorage.java
index ff7f387487e..7875fec70aa 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceStorage.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDataSourceStorage.java
@@ -35,7 +35,7 @@ public class AndroidDataSourceStorage implements PersistentStateComponent<Androi
public void loadState(State state) {
myDataSources.clear();
for (AndroidDataSource.State dataSourceState : state.myDataSources) {
- AndroidDataSource dataSource = new AndroidDataSource(null);
+ AndroidDataSource dataSource = new AndroidDataSource();
dataSource.loadState(dataSourceState);
addDataSource(dataSource);
}
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDbManager.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDbManager.java
index 895aef023f9..7a98f604c51 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDbManager.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDbManager.java
@@ -186,7 +186,7 @@ public class AndroidDbManager extends BasicDbPsiManager<AndroidDataSource> {
result = ((AndroidDataSource)copyFrom).copy();
}
else {
- result = new AndroidDataSource("");
+ result = new AndroidDataSource();
}
result.setName(StringUtil.notNullize(newName, getName()));
result.resolveDriver();
diff --git a/android/ultimate/src/org/jetbrains/android/database/AndroidDbUtil.java b/android/ultimate/src/org/jetbrains/android/database/AndroidDbUtil.java
index 23d8ad291a6..b2d703046f0 100644
--- a/android/ultimate/src/org/jetbrains/android/database/AndroidDbUtil.java
+++ b/android/ultimate/src/org/jetbrains/android/database/AndroidDbUtil.java
@@ -1,6 +1,9 @@
package org.jetbrains.android.database;
-import com.android.ddmlib.*;
+import com.android.ddmlib.AndroidDebugBridge;
+import com.android.ddmlib.IDevice;
+import com.android.ddmlib.MultiLineReceiver;
+import com.android.ddmlib.SyncService;
import com.android.tools.idea.ddms.DevicePropertyUtil;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.progress.ProgressIndicator;
@@ -166,7 +169,7 @@ class AndroidDbUtil {
@NotNull AndroidDebugBridge debugBridge,
@NotNull AndroidDbErrorReporter errorReporter) {
final AndroidDataSource.State state = dataSource.getState();
- final String deviceId = state.getDeviceId();
+ final String deviceId = state.deviceId;
if (deviceId == null) {
errorReporter.reportError("device is not specified");
@@ -182,19 +185,19 @@ class AndroidDbUtil {
errorReporter.reportError("the device is not online");
return null;
}
- final String packageName = dataSource.getState().getPackageName();
+ final String packageName = dataSource.getState().packageName;
if (packageName == null || packageName.length() == 0) {
errorReporter.reportError("package name is not specified");
return null;
}
- final String dbName = dataSource.getState().getDatabaseName();
+ final String dbName = dataSource.getState().databaseName;
if (dbName == null || dbName.length() == 0) {
errorReporter.reportError("database name is not specified");
return null;
}
- return new AndroidDbConnectionInfo(device, packageName, dbName, dataSource.getState().isExternal());
+ return new AndroidDbConnectionInfo(device, packageName, dbName, dataSource.getState().external);
}
@Nullable