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

Commit 844cc801 authored by Reema Bajwa's avatar Reema Bajwa
Browse files

Add id to the bundle so jetpack can access it

Test: built locally

Change-Id: If3df12fc32c21197c4c3847257874a6ae4fc1666
parent c8cb23c3
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -39,6 +39,8 @@ import com.android.internal.util.Preconditions;
 */
@SuppressLint("ParcelNotFinal")
public class BeginGetCredentialOption implements Parcelable {
    private static final String BUNDLE_ID_KEY =
            "android.service.credentials.BeginGetCredentialOption.BUNDLE_ID_KEY";
    /**
     * A unique id associated with this request option.
     */
@@ -129,6 +131,11 @@ public class BeginGetCredentialOption implements Parcelable {
        mType = Preconditions.checkStringNotEmpty(type, "type must not be empty");
        mCandidateQueryData = requireNonNull(
                candidateQueryData, "candidateQueryData must not be null");
        addIdToBundle();
    }

    private void addIdToBundle() {
        mCandidateQueryData.putString(BUNDLE_ID_KEY, mId);
    }

    private BeginGetCredentialOption(@NonNull Parcel in) {
+4 −3
Original line number Diff line number Diff line
@@ -93,13 +93,14 @@ public final class ProviderCreateSession extends ProviderSession<
        if (propagateToProvider) {
            return new BeginCreateCredentialRequest(
                    type,
                    candidateQueryData
                    candidateQueryData,
                    callingAppInfo
            );
        }
        return new BeginCreateCredentialRequest(
                type,
                candidateQueryData,
                callingAppInfo);
                candidateQueryData
        );
    }

    @Nullable
+5 −3
Original line number Diff line number Diff line
@@ -303,18 +303,20 @@ public final class ProviderGetSession extends ProviderSession<BeginGetCredential
            Log.i(TAG, "in prepareUiProviderData creating ui entry with id " + entryId);
            credentialUiEntries.add(new Entry(CREDENTIAL_ENTRY_KEY, entryId,
                    credentialEntry.getSlice(),
                    /*fillInIntent=*/setUpFillInIntent(credentialEntry.getType())));
                    /*fillInIntent=*/setUpFillInIntent(credentialEntry
                    .getBeginGetCredentialOption().getId())));
        }
        return credentialUiEntries;
    }

    private Intent setUpFillInIntent(@Nullable String id) {
    private Intent setUpFillInIntent(@NonNull String id) {
        // TODO: Determine if we should skip this entry if entry id is not set, or is set
        // but does not resolve to a valid option. For now, not skipping it because
        // it may be possible that the provider adds their own extras and expects to receive
        // those and complete the flow.
        if (id == null || mBeginGetOptionToCredentialOptionMap.get(id) == null) {
        if (mBeginGetOptionToCredentialOptionMap.get(id) == null) {
            Log.i(TAG, "Id from Credential Entry does not resolve to a valid option");
            return new Intent();
        }
        return new Intent().putExtra(CredentialProviderService.EXTRA_GET_CREDENTIAL_REQUEST,
                new GetCredentialRequest(