/** * Build an autofill {@link Dataset} using saved data and the client's AssistStructure. */ private bool BindDataset(Dictionary <string, FieldTypeWithHeuristics> fieldTypesByAutofillHint, DatasetWithFilledAutofillFields datasetWithFilledAutofillFields, Dataset.Builder datasetBuilder) { MutableBoolean setValueAtLeastOnce = new MutableBoolean(false); var filledAutofillFieldsByTypeName = datasetWithFilledAutofillFields .filledAutofillFields .ToDictionary(x => x.GetFieldTypeName(), x => x); mClientParser.Parse(new BindDatasetNodeProcessor { datasetBuilder = datasetBuilder, setValueAtLeastOnce = setValueAtLeastOnce, fieldTypesByAutofillHint = fieldTypesByAutofillHint, filledAutofillFieldsByTypeName = filledAutofillFieldsByTypeName, datasetAdapter = this }); return(setValueAtLeastOnce.Value); }
/** * Parses a client view structure and build a dataset (in the form of a * {@link DatasetWithFilledAutofillFields}) from the view metadata found. */ private DatasetWithFilledAutofillFields BuildDatasetForPartition(AutofillDataset dataset, int partition) { DatasetWithFilledAutofillFields datasetWithFilledAutofillFields = new DatasetWithFilledAutofillFields(); datasetWithFilledAutofillFields.autofillDataset = dataset; mClientParser.Parse(new PartitionNodeProcessor { that = this, partition = partition, datasetWithFilledAutofillFields = datasetWithFilledAutofillFields }); return(datasetWithFilledAutofillFields); }