Skip to content

Commit

Permalink
Remove DynamicFeature stub
Browse files Browse the repository at this point in the history
Signed-off-by: Patryk Miś <[email protected]>
  • Loading branch information
PatrykMis committed Mar 26, 2024
1 parent f9158bb commit 1d8708a
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 151 deletions.
4 changes: 0 additions & 4 deletions src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,4 @@
</intent>
</queries>

<application
android:name="com.google.android.accessibility.talkback.TalkBackApplication"
/>

</manifest>

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,8 @@

package com.google.android.accessibility.talkback.dynamicfeature;

import static com.google.android.accessibility.utils.caption.ImageCaptionUtils.CaptionType.ICON_LABEL;
import static com.google.android.accessibility.utils.caption.ImageCaptionUtils.CaptionType.IMAGE_DESCRIPTION;

import android.content.Context;
import androidx.annotation.Nullable;
import com.google.android.accessibility.utils.caption.ImageCaptionUtils.CaptionType;
import com.google.android.play.core.splitinstall.SplitInstallRequest;
import com.google.android.play.core.splitinstall.SplitInstallSessionState;
import com.google.android.play.core.splitinstall.SplitInstallStateUpdatedListener;
import com.google.android.play.core.splitinstall.model.SplitInstallErrorCode;
import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
Expand All @@ -43,11 +32,6 @@ public class FeatureDownloader {

@Nullable private static FeatureDownloader instance;

// Keeps all installed listeners which can be used during the uninstall phase.
private final Set<SplitInstallStateUpdatedListener> installedListeners = new HashSet<>();
private final Map<String, Integer> installStatus = new HashMap<>();
private boolean isInstallStatusUpdated = false;

private FeatureDownloader(Context context) {}

public static FeatureDownloader getInstance(Context context) {
Expand All @@ -57,98 +41,8 @@ public static FeatureDownloader getInstance(Context context) {
return instance;
}

static String captionTypeToModuleName(CaptionType captionType) {
switch (captionType) {
case ICON_LABEL:
return "fake_icon_detection_module_name";
case IMAGE_DESCRIPTION:
return "fake_image_description_module_name";
default:
}
return "";
}

/** Creates a request to install the module. */
public void download(SplitInstallStateUpdatedListener installStateListener, String moduleName) {
ArrayList<String> moduleNameList = new ArrayList<>();
moduleNameList.add(moduleName);
SplitInstallSessionState fakeStateInstalled =
SplitInstallSessionState.create(
/* sessionId= */ 0,
SplitInstallSessionStatus.INSTALLED,
SplitInstallErrorCode.NO_ERROR,
/* bytesDownloaded= */ 0,
/* totalBytesToDownload= */ 0,
moduleNameList,
new ArrayList<>());

for (SplitInstallStateUpdatedListener listener : installedListeners) {
listener.onStateUpdate(fakeStateInstalled);
}
}

/** Uninstalls the module. */
public void uninstall(String moduleName) {
// do nothing.
}

/** Returns {@code true} is the status is in the process of download or installation. */
public boolean isDownloading(@SplitInstallSessionStatus int installStatus) {
return installStatus == SplitInstallSessionStatus.DOWNLOADING
|| installStatus == SplitInstallSessionStatus.DOWNLOADED
|| installStatus == SplitInstallSessionStatus.INSTALLING;
}

/** Checks if the modules is installed. */
public boolean isInstalled(String moduleName) {
return installStatus.get(moduleName).equals(SplitInstallSessionStatus.INSTALLED);
}

public void registerListener(SplitInstallStateUpdatedListener installStateListener) {
installedListeners.add(installStateListener);
}

public void unregisterListener(SplitInstallStateUpdatedListener installStateListener) {
if (!installedListeners.contains(installStateListener)) {
return;
}

installedListeners.remove(installStateListener);
if (installedListeners.isEmpty()) {
isInstallStatusUpdated = false;
}
}

/**
* Returns a {@link SplitInstallSessionStatus} of the {@link SplitInstallRequest} for the given
* module.
*/
@SplitInstallSessionStatus
public int getInstallStatus(String moduleName) {
Integer status = installStatus.get(moduleName);
return status == null ? SplitInstallSessionStatus.UNKNOWN : status;
}

/**
* Updates the {@link SplitInstallSessionStatus} of the {@link SplitInstallRequest} for the given
* module.
*/
public void updateInstallStatus(String moduleName, @SplitInstallSessionStatus int status) {
installStatus.put(moduleName, status);
}

/**
* Updates the {@link SplitInstallSessionStatus} of the {@link SplitInstallRequest} for all
* module.
* Stub method for updating install status of all modules.
*/
public synchronized void updateAllInstallStatuses() {
if (isInstallStatusUpdated) {
return;
}

isInstallStatusUpdated = true;
installStatus.put(captionTypeToModuleName(ICON_LABEL), SplitInstallSessionStatus.INSTALLED);
installStatus.put(
captionTypeToModuleName(IMAGE_DESCRIPTION), SplitInstallSessionStatus.INSTALLED);
}
public synchronized void updateAllInstallStatuses() {}
}

0 comments on commit 1d8708a

Please sign in to comment.