aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaphael <raphael@google.com>2011-12-16 15:49:43 -0800
committerRaphael <raphael@google.com>2011-12-16 16:56:28 -0800
commitd09ef044f4f0d6dbcb98d152c9d2ee4f21c5cb0a (patch)
tree1dfe63736f645ac3dd9b19b2bcdda7f50df08f3a
parentd5f733212db0aaa7b80d0f9d7184f8cc6943503d (diff)
downloadsdk-d09ef044f4f0d6dbcb98d152c9d2ee4f21c5cb0a.zip
sdk-d09ef044f4f0d6dbcb98d152c9d2ee4f21c5cb0a.tar.gz
sdk-d09ef044f4f0d6dbcb98d152c9d2ee4f21c5cb0a.tar.bz2
SDK Manager: list/update sdk --all
This renames the list/update sdk --obsolete flag to --all (-a shortcut) to better reflect what the code actually does. SDK Bug: 23004 Change-Id: Ide60f3de97767283e7574a92d4ec96b0e5d4fd86
-rw-r--r--sdkmanager/app/src/com/android/sdkmanager/Main.java52
-rw-r--r--sdkmanager/app/src/com/android/sdkmanager/SdkCommandLine.java27
-rwxr-xr-xsdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterLogic.java22
-rwxr-xr-xsdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterNoWindow.java12
-rwxr-xr-xsdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdaterData.java24
5 files changed, 89 insertions, 48 deletions
diff --git a/sdkmanager/app/src/com/android/sdkmanager/Main.java b/sdkmanager/app/src/com/android/sdkmanager/Main.java
index 06dea46..0129766 100644
--- a/sdkmanager/app/src/com/android/sdkmanager/Main.java
+++ b/sdkmanager/app/src/com/android/sdkmanager/Main.java
@@ -371,29 +371,45 @@ public class Main {
}
private void displayRemoteSdkListNoUI() {
- boolean force = mSdkCommandLine.getFlagForce();
- boolean useHttp = mSdkCommandLine.getFlagNoHttps();
- boolean obsolete = mSdkCommandLine.getFlagObsolete();
+ boolean force = mSdkCommandLine.getFlagForce();
+ boolean useHttp = mSdkCommandLine.getFlagNoHttps();
+ boolean all = mSdkCommandLine.getFlagAll();
boolean extended = mSdkCommandLine.getFlagExtended();
String proxyHost = mSdkCommandLine.getParamProxyHost();
String proxyPort = mSdkCommandLine.getParamProxyPort();
- SdkUpdaterNoWindow upd = new SdkUpdaterNoWindow(mOsSdkFolder, mSdkManager, mSdkLog,
- force, useHttp, proxyHost, proxyPort);
- upd.listRemotePackages(obsolete, extended);
+ boolean obsolete = mSdkCommandLine.getFlagObsolete();
+ all |= obsolete;
+
+ SdkUpdaterNoWindow upd = new SdkUpdaterNoWindow(
+ mOsSdkFolder,
+ mSdkManager,
+ mSdkLog,
+ force,
+ useHttp,
+ proxyHost,
+ proxyPort);
+ upd.listRemotePackages(all, extended);
+
+ if (obsolete) {
+ mSdkLog.printf("Note: Flag --obsolete is deprecated and will be removed in the next version.\n Please use --all instead.\n");
+ }
}
/**
* Updates the whole SDK without any UI, just using console output.
*/
private void updateSdkNoUI() {
- boolean force = mSdkCommandLine.getFlagForce();
- boolean useHttp = mSdkCommandLine.getFlagNoHttps();
- boolean dryMode = mSdkCommandLine.getFlagDryMode();
- boolean obsolete = mSdkCommandLine.getFlagObsolete();
+ boolean force = mSdkCommandLine.getFlagForce();
+ boolean useHttp = mSdkCommandLine.getFlagNoHttps();
+ boolean dryMode = mSdkCommandLine.getFlagDryMode();
+ boolean all = mSdkCommandLine.getFlagAll();
String proxyHost = mSdkCommandLine.getParamProxyHost();
String proxyPort = mSdkCommandLine.getParamProxyPort();
+ boolean obsolete = mSdkCommandLine.getFlagObsolete();
+ all |= obsolete;
+
// Check filter types.
Pair<String, ArrayList<String>> filterResult =
checkFilterValues(mSdkCommandLine.getParamFilter());
@@ -402,9 +418,19 @@ public class Main {
errorAndExit(filterResult.getFirst());
}
- SdkUpdaterNoWindow upd = new SdkUpdaterNoWindow(mOsSdkFolder, mSdkManager, mSdkLog,
- force, useHttp, proxyHost, proxyPort);
- upd.updateAll(filterResult.getSecond(), obsolete, dryMode);
+ SdkUpdaterNoWindow upd = new SdkUpdaterNoWindow(
+ mOsSdkFolder,
+ mSdkManager,
+ mSdkLog,
+ force,
+ useHttp,
+ proxyHost,
+ proxyPort);
+ upd.updateAll(filterResult.getSecond(), all, dryMode);
+
+ if (obsolete) {
+ mSdkLog.printf("Note: Flag --obsolete is deprecated and will be removed in the next version.\n Please use --all instead.\n");
+ }
}
/**
diff --git a/sdkmanager/app/src/com/android/sdkmanager/SdkCommandLine.java b/sdkmanager/app/src/com/android/sdkmanager/SdkCommandLine.java
index e334e62..0390580 100644
--- a/sdkmanager/app/src/com/android/sdkmanager/SdkCommandLine.java
+++ b/sdkmanager/app/src/com/android/sdkmanager/SdkCommandLine.java
@@ -79,7 +79,7 @@ class SdkCommandLine extends CommandLineProcessor {
public static final String KEY_PROXY_PORT = "proxy-port"; //$NON-NLS-1$
public static final String KEY_PROXY_HOST = "proxy-host"; //$NON-NLS-1$
public static final String KEY_DRY_MODE = "dry-mode"; //$NON-NLS-1$
- public static final String KEY_OBSOLETE = "obsolete"; //$NON-NLS-1$
+ public static final String KEY_ALL = "all"; //$NON-NLS-1$
public static final String KEY_EXTENDED = "extended"; //$NON-NLS-1$
public static final String KEY_SNAPSHOT = "snapshot"; //$NON-NLS-1$
public static final String KEY_COMPACT = "compact"; //$NON-NLS-1$
@@ -259,8 +259,13 @@ class SdkCommandLine extends CommandLineProcessor {
null);
define(Mode.BOOLEAN, false,
- VERB_LIST, OBJECT_SDK, "o", KEY_OBSOLETE, //$NON-NLS-1$
- "Lists all packages (including obsolete and installed ones)",
+ VERB_LIST, OBJECT_SDK, "a", KEY_ALL, //$NON-NLS-1$
+ "Lists all available packages (including obsolete and installed ones)",
+ false);
+
+ define(Mode.BOOLEAN, false,
+ VERB_LIST, OBJECT_SDK, "o", "obsolete", //$NON-NLS-1$
+ "Deprecated. Please use --all instead.",
false);
define(Mode.BOOLEAN, false,
@@ -301,8 +306,13 @@ class SdkCommandLine extends CommandLineProcessor {
null);
define(Mode.BOOLEAN, false,
- VERB_UPDATE, OBJECT_SDK, "o", KEY_OBSOLETE, //$NON-NLS-1$
- "Installs obsolete packages.",
+ VERB_UPDATE, OBJECT_SDK, "a", KEY_ALL, //$NON-NLS-1$
+ "Includes all packages (such as obsolete and non-dependent ones.)",
+ false);
+
+ define(Mode.BOOLEAN, false,
+ VERB_UPDATE, OBJECT_SDK, "p", "obsolete", //$NON-NLS-1$
+ "Deprecated. Please use --all instead.",
false);
define(Mode.BOOLEAN, false,
@@ -533,7 +543,12 @@ class SdkCommandLine extends CommandLineProcessor {
/** Helper to retrieve the --obsolete flag. */
public boolean getFlagObsolete() {
- return ((Boolean) getValue(null, null, KEY_OBSOLETE)).booleanValue();
+ return ((Boolean) getValue(null, null, "obsolete")).booleanValue();
+ }
+
+ /** Helper to retrieve the --all flag. */
+ public boolean getFlagAll() {
+ return ((Boolean) getValue(null, null, KEY_ALL)).booleanValue();
}
/** Helper to retrieve the --extended flag. */
diff --git a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterLogic.java b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterLogic.java
index c24ec55..60c0909 100755
--- a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterLogic.java
+++ b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterLogic.java
@@ -70,7 +70,7 @@ class SdkUpdaterLogic {
public List<ArchiveInfo> getAllRemoteArchives(
SdkSources sources,
Package[] localPkgs,
- boolean includeObsoletes) {
+ boolean includeAll) {
List<Package> remotePkgs = new ArrayList<Package>();
SdkSource[] remoteSources = sources.getAllSources();
@@ -79,7 +79,7 @@ class SdkUpdaterLogic {
ArrayList<Archive> archives = new ArrayList<Archive>();
for (Package remotePkg : remotePkgs) {
// Only look for non-obsolete updates unless requested to include them
- if (includeObsoletes || !remotePkg.isObsolete()) {
+ if (includeAll || !remotePkg.isObsolete()) {
// Found a suitable update. Only accept the remote package
// if it provides at least one compatible archive
@@ -137,7 +137,7 @@ class SdkUpdaterLogic {
Collection<Archive> selectedArchives,
SdkSources sources,
Package[] localPkgs,
- boolean includeObsoletes) {
+ boolean includeAll) {
List<ArchiveInfo> archives = new ArrayList<ArchiveInfo>();
List<Package> remotePkgs = new ArrayList<Package>();
@@ -154,7 +154,7 @@ class SdkUpdaterLogic {
localArchives,
remotePkgs,
remoteSources,
- includeObsoletes);
+ includeAll);
}
// Once we have a list of packages to install, we try to solve all their
@@ -198,7 +198,7 @@ class SdkUpdaterLogic {
* already scheduled for install. This method will add to the list.
* @param sources The list of all sources, to fetch them as necessary.
* @param localPkgs The list of all currently installed packages.
- * @param includeObsoletes When true, this will list all platform
+ * @param includeAll When true, this will list all platforms.
* (included these lower than the highest installed one) as well as
* all obsolete packages of these platforms.
*/
@@ -206,7 +206,7 @@ class SdkUpdaterLogic {
Collection<ArchiveInfo> archives,
SdkSources sources,
Package[] localPkgs,
- boolean includeObsoletes) {
+ boolean includeAll) {
// Create ArchiveInfos out of local (installed) packages.
ArchiveInfo[] localArchives = createLocalArchives(localPkgs);
@@ -217,7 +217,7 @@ class SdkUpdaterLogic {
float currentAddonScore = 0;
float currentDocScore = 0;
HashMap<String, Float> currentExtraScore = new HashMap<String, Float>();
- if (!includeObsoletes) {
+ if (!includeAll) {
if (localPkgs != null) {
for (Package p : localPkgs) {
int rev = p.getRevision();
@@ -257,7 +257,7 @@ class SdkUpdaterLogic {
for (Package p : remotePkgs) {
// Skip obsolete packages unless requested to include them.
- if (p.isObsolete() && !includeObsoletes) {
+ if (p.isObsolete() && !includeAll) {
continue;
}
@@ -314,7 +314,7 @@ class SdkUpdaterLogic {
if (pp.getIncludedAbi() == null) {
for (Package p2 : remotePkgs) {
if (!(p2 instanceof SystemImagePackage) ||
- (p2.isObsolete() && !includeObsoletes)) {
+ (p2.isObsolete() && !includeAll)) {
continue;
}
SystemImagePackage sip = (SystemImagePackage) p2;
@@ -395,7 +395,7 @@ class SdkUpdaterLogic {
ArchiveInfo[] localArchives,
Collection<Package> remotePkgs,
SdkSource[] remoteSources,
- boolean includeObsoletes) {
+ boolean includeAll) {
ArrayList<Archive> updates = new ArrayList<Archive>();
fetchRemotePackages(remotePkgs, remoteSources);
@@ -409,7 +409,7 @@ class SdkUpdaterLogic {
for (Package remotePkg : remotePkgs) {
// Only look for non-obsolete updates unless requested to include them
- if ((includeObsoletes || !remotePkg.isObsolete()) &&
+ if ((includeAll || !remotePkg.isObsolete()) &&
localPkg.canBeUpdatedBy(remotePkg) == UpdateInfo.UPDATE) {
// Found a suitable update. Only accept the remote package
// if it provides at least one compatible archive
diff --git a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterNoWindow.java b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterNoWindow.java
index 3fe5bff..26dd5c5 100755
--- a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterNoWindow.java
+++ b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/SdkUpdaterNoWindow.java
@@ -102,25 +102,25 @@ public class SdkUpdaterNoWindow {
*
* @param pkgFilter A list of {@link SdkRepoConstants#NODES} to limit the type of packages
* we can update. A null or empty list means to update everything possible.
- * @param includeObsoletes True to also list and install obsolete packages.
+ * @param includeAll True to list and install all packages, including obsolete ones.
* @param dryMode True to check what would be updated/installed but do not actually
* download or install anything.
*/
public void updateAll(
ArrayList<String> pkgFilter,
- boolean includeObsoletes,
+ boolean includeAll,
boolean dryMode) {
- mUpdaterData.updateOrInstallAll_NoGUI(pkgFilter, includeObsoletes, dryMode);
+ mUpdaterData.updateOrInstallAll_NoGUI(pkgFilter, includeAll, dryMode);
}
/**
* Lists remote packages available for install using 'android update sdk --no-ui'.
*
- * @param includeObsoletes True to also list and install obsolete packages.
+ * @param includeAll True to list and install all packages, including obsolete ones.
* @param extendedOutput True to display more details on each package.
*/
- public void listRemotePackages(boolean includeObsoletes, boolean extendedOutput) {
- mUpdaterData.listRemotePackages_NoGUI(includeObsoletes, extendedOutput);
+ public void listRemotePackages(boolean includeAll, boolean extendedOutput) {
+ mUpdaterData.listRemotePackages_NoGUI(includeAll, extendedOutput);
}
// -----
diff --git a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdaterData.java b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdaterData.java
index 40ba59c..0a89585 100755
--- a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdaterData.java
+++ b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdaterData.java
@@ -710,34 +710,34 @@ public class UpdaterData implements IUpdaterData {
* Used by {@link UpdaterData#listRemotePackages_NoGUI} and
* {@link UpdaterData#updateOrInstallAll_NoGUI}.
*
- * @param includeObsoletes True to also list obsolete packages.
+ * @param includeAll True to list and install all packages, including obsolete ones.
* @return A list of potential {@link ArchiveInfo} to install.
*/
- private List<ArchiveInfo> getRemoteArchives_NoGUI(boolean includeObsoletes) {
+ private List<ArchiveInfo> getRemoteArchives_NoGUI(boolean includeAll) {
refreshSources(true);
loadRemoteAddonsList(new NullTaskMonitor(getSdkLog()));
List<ArchiveInfo> archives;
SdkUpdaterLogic ul = new SdkUpdaterLogic(this);
- if (includeObsoletes) {
+ if (includeAll) {
archives = ul.getAllRemoteArchives(
getSources(),
getLocalSdkParser().getPackages(),
- includeObsoletes);
+ includeAll);
} else {
archives = ul.computeUpdates(
null /*selectedArchives*/,
getSources(),
getLocalSdkParser().getPackages(),
- includeObsoletes);
+ includeAll);
ul.addNewPlatforms(
archives,
getSources(),
getLocalSdkParser().getPackages(),
- includeObsoletes);
+ includeAll);
}
Collections.sort(archives);
@@ -748,12 +748,12 @@ public class UpdaterData implements IUpdaterData {
* Lists remote packages available for install using
* {@link UpdaterData#updateOrInstallAll_NoGUI}.
*
- * @param includeObsoletes True to also list obsolete packages.
+ * @param includeAll True to list and install all packages, including obsolete ones.
* @param extendedOutput True to display more details on each package.
*/
- public void listRemotePackages_NoGUI(boolean includeObsoletes, boolean extendedOutput) {
+ public void listRemotePackages_NoGUI(boolean includeAll, boolean extendedOutput) {
- List<ArchiveInfo> archives = getRemoteArchives_NoGUI(includeObsoletes);
+ List<ArchiveInfo> archives = getRemoteArchives_NoGUI(includeAll);
mSdkLog.printf("Packages available for installation or update: %1$d\n", archives.size());
@@ -790,17 +790,17 @@ public class UpdaterData implements IUpdaterData {
* @param pkgFilter A list of {@link SdkRepoConstants#NODES} or {@link Package#installId()}
* or package indexes to limit the packages we can update or install.
* A null or empty list means to update everything possible.
- * @param includeObsoletes True to also list and install obsolete packages.
+ * @param includeAll True to list and install all packages, including obsolete ones.
* @param dryMode True to check what would be updated/installed but do not actually
* download or install anything.
* @return A list of archives that have been installed. Can be null if nothing was done.
*/
public List<Archive> updateOrInstallAll_NoGUI(
Collection<String> pkgFilter,
- boolean includeObsoletes,
+ boolean includeAll,
boolean dryMode) {
- List<ArchiveInfo> archives = getRemoteArchives_NoGUI(includeObsoletes);
+ List<ArchiveInfo> archives = getRemoteArchives_NoGUI(includeAll);
// Filter the selected archives to only keep the ones matching the filter
if (pkgFilter != null && pkgFilter.size() > 0 && archives != null && archives.size() > 0) {