Remove scopes from switch statements

also change two-case switch statements to if-else
This commit is contained in:
Dominik Schürmann 2016-05-31 08:12:40 +02:00
parent f860257826
commit d6803e1bf4
4 changed files with 46 additions and 84 deletions

View File

@ -557,18 +557,16 @@ public class AppDetails extends AppCompatActivity {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
switch (intent.getAction()) { switch (intent.getAction()) {
case Installer.ACTION_INSTALL_STARTED: { case Installer.ACTION_INSTALL_STARTED:
headerFragment.startProgress(); headerFragment.startProgress();
headerFragment.showIndeterminateProgress(getString(R.string.installing)); headerFragment.showIndeterminateProgress(getString(R.string.installing));
break; break;
} case Installer.ACTION_INSTALL_COMPLETE:
case Installer.ACTION_INSTALL_COMPLETE: {
headerFragment.removeProgress(); headerFragment.removeProgress();
localBroadcastManager.unregisterReceiver(this); localBroadcastManager.unregisterReceiver(this);
break; break;
} case Installer.ACTION_INSTALL_INTERRUPTED:
case Installer.ACTION_INSTALL_INTERRUPTED: {
headerFragment.removeProgress(); headerFragment.removeProgress();
onAppChanged(); onAppChanged();
@ -591,8 +589,7 @@ public class AppDetails extends AppCompatActivity {
localBroadcastManager.unregisterReceiver(this); localBroadcastManager.unregisterReceiver(this);
break; break;
} case Installer.ACTION_INSTALL_USER_INTERACTION:
case Installer.ACTION_INSTALL_USER_INTERACTION: {
PendingIntent installPendingIntent = PendingIntent installPendingIntent =
intent.getParcelableExtra(Installer.EXTRA_USER_INTERACTION_PI); intent.getParcelableExtra(Installer.EXTRA_USER_INTERACTION_PI);
@ -603,10 +600,8 @@ public class AppDetails extends AppCompatActivity {
} }
break; break;
} default:
default: {
throw new RuntimeException("intent action not handled!"); throw new RuntimeException("intent action not handled!");
}
} }
} }
}; };

View File

