From d6803e1bf4179b2cc91a163984a21f1df499b794 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Tue, 31 May 2016 08:12:40 +0200 Subject: [PATCH] Remove scopes from switch statements also change two-case switch statements to if-else --- .../java/org/fdroid/fdroid/AppDetails.java | 15 ++---- .../installer/DefaultInstallerActivity.java | 52 +++++++------------ .../installer/InstallManagerService.java | 45 ++++++---------- .../fdroid/installer/InstallerService.java | 18 +++---- 4 files changed, 46 insertions(+), 84 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/AppDetails.java b/app/src/main/java/org/fdroid/fdroid/AppDetails.java index 7c918e001..2397a5897 100644 --- a/app/src/main/java/org/fdroid/fdroid/AppDetails.java +++ b/app/src/main/java/org/fdroid/fdroid/AppDetails.java @@ -557,18 +557,16 @@ public class AppDetails extends AppCompatActivity { @Override public void onReceive(Context context, Intent intent) { switch (intent.getAction()) { - case Installer.ACTION_INSTALL_STARTED: { + case Installer.ACTION_INSTALL_STARTED: headerFragment.startProgress(); headerFragment.showIndeterminateProgress(getString(R.string.installing)); break; - } - case Installer.ACTION_INSTALL_COMPLETE: { + case Installer.ACTION_INSTALL_COMPLETE: headerFragment.removeProgress(); localBroadcastManager.unregisterReceiver(this); break; - } - case Installer.ACTION_INSTALL_INTERRUPTED: { + case Installer.ACTION_INSTALL_INTERRUPTED: headerFragment.removeProgress(); onAppChanged(); @@ -591,8 +589,7 @@ public class AppDetails extends AppCompatActivity { localBroadcastManager.unregisterReceiver(this); break; - } - case Installer.ACTION_INSTALL_USER_INTERACTION: { + case Installer.ACTION_INSTALL_USER_INTERACTION: PendingIntent installPendingIntent = intent.getParcelableExtra(Installer.EXTRA_USER_INTERACTION_PI); @@ -603,10 +600,8 @@ public class AppDetails extends AppCompatActivity { } break; - } - default: { + default: throw new RuntimeException("intent action not handled!"); - } } } }; diff --git a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java index 487b6d299..0fd2bfa88 100644 --- a/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/installer/DefaultInstallerActivity.java @@ -63,24 +63,17 @@ public class DefaultInstallerActivity extends FragmentActivity { Intent intent = getIntent(); String action = intent.getAction(); - switch (action) { - case ACTION_INSTALL_PACKAGE: { - installUri = intent.getData(); - installOriginatingUri = intent.getParcelableExtra(EXTRA_ORIGINATING_URI); + if (ACTION_INSTALL_PACKAGE.equals(action)) { + installUri = intent.getData(); + installOriginatingUri = intent.getParcelableExtra(EXTRA_ORIGINATING_URI); - installPackage(installUri, installOriginatingUri); - break; - } + installPackage(installUri, installOriginatingUri); + } else if (ACTION_UNINSTALL_PACKAGE.equals(action)) { + uninstallPackageName = intent.getStringExtra(EXTRA_UNINSTALL_PACKAGE_NAME); - case ACTION_UNINSTALL_PACKAGE: { - uninstallPackageName = intent.getStringExtra(EXTRA_UNINSTALL_PACKAGE_NAME); - - uninstallPackage(uninstallPackageName); - break; - } - default: { - throw new IllegalStateException("Intent action not specified!"); - } + uninstallPackage(uninstallPackageName); + } else { + throw new IllegalStateException("Intent action not specified!"); } } @@ -172,7 +165,7 @@ public class DefaultInstallerActivity extends FragmentActivity { @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { - case REQUEST_CODE_INSTALL: { + case REQUEST_CODE_INSTALL: /** * resultCode is always 0 on Android < 4.0. See * com.android.packageinstaller.PackageInstallerActivity: setResult is @@ -192,29 +185,25 @@ public class DefaultInstallerActivity extends FragmentActivity { } switch (resultCode) { - case Activity.RESULT_OK: { + case Activity.RESULT_OK: installer.sendBroadcastInstall(installUri, installOriginatingUri, Installer.ACTION_INSTALL_COMPLETE); break; - } - case Activity.RESULT_CANCELED: { + case Activity.RESULT_CANCELED: installer.sendBroadcastInstall(installUri, installOriginatingUri, Installer.ACTION_INSTALL_INTERRUPTED); break; - } case Activity.RESULT_FIRST_USER: - default: { + default: // AOSP returns Activity.RESULT_FIRST_USER on error installer.sendBroadcastInstall(installUri, installOriginatingUri, Installer.ACTION_INSTALL_INTERRUPTED, getString(R.string.install_error_unknown)); break; - } } break; - } - case REQUEST_CODE_UNINSTALL: { + case REQUEST_CODE_UNINSTALL: // resultCode is always 0 on Android < 4.0. if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { installer.sendBroadcastUninstall(uninstallPackageName, @@ -223,31 +212,26 @@ public class DefaultInstallerActivity extends FragmentActivity { } switch (resultCode) { - case Activity.RESULT_OK: { + case Activity.RESULT_OK: installer.sendBroadcastUninstall(uninstallPackageName, Installer.ACTION_UNINSTALL_COMPLETE); break; - } - case Activity.RESULT_CANCELED: { + case Activity.RESULT_CANCELED: installer.sendBroadcastUninstall(uninstallPackageName, Installer.ACTION_UNINSTALL_INTERRUPTED); break; - } case Activity.RESULT_FIRST_USER: - default: { + default: // AOSP UninstallAppProgress returns RESULT_FIRST_USER on error installer.sendBroadcastUninstall(uninstallPackageName, Installer.ACTION_UNINSTALL_INTERRUPTED, getString(R.string.uninstall_error_unknown)); break; - } } break; - } - default: { + default: throw new RuntimeException("Invalid request code!"); - } } // after doing the broadcasts, finish this transparent wrapper activity diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java index 41fee0a2d..ee7df07db 100644 --- a/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java +++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallManagerService.java @@ -267,56 +267,45 @@ public class InstallManagerService extends Service { BroadcastReceiver installReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { - switch (intent.getAction()) { - case Installer.ACTION_INSTALL_STARTED: { - break; - } - case Installer.ACTION_INSTALL_COMPLETE: { - Uri originatingUri = - intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); - String urlString = originatingUri.toString(); - Apk apk = removeFromActive(urlString); + Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); - PackageManagerCompat.setInstaller(getPackageManager(), apk.packageName); + switch (intent.getAction()) { + case Installer.ACTION_INSTALL_STARTED: + // nothing to do + break; + case Installer.ACTION_INSTALL_COMPLETE: + Apk apkComplete = removeFromActive(originatingUri.toString()); + + PackageManagerCompat.setInstaller(getPackageManager(), apkComplete.packageName); localBroadcastManager.unregisterReceiver(this); break; - } - case Installer.ACTION_INSTALL_INTERRUPTED: { - Uri originatingUri = - intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); - String urlString = originatingUri.toString(); + case Installer.ACTION_INSTALL_INTERRUPTED: String errorMessage = intent.getStringExtra(Installer.EXTRA_ERROR_MESSAGE); if (!TextUtils.isEmpty(errorMessage)) { - App app = getAppFromActive(urlString); - notifyError(app, urlString, errorMessage, false); + App app = getAppFromActive(originatingUri.toString()); + notifyError(app, originatingUri.toString(), errorMessage, false); } localBroadcastManager.unregisterReceiver(this); break; - } - case Installer.ACTION_INSTALL_USER_INTERACTION: { - Uri originatingUri = - intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); + case Installer.ACTION_INSTALL_USER_INTERACTION: PendingIntent installPendingIntent = intent.getParcelableExtra(Installer.EXTRA_USER_INTERACTION_PI); - Utils.debugLog(TAG, "originatingUri: " + originatingUri); - Apk apk = getApkFromActive(originatingUri.toString()); + Apk apkUserInteraction = getApkFromActive(originatingUri.toString()); // show notification if app details is not visible - if (AppDetails.isAppVisible(apk.packageName)) { + if (AppDetails.isAppVisible(apkUserInteraction.packageName)) { cancelNotification(originatingUri.toString()); } else { - notifyDownloadComplete(apk, originatingUri.toString(), installPendingIntent); + notifyDownloadComplete(apkUserInteraction, originatingUri.toString(), installPendingIntent); } break; - } - default: { + default: throw new RuntimeException("intent action not handled!"); - } } } }; diff --git a/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java b/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java index 323f2de94..397f7c889 100644 --- a/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java +++ b/app/src/main/java/org/fdroid/fdroid/installer/InstallerService.java @@ -116,19 +116,13 @@ public class InstallerService extends Service { String packageName = intent.getStringExtra(Installer.EXTRA_PACKAGE_NAME); Installer installer = InstallerFactory.create(this, packageName); - switch (intent.getAction()) { - case ACTION_INSTALL: { - Uri uri = intent.getData(); - Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); + if (ACTION_INSTALL.equals(intent.getAction())) { + Uri uri = intent.getData(); + Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI); - installer.installPackage(uri, originatingUri, packageName); - break; - } - - case ACTION_UNINSTALL: { - installer.uninstallPackage(packageName); - break; - } + installer.installPackage(uri, originatingUri, packageName); + } else if (ACTION_UNINSTALL.equals(intent.getAction())) { + installer.uninstallPackage(packageName); } }