diff options
Diffstat (limited to 'input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice')
10 files changed, 89 insertions, 91 deletions
diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AuthActivity.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AuthActivity.java index cbf7e6dc..30591c0e 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AuthActivity.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AuthActivity.java @@ -34,8 +34,7 @@ import android.widget.Toast; import com.example.android.autofillframework.R; import com.example.android.autofillframework.multidatasetservice.datasource.SharedPrefsAutofillRepository; -import com.example.android.autofillframework.multidatasetservice.model.AutofillFieldsCollection; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; import com.example.android.autofillframework.multidatasetservice.settings.MyPreferences; import java.util.HashMap; @@ -127,10 +126,10 @@ public class AuthActivity extends Activity { AssistStructure structure = intent.getParcelableExtra(EXTRA_ASSIST_STRUCTURE); StructureParser parser = new StructureParser(structure); parser.parseForFill(); - AutofillFieldsCollection autofillFields = parser.getAutofillFields(); + AutofillFieldMetadataCollection autofillFields = parser.getAutofillFields(); int saveTypes = autofillFields.getSaveType(); mReplyIntent = new Intent(); - HashMap<String, ClientFormData> clientFormDataMap = + HashMap<String, FilledAutofillFieldCollection> clientFormDataMap = SharedPrefsAutofillRepository.getInstance(this).getClientFormData (autofillFields.getFocusedHints(), autofillFields.getAllHints()); if (forResponse) { diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/AutofillField.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillFieldMetadata.java index 095c7611..b4cf8992 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/AutofillField.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillFieldMetadata.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.example.android.autofillframework.multidatasetservice.model; +package com.example.android.autofillframework.multidatasetservice; import android.app.assist.AssistStructure.ViewNode; import android.service.autofill.SaveInfo; @@ -25,7 +25,7 @@ import android.view.autofill.AutofillId; * also contains a {@code mSaveType} flag that is calculated based on the {@link ViewNode}]'s * autofill hints. */ -public class AutofillField { +public class AutofillFieldMetadata { private int mSaveType = 0; private String[] mAutofillHints; private AutofillId mAutofillId; @@ -33,7 +33,7 @@ public class AutofillField { private CharSequence[] mAutofillOptions; private boolean mFocused; - public AutofillField(ViewNode view) { + public AutofillFieldMetadata(ViewNode view) { mAutofillId = view.getAutofillId(); mAutofillType = view.getAutofillType(); mAutofillOptions = view.getAutofillOptions(); diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/AutofillFieldsCollection.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillFieldMetadataCollection.java index ace69870..f0a9e346 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/AutofillFieldsCollection.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillFieldMetadataCollection.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.example.android.autofillframework.multidatasetservice.model; +package com.example.android.autofillframework.multidatasetservice; import android.view.autofill.AutofillId; @@ -23,32 +23,32 @@ import java.util.HashMap; import java.util.List; /** - * Data structure that stores a collection of {@code AutofillField}s. Contains all of the client's - * {@code View} hierarchy autofill-relevant metadata. + * Data structure that stores a collection of {@code AutofillFieldMetadata}s. Contains all of the + * client's {@code View} hierarchy autofill-relevant metadata. */ -public final class AutofillFieldsCollection { +public final class AutofillFieldMetadataCollection { private final List<AutofillId> mAutofillIds = new ArrayList<>(); - private final HashMap<String, List<AutofillField>> mAutofillHintsToFieldsMap = new HashMap<>(); + private final HashMap<String, List<AutofillFieldMetadata>> mAutofillHintsToFieldsMap = new HashMap<>(); private final List<String> mAllAutofillHints = new ArrayList<>(); private final List<String> mFocusedAutofillHints = new ArrayList<>(); private int mSize = 0; private int mSaveType = 0; - public void add(AutofillField autofillField) { - mSaveType |= autofillField.getSaveType(); + public void add(AutofillFieldMetadata autofillFieldMetadata) { + mSaveType |= autofillFieldMetadata.getSaveType(); mSize++; - mAutofillIds.add(autofillField.getId()); - List<String> hintsList = Arrays.asList(autofillField.getHints()); + mAutofillIds.add(autofillFieldMetadata.getId()); + List<String> hintsList = Arrays.asList(autofillFieldMetadata.getHints()); mAllAutofillHints.addAll(hintsList); - if (autofillField.isFocused()) { + if (autofillFieldMetadata.isFocused()) { mFocusedAutofillHints.addAll(hintsList); } - for (String hint : autofillField.getHints()) { + for (String hint : autofillFieldMetadata.getHints()) { if (mAutofillHintsToFieldsMap.get(hint) == null) { - mAutofillHintsToFieldsMap.put(hint, new ArrayList<AutofillField>()); + mAutofillHintsToFieldsMap.put(hint, new ArrayList<AutofillFieldMetadata>()); } - mAutofillHintsToFieldsMap.get(hint).add(autofillField); + mAutofillHintsToFieldsMap.get(hint).add(autofillFieldMetadata); } } @@ -60,7 +60,7 @@ public final class AutofillFieldsCollection { return mAutofillIds.toArray(new AutofillId[mSize]); } - public List<AutofillField> getFieldsForHint(String hint) { + public List<AutofillFieldMetadata> getFieldsForHint(String hint) { return mAutofillHintsToFieldsMap.get(hint); } diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillHelper.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillHelper.java index f5915179..6ba758b2 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillHelper.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/AutofillHelper.java @@ -25,8 +25,7 @@ import android.view.autofill.AutofillId; import android.widget.RemoteViews; import com.example.android.autofillframework.R; -import com.example.android.autofillframework.multidatasetservice.model.AutofillFieldsCollection; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; import java.util.HashMap; import java.util.Set; @@ -43,8 +42,8 @@ public final class AutofillHelper { * client View. */ public static Dataset newDataset(Context context, - AutofillFieldsCollection autofillFields, ClientFormData clientFormData, boolean datasetAuth) { - String datasetName = clientFormData.getDatasetName(); + AutofillFieldMetadataCollection autofillFields, FilledAutofillFieldCollection filledAutofillFieldCollection, boolean datasetAuth) { + String datasetName = filledAutofillFieldCollection.getDatasetName(); if (datasetName != null) { Dataset.Builder datasetBuilder = new Dataset.Builder (newRemoteViews(context.getPackageName(), datasetName)); @@ -52,7 +51,7 @@ public final class AutofillHelper { IntentSender sender = AuthActivity.getAuthIntentSenderForDataset(context, datasetName); datasetBuilder.setAuthentication(sender); } - boolean setValueAtLeastOnce = clientFormData.applyToFields(autofillFields, datasetBuilder); + boolean setValueAtLeastOnce = filledAutofillFieldCollection.applyToFields(autofillFields, datasetBuilder); if (setValueAtLeastOnce) { return datasetBuilder.build(); } @@ -71,15 +70,15 @@ public final class AutofillHelper { * be sent back to the client View. */ public static FillResponse newResponse(Context context, - boolean datasetAuth, AutofillFieldsCollection autofillFields, - HashMap<String, ClientFormData> clientFormDataMap) { + boolean datasetAuth, AutofillFieldMetadataCollection autofillFields, + HashMap<String, FilledAutofillFieldCollection> clientFormDataMap) { FillResponse.Builder responseBuilder = new FillResponse.Builder(); if (clientFormDataMap != null) { Set<String> datasetNames = clientFormDataMap.keySet(); for (String datasetName : datasetNames) { - ClientFormData clientFormData = clientFormDataMap.get(datasetName); - if (clientFormData != null) { - Dataset dataset = newDataset(context, autofillFields, clientFormData, datasetAuth); + FilledAutofillFieldCollection filledAutofillFieldCollection = clientFormDataMap.get(datasetName); + if (filledAutofillFieldCollection != null) { + Dataset dataset = newDataset(context, autofillFields, filledAutofillFieldCollection, datasetAuth); if (dataset != null) { responseBuilder.addDataset(dataset); } diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/MyAutofillService.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/MyAutofillService.java index 5e0b0233..494a8bf1 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/MyAutofillService.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/MyAutofillService.java @@ -31,8 +31,7 @@ import android.widget.RemoteViews; import com.example.android.autofillframework.R; import com.example.android.autofillframework.multidatasetservice.datasource.SharedPrefsAutofillRepository; -import com.example.android.autofillframework.multidatasetservice.model.AutofillFieldsCollection; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; import com.example.android.autofillframework.multidatasetservice.settings.MyPreferences; import java.util.HashMap; @@ -67,7 +66,7 @@ public class MyAutofillService extends AutofillService { // Parse AutoFill data in Activity StructureParser parser = new StructureParser(structure); parser.parseForFill(); - AutofillFieldsCollection autofillFields = parser.getAutofillFields(); + AutofillFieldMetadataCollection autofillFields = parser.getAutofillFields(); FillResponse.Builder responseBuilder = new FillResponse.Builder(); // Check user's settings for authenticating Responses and Datasets. boolean responseAuth = MyPreferences.getInstance(this).isResponseAuth(); @@ -82,7 +81,7 @@ public class MyAutofillService extends AutofillService { callback.onSuccess(responseBuilder.build()); } else { boolean datasetAuth = MyPreferences.getInstance(this).isDatasetAuth(); - HashMap<String, ClientFormData> clientFormDataMap = + HashMap<String, FilledAutofillFieldCollection> clientFormDataMap = SharedPrefsAutofillRepository.getInstance(this).getClientFormData (autofillFields.getFocusedHints(), autofillFields.getAllHints()); FillResponse response = AutofillHelper.newResponse @@ -99,8 +98,8 @@ public class MyAutofillService extends AutofillService { Log.d(TAG, "onSaveRequest(): data=" + bundleToString(data)); StructureParser parser = new StructureParser(structure); parser.parseForSave(); - ClientFormData clientFormData = parser.getClientFormData(); - SharedPrefsAutofillRepository.getInstance(this).saveClientFormData(clientFormData); + FilledAutofillFieldCollection filledAutofillFieldCollection = parser.getClientFormData(); + SharedPrefsAutofillRepository.getInstance(this).saveClientFormData(filledAutofillFieldCollection); } @Override diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/StructureParser.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/StructureParser.java index 020a4eec..e2908819 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/StructureParser.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/StructureParser.java @@ -20,10 +20,8 @@ import android.app.assist.AssistStructure.ViewNode; import android.app.assist.AssistStructure.WindowNode; import android.util.Log; -import com.example.android.autofillframework.multidatasetservice.model.AutofillField; -import com.example.android.autofillframework.multidatasetservice.model.AutofillFieldsCollection; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; -import com.example.android.autofillframework.multidatasetservice.model.SavableAutofillData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillField; import static com.example.android.autofillframework.CommonUtil.TAG; @@ -33,9 +31,9 @@ import static com.example.android.autofillframework.CommonUtil.TAG; * parses the hierarchy and collects autofill metadata from {@link ViewNode}s along the way. */ final class StructureParser { - private final AutofillFieldsCollection mAutofillFields = new AutofillFieldsCollection(); + private final AutofillFieldMetadataCollection mAutofillFields = new AutofillFieldMetadataCollection(); private final AssistStructure mStructure; - private ClientFormData mClientFormData; + private FilledAutofillFieldCollection mFilledAutofillFieldCollection; StructureParser(AssistStructure structure) { mStructure = structure; @@ -56,7 +54,7 @@ final class StructureParser { private void parse(boolean forFill) { Log.d(TAG, "Parsing structure for " + mStructure.getActivityComponent()); int nodes = mStructure.getWindowNodeCount(); - mClientFormData = new ClientFormData(); + mFilledAutofillFieldCollection = new FilledAutofillFieldCollection(); for (int i = 0; i < nodes; i++) { WindowNode node = mStructure.getWindowNodeAt(i); ViewNode view = node.getRootViewNode(); @@ -68,10 +66,10 @@ final class StructureParser { if (viewNode.getAutofillHints() != null && viewNode.getAutofillHints().length > 0) { //TODO check to make sure hints are supported by service. if (forFill) { - mAutofillFields.add(new AutofillField(viewNode)); + mAutofillFields.add(new AutofillFieldMetadata(viewNode)); } else { - mClientFormData.setAutofillValuesForHints - (viewNode.getAutofillHints(), new SavableAutofillData(viewNode)); + mFilledAutofillFieldCollection.setAutofillValuesForHints + (viewNode.getAutofillHints(), new FilledAutofillField(viewNode)); } } int childrenSize = viewNode.getChildCount(); @@ -82,11 +80,11 @@ final class StructureParser { } } - public AutofillFieldsCollection getAutofillFields() { + public AutofillFieldMetadataCollection getAutofillFields() { return mAutofillFields; } - public ClientFormData getClientFormData() { - return mClientFormData; + public FilledAutofillFieldCollection getClientFormData() { + return mFilledAutofillFieldCollection; } } diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/AutofillRepository.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/AutofillRepository.java index 408b0c58..2296feb3 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/AutofillRepository.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/AutofillRepository.java @@ -15,7 +15,7 @@ */ package com.example.android.autofillframework.multidatasetservice.datasource; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; import java.util.HashMap; import java.util.List; @@ -23,16 +23,16 @@ import java.util.List; public interface AutofillRepository { /** - * Gets saved ClientFormData that contains some objects that can autofill fields with these + * Gets saved FilledAutofillFieldCollection that contains some objects that can autofill fields with these * {@code autofillHints}. */ - HashMap<String, ClientFormData> getClientFormData(List<String> focusedAutofillHints, + HashMap<String, FilledAutofillFieldCollection> getClientFormData(List<String> focusedAutofillHints, List<String> allAutofillHints); /** * Saves LoginCredential under this datasetName. */ - void saveClientFormData(ClientFormData clientFormData); + void saveClientFormData(FilledAutofillFieldCollection filledAutofillFieldCollection); /** * Clears all data. diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/SharedPrefsAutofillRepository.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/SharedPrefsAutofillRepository.java index fee39691..31f92000 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/SharedPrefsAutofillRepository.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/datasource/SharedPrefsAutofillRepository.java @@ -19,7 +19,7 @@ import android.content.Context; import android.content.SharedPreferences; import android.util.ArraySet; -import com.example.android.autofillframework.multidatasetservice.model.ClientFormData; +import com.example.android.autofillframework.multidatasetservice.model.FilledAutofillFieldCollection; import com.google.gson.Gson; import java.util.HashMap; @@ -53,23 +53,23 @@ public class SharedPrefsAutofillRepository implements AutofillRepository { } @Override - public HashMap<String, ClientFormData> getClientFormData(List<String> focusedAutofillHints, + public HashMap<String, FilledAutofillFieldCollection> getClientFormData(List<String> focusedAutofillHints, List<String> allAutofillHints) { boolean hasDataForFocusedAutofillHints = false; - HashMap<String, ClientFormData> clientFormDataMap = new HashMap<>(); + HashMap<String, FilledAutofillFieldCollection> clientFormDataMap = new HashMap<>(); Set<String> clientFormDataStringSet = getAllAutofillDataStringSet(); for (String clientFormDataString : clientFormDataStringSet) { - ClientFormData clientFormData = new Gson().fromJson(clientFormDataString, ClientFormData.class); - if (clientFormData != null) { - if (clientFormData.helpsWithHints(focusedAutofillHints)) { + FilledAutofillFieldCollection filledAutofillFieldCollection = new Gson().fromJson(clientFormDataString, FilledAutofillFieldCollection.class); + if (filledAutofillFieldCollection != null) { + if (filledAutofillFieldCollection.helpsWithHints(focusedAutofillHints)) { // Saved data has data relevant to at least 1 of the hints associated with the // View in focus. hasDataForFocusedAutofillHints = true; } - if (clientFormData.helpsWithHints(allAutofillHints)) { + if (filledAutofillFieldCollection.helpsWithHints(allAutofillHints)) { // Saved data has data relevant to at least 1 of these hints associated with any // of the Views in the hierarchy. - clientFormDataMap.put(clientFormData.getDatasetName(), clientFormData); + clientFormDataMap.put(filledAutofillFieldCollection.getDatasetName(), filledAutofillFieldCollection); } } } @@ -81,11 +81,11 @@ public class SharedPrefsAutofillRepository implements AutofillRepository { } @Override - public void saveClientFormData(ClientFormData clientFormData) { + public void saveClientFormData(FilledAutofillFieldCollection filledAutofillFieldCollection) { String datasetName = "dataset-" + getDatasetNumber(); - clientFormData.setDatasetName(datasetName); + filledAutofillFieldCollection.setDatasetName(datasetName); Set<String> allAutofillData = getAllAutofillDataStringSet(); - allAutofillData.add(new Gson().toJson(clientFormData)); + allAutofillData.add(new Gson().toJson(filledAutofillFieldCollection)); saveAllAutofillDataStringSet(allAutofillData); incrementDatasetNumber(); } diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/SavableAutofillData.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/FilledAutofillField.java index 0286ffdd..3ca61d89 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/SavableAutofillData.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/FilledAutofillField.java @@ -21,12 +21,12 @@ import android.view.autofill.AutofillValue; /** * JSON serializable data class containing the same data as an {@link AutofillValue}. */ -public class SavableAutofillData { +public class FilledAutofillField { private String mTextValue = null; private Long mDateValue = null; private Boolean mToggleValue = null; - public SavableAutofillData(AssistStructure.ViewNode viewNode) { + public FilledAutofillField(AssistStructure.ViewNode viewNode) { AutofillValue autofillValue = viewNode.getAutofillValue(); if (autofillValue != null) { if (autofillValue.isList()) { @@ -66,7 +66,7 @@ public class SavableAutofillData { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; - SavableAutofillData that = (SavableAutofillData) o; + FilledAutofillField that = (FilledAutofillField) o; if (mTextValue != null ? !mTextValue.equals(that.mTextValue) : that.mTextValue != null) return false; diff --git a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/ClientFormData.java b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/FilledAutofillFieldCollection.java index b01c06b4..a7ff4992 100644 --- a/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/ClientFormData.java +++ b/input/autofill/AutofillFramework/Application/src/main/java/com/example/android/autofillframework/multidatasetservice/model/FilledAutofillFieldCollection.java @@ -22,24 +22,27 @@ import android.view.View; import android.view.autofill.AutofillId; import android.view.autofill.AutofillValue; +import com.example.android.autofillframework.multidatasetservice.AutofillFieldMetadata; +import com.example.android.autofillframework.multidatasetservice.AutofillFieldMetadataCollection; + import java.util.HashMap; import java.util.List; import static com.example.android.autofillframework.CommonUtil.TAG; /** - * ClientFormData is the model that holds all of the data on a client app's page, plus the dataset - * name associated with it. + * FilledAutofillFieldCollection is the model that holds all of the data on a client app's page, + * plus the dataset name associated with it. */ -public final class ClientFormData { - private final HashMap<String, SavableAutofillData> mHintMap; +public final class FilledAutofillFieldCollection { + private final HashMap<String, FilledAutofillField> mHintMap; private String mDatasetName; - public ClientFormData() { - this(null, new HashMap<String, SavableAutofillData>()); + public FilledAutofillFieldCollection() { + this(null, new HashMap<String, FilledAutofillField>()); } - public ClientFormData(String datasetName, HashMap<String, SavableAutofillData> hintMap) { + public FilledAutofillFieldCollection(String datasetName, HashMap<String, FilledAutofillField> hintMap) { mHintMap = hintMap; mDatasetName = datasetName; } @@ -61,7 +64,7 @@ public final class ClientFormData { /** * Sets values for a list of hints. */ - public void setAutofillValuesForHints(@NonNull String[] autofillHints, @NonNull SavableAutofillData autofillValue) { + public void setAutofillValuesForHints(@NonNull String[] autofillHints, @NonNull FilledAutofillField autofillValue) { for (int i = 0; i < autofillHints.length; i++) { mHintMap.put(autofillHints[i], autofillValue); } @@ -69,50 +72,50 @@ public final class ClientFormData { /** * Populates a {@link Dataset.Builder} with appropriate values for each {@link AutofillId} - * in a {@code AutofillFieldsCollection}. + * in a {@code AutofillFieldMetadataCollection}. */ - public boolean applyToFields(AutofillFieldsCollection autofillFieldsCollection, + public boolean applyToFields(AutofillFieldMetadataCollection autofillFieldMetadataCollection, Dataset.Builder datasetBuilder) { boolean setValueAtLeastOnce = false; - List<String> allHints = autofillFieldsCollection.getAllHints(); + List<String> allHints = autofillFieldMetadataCollection.getAllHints(); for (int hintIndex = 0; hintIndex < allHints.size(); hintIndex++) { String hint = allHints.get(hintIndex); - List<AutofillField> autofillFields = autofillFieldsCollection.getFieldsForHint(hint); - if (autofillFields == null) { + List<AutofillFieldMetadata> fillableAutofillFields = autofillFieldMetadataCollection.getFieldsForHint(hint); + if (fillableAutofillFields == null) { continue; } - for (int autofillFieldIndex = 0; autofillFieldIndex < autofillFields.size(); autofillFieldIndex++) { - SavableAutofillData savableAutofillData = mHintMap.get(hint); - if (savableAutofillData == null) { + for (int autofillFieldIndex = 0; autofillFieldIndex < fillableAutofillFields.size(); autofillFieldIndex++) { + FilledAutofillField filledAutofillField = mHintMap.get(hint); + if (filledAutofillField == null) { continue; } - AutofillField autofillField = autofillFields.get(autofillFieldIndex); - AutofillId autofillId = autofillField.getId(); - int autofillType = autofillField.getAutofillType(); + AutofillFieldMetadata autofillFieldMetadata = fillableAutofillFields.get(autofillFieldIndex); + AutofillId autofillId = autofillFieldMetadata.getId(); + int autofillType = autofillFieldMetadata.getAutofillType(); switch (autofillType) { case View.AUTOFILL_TYPE_LIST: - int listValue = autofillField.getAutofillOptionIndex(savableAutofillData.getTextValue()); + int listValue = autofillFieldMetadata.getAutofillOptionIndex(filledAutofillField.getTextValue()); if (listValue != -1) { datasetBuilder.setValue(autofillId, AutofillValue.forList(listValue)); setValueAtLeastOnce = true; } break; case View.AUTOFILL_TYPE_DATE: - Long dateValue = savableAutofillData.getDateValue(); + Long dateValue = filledAutofillField.getDateValue(); if (dateValue != null) { datasetBuilder.setValue(autofillId, AutofillValue.forDate(dateValue)); setValueAtLeastOnce = true; } break; case View.AUTOFILL_TYPE_TEXT: - String textValue = savableAutofillData.getTextValue(); + String textValue = filledAutofillField.getTextValue(); if (textValue != null) { datasetBuilder.setValue(autofillId, AutofillValue.forText(textValue)); setValueAtLeastOnce = true; } break; case View.AUTOFILL_TYPE_TOGGLE: - Boolean toggleValue = savableAutofillData.getToggleValue(); + Boolean toggleValue = filledAutofillField.getToggleValue(); if (toggleValue != null) { datasetBuilder.setValue(autofillId, AutofillValue.forToggle(toggleValue)); setValueAtLeastOnce = true; |