Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7b7e87ee authored by Richard Ledley's avatar Richard Ledley Committed by Android (Google) Code Review
Browse files

Merge "Use Collection instead of List for entity list" into pi-dev

parents 628f59aa ab669a01
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -50540,7 +50540,7 @@ package android.view.textclassifier {
    method public static android.view.textclassifier.TextClassifier.EntityConfig createWithHints(java.util.Collection<java.lang.String>);
    method public int describeContents();
    method public java.util.Collection<java.lang.String> getHints();
    method public java.util.List<java.lang.String> resolveEntityListModifications(java.util.Collection<java.lang.String>);
    method public java.util.Collection<java.lang.String> resolveEntityListModifications(java.util.Collection<java.lang.String>);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.view.textclassifier.TextClassifier.EntityConfig> CREATOR;
  }
+10 −15
Original line number Diff line number Diff line
@@ -41,8 +41,9 @@ import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

/**
 * Interface for providing text classification related features.
@@ -471,21 +472,15 @@ public interface TextClassifier {
         *
         * This method is intended for use by TextClassifier implementations.
         */
        public List<String> resolveEntityListModifications(@NonNull Collection<String> entities) {
            final ArrayList<String> finalList = new ArrayList<>();
        public Collection<String> resolveEntityListModifications(
                @NonNull Collection<String> entities) {
            final Set<String> finalSet = new HashSet();
            if (mUseHints) {
                for (String entity : entities) {
                    if (!mExcludedEntityTypes.contains(entity)) {
                        finalList.add(entity);
                finalSet.addAll(entities);
            }
                }
            }
            for (String entity : mIncludedEntityTypes) {
                if (!mExcludedEntityTypes.contains(entity) && !finalList.contains(entity)) {
                    finalList.add(entity);
                }
            }
            return finalList;
            finalSet.addAll(mIncludedEntityTypes);
            finalSet.removeAll(mExcludedEntityTypes);
            return finalSet;
        }

        /**
@@ -566,7 +561,7 @@ public interface TextClassifier {
            final String string = request.getText().toString();
            final TextLinks.Builder links = new TextLinks.Builder(string);

            final List<String> entities = request.getEntityConfig()
            final Collection<String> entities = request.getEntityConfig()
                    .resolveEntityListModifications(Collections.emptyList());
            if (entities.contains(TextClassifier.TYPE_URL)) {
                addLinks(links, string, TextClassifier.TYPE_URL);
+2 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import org.junit.runner.RunWith;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -105,7 +106,7 @@ public class TextLinksTest {
        assertEquals("en-US,de-DE", result.getDefaultLocales().toLanguageTags());
        assertEquals(new String[]{TextClassifier.HINT_TEXT_IS_EDITABLE},
                result.getEntityConfig().getHints().toArray());
        assertEquals(Arrays.asList("a", "c"),
        assertEquals(new HashSet<String>(Arrays.asList("a", "c")),
                result.getEntityConfig().resolveEntityListModifications(Collections.emptyList()));
    }
}