Esempio n. 1
0
        private void OnFieldSelected(FilledAutofillField field, FieldType fieldType)
        {
            DatasetWithFilledAutofillFields datasetWithFilledAutofillFields = new DatasetWithFilledAutofillFields();
            String newDatasetId             = Guid.NewGuid().ToString();
            FilledAutofillField copyOfField = new FilledAutofillField(newDatasetId, PackageName,
                                                                      field.GetFieldTypeName(), field.GetTextValue(), field.GetDateValue(), field.GetToggleValue());
            String          datasetName     = "dataset-manual";
            AutofillDataset autofillDataset = new AutofillDataset(newDatasetId, datasetName);

            datasetWithFilledAutofillFields.filledAutofillFields =
                new List <FilledAutofillField>()
            {
                copyOfField
            }.ToImmutableList();
            datasetWithFilledAutofillFields.autofillDataset = autofillDataset;
            Intent       intent       = Intent;
            var          structure    = (AssistStructure)intent.GetParcelableExtra(AutofillManager.ExtraAssistStructure);
            ClientParser clientParser = new ClientParser(structure);

            mReplyIntent = new Intent();
            mLocalAutofillDataSource.GetFieldTypeByAutofillHints(new DataCallback2
            {
                that         = this,
                datasetName  = datasetName,
                fieldType    = fieldType,
                field        = field,
                clientParser = clientParser
            });
        }
Esempio n. 2
0
 public void Run()
 {
     foreach (var datasetWithFilledAutofillFields in datasetsWithFilledAutofillFields)
     {
         var             filledAutofillFields = datasetWithFilledAutofillFields.filledAutofillFields;
         AutofillDataset autofillDataset      = datasetWithFilledAutofillFields.autofillDataset;
         mAutofillDao.InsertAutofillDataset(autofillDataset);
         mAutofillDao.InsertFilledAutofillFields(filledAutofillFields);
     }
 }
        /**
         * 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);
        }
        public ImmutableList <DatasetWithFilledAutofillFields> BuildDatasetsByPartition(int datasetNumber)
        {
            //Guava
            var listBuilder = ImmutableList.Create <DatasetWithFilledAutofillFields>();

            foreach (int partition in AutofillHints.PARTITIONS)
            {
                AutofillDataset autofillDataset = new AutofillDataset(Guid.NewGuid().ToString(),
                                                                      "dataset-" + datasetNumber + "." + partition);
                DatasetWithFilledAutofillFields dataset =
                    BuildDatasetForPartition(autofillDataset, partition);
                if (dataset != null && dataset.filledAutofillFields != null)
                {
                    listBuilder.Add(dataset);
                }
            }
            return(listBuilder);
        }
        private DatasetWithFilledAutofillFields BuildCollectionForPartition(
            AutofillDataset dataset, int partition)
        {
            DatasetWithFilledAutofillFields datasetWithFilledAutofillFields =
                new DatasetWithFilledAutofillFields();

            datasetWithFilledAutofillFields.autofillDataset = dataset;
            foreach (var fieldTypeWithHeuristics in mFieldTypesWithHints)
            {
                if (AutofillHints.MatchesPartition(
                        fieldTypeWithHeuristics.getFieldType().GetPartition(), partition))
                {
                    var fakeField = AutofillHints.generateFakeField(fieldTypeWithHeuristics, mPackageName,
                                                                    mSeed, dataset.GetId());
                    datasetWithFilledAutofillFields.Add(fakeField);
                }
            }
            return(datasetWithFilledAutofillFields);
        }