@ -63,24 +63,17 @@ public class DefaultInstallerActivity extends FragmentActivity {
Intent intent = getIntent(); Intent intent = getIntent();
String action = intent.getAction(); String action = intent.getAction();
switch (action) { if (ACTION_INSTALL_PACKAGE.equals(action)) {
case ACTION_INSTALL_PACKAGE: { installUri = intent.getData();
installUri = intent.getData(); installOriginatingUri = intent.getParcelableExtra(EXTRA_ORIGINATING_URI);
installOriginatingUri = intent.getParcelableExtra(EXTRA_ORIGINATING_URI);
installPackage(installUri, installOriginatingUri); installPackage(installUri, installOriginatingUri);
break; } else if (ACTION_UNINSTALL_PACKAGE.equals(action)) {
} uninstallPackageName = intent.getStringExtra(EXTRA_UNINSTALL_PACKAGE_NAME);
case ACTION_UNINSTALL_PACKAGE: { uninstallPackage(uninstallPackageName);
uninstallPackageName = intent.getStringExtra(EXTRA_UNINSTALL_PACKAGE_NAME); } else {
throw new IllegalStateException("Intent action not specified!");
uninstallPackage(uninstallPackageName);
break;
}
default: {
throw new IllegalStateException("Intent action not specified!");
}
} }
} }
@ -172,7 +165,7 @@ public class DefaultInstallerActivity extends FragmentActivity {
@Override @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) { switch (requestCode) {
case REQUEST_CODE_INSTALL: { case REQUEST_CODE_INSTALL:
/** /**
* resultCode is always 0 on Android < 4.0. See * resultCode is always 0 on Android < 4.0. See
* com.android.packageinstaller.PackageInstallerActivity: setResult is * com.android.packageinstaller.PackageInstallerActivity: setResult is
@ -192,29 +185,25 @@ public class DefaultInstallerActivity extends FragmentActivity {
} }
switch (resultCode) { switch (resultCode) {
case Activity.RESULT_OK: { case Activity.RESULT_OK:
installer.sendBroadcastInstall(installUri, installOriginatingUri, installer.sendBroadcastInstall(installUri, installOriginatingUri,
Installer.ACTION_INSTALL_COMPLETE); Installer.ACTION_INSTALL_COMPLETE);
break; break;
} case Activity.RESULT_CANCELED:
case Activity.RESULT_CANCELED: {
installer.sendBroadcastInstall(installUri, installOriginatingUri, installer.sendBroadcastInstall(installUri, installOriginatingUri,
Installer.ACTION_INSTALL_INTERRUPTED); Installer.ACTION_INSTALL_INTERRUPTED);
break; break;
}
case Activity.RESULT_FIRST_USER: case Activity.RESULT_FIRST_USER:
default: { default:
// AOSP returns Activity.RESULT_FIRST_USER on error // AOSP returns Activity.RESULT_FIRST_USER on error
installer.sendBroadcastInstall(installUri, installOriginatingUri, installer.sendBroadcastInstall(installUri, installOriginatingUri,
Installer.ACTION_INSTALL_INTERRUPTED, Installer.ACTION_INSTALL_INTERRUPTED,
getString(R.string.install_error_unknown)); getString(R.string.install_error_unknown));
break; break;
}
} }
break; break;
} case REQUEST_CODE_UNINSTALL:
case REQUEST_CODE_UNINSTALL: {
// resultCode is always 0 on Android < 4.0. // resultCode is always 0 on Android < 4.0.
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
installer.sendBroadcastUninstall(uninstallPackageName, installer.sendBroadcastUninstall(uninstallPackageName,
@ -223,31 +212,26 @@ public class DefaultInstallerActivity extends FragmentActivity {
} }
switch (resultCode) { switch (resultCode) {
case Activity.RESULT_OK: { case Activity.RESULT_OK:
installer.sendBroadcastUninstall(uninstallPackageName, installer.sendBroadcastUninstall(uninstallPackageName,
Installer.ACTION_UNINSTALL_COMPLETE); Installer.ACTION_UNINSTALL_COMPLETE);
break; break;
} case Activity.RESULT_CANCELED:
case Activity.RESULT_CANCELED: {
installer.sendBroadcastUninstall(uninstallPackageName, installer.sendBroadcastUninstall(uninstallPackageName,
Installer.ACTION_UNINSTALL_INTERRUPTED); Installer.ACTION_UNINSTALL_INTERRUPTED);
break; break;
}
case Activity.RESULT_FIRST_USER: case Activity.RESULT_FIRST_USER:
default: { default:
// AOSP UninstallAppProgress returns RESULT_FIRST_USER on error // AOSP UninstallAppProgress returns RESULT_FIRST_USER on error
installer.sendBroadcastUninstall(uninstallPackageName, installer.sendBroadcastUninstall(uninstallPackageName,
Installer.ACTION_UNINSTALL_INTERRUPTED, Installer.ACTION_UNINSTALL_INTERRUPTED,
getString(R.string.uninstall_error_unknown)); getString(R.string.uninstall_error_unknown));
break; break;
}
} }
break; break;
} default:
default: {
throw new RuntimeException("Invalid request code!"); throw new RuntimeException("Invalid request code!");
}
} }
// after doing the broadcasts, finish this transparent wrapper activity // after doing the broadcasts, finish this transparent wrapper activity

View File

@ -267,56 +267,45 @@ public class InstallManagerService extends Service {
BroadcastReceiver installReceiver = new BroadcastReceiver() { BroadcastReceiver installReceiver = new BroadcastReceiver() {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
switch (intent.getAction()) { Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI);
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);
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); localBroadcastManager.unregisterReceiver(this);
break; break;
} case Installer.ACTION_INSTALL_INTERRUPTED:
case Installer.ACTION_INSTALL_INTERRUPTED: {
Uri originatingUri =
intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI);
String urlString = originatingUri.toString();
String errorMessage = String errorMessage =
intent.getStringExtra(Installer.EXTRA_ERROR_MESSAGE); intent.getStringExtra(Installer.EXTRA_ERROR_MESSAGE);
if (!TextUtils.isEmpty(errorMessage)) { if (!TextUtils.isEmpty(errorMessage)) {
App app = getAppFromActive(urlString); App app = getAppFromActive(originatingUri.toString());
notifyError(app, urlString, errorMessage, false); notifyError(app, originatingUri.toString(), errorMessage, false);
} }
localBroadcastManager.unregisterReceiver(this); localBroadcastManager.unregisterReceiver(this);
break; break;
} case Installer.ACTION_INSTALL_USER_INTERACTION:
case Installer.ACTION_INSTALL_USER_INTERACTION: {
Uri originatingUri =
intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI);
PendingIntent installPendingIntent = PendingIntent installPendingIntent =
intent.getParcelableExtra(Installer.EXTRA_USER_INTERACTION_PI); 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 // show notification if app details is not visible
if (AppDetails.isAppVisible(apk.packageName)) { if (AppDetails.isAppVisible(apkUserInteraction.packageName)) {
cancelNotification(originatingUri.toString()); cancelNotification(originatingUri.toString());
} else { } else {
notifyDownloadComplete(apk, originatingUri.toString(), installPendingIntent); notifyDownloadComplete(apkUserInteraction, originatingUri.toString(), installPendingIntent);
} }
break; break;
} default:
default: {
throw new RuntimeException("intent action not handled!"); throw new RuntimeException("intent action not handled!");
}
} }
} }
}; };

View File

@ -116,19 +116,13 @@ public class InstallerService extends Service {
String packageName = intent.getStringExtra(Installer.EXTRA_PACKAGE_NAME); String packageName = intent.getStringExtra(Installer.EXTRA_PACKAGE_NAME);
Installer installer = InstallerFactory.create(this, packageName); Installer installer = InstallerFactory.create(this, packageName);
switch (intent.getAction()) { if (ACTION_INSTALL.equals(intent.getAction())) {
case ACTION_INSTALL: { Uri uri = intent.getData();
Uri uri = intent.getData(); Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI);
Uri originatingUri = intent.getParcelableExtra(Installer.EXTRA_ORIGINATING_URI);
installer.installPackage(uri, originatingUri, packageName); installer.installPackage(uri, originatingUri, packageName);
break; } else if (ACTION_UNINSTALL.equals(intent.getAction())) {
} installer.uninstallPackage(packageName);
case ACTION_UNINSTALL: {
installer.uninstallPackage(packageName);
break;
}
} }
} }