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

Commit 69ffa994 authored by Reema Bajwa's avatar Reema Bajwa
Browse files

Add type to builder constructor as it is required

In a recent change, CreateCredentialRequest constructor was
changed to a Builder and type wasn't added to the builder constructor
even though it is required. This is to rectify that error

Bug: 270978250
Test: CTS unit tests

Change-Id: If0516c6b03a1b5ae464fce9ce5e0209d8eafc5fc
parent f362c2d7
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -13594,12 +13594,11 @@ package android.credentials {
  }
  public static final class CreateCredentialRequest.Builder {
    ctor public CreateCredentialRequest.Builder(@NonNull android.os.Bundle, @NonNull android.os.Bundle);
    ctor public CreateCredentialRequest.Builder(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.Bundle);
    method @NonNull public android.credentials.CreateCredentialRequest build();
    method @NonNull public android.credentials.CreateCredentialRequest.Builder setAlwaysSendAppInfoToProvider(boolean);
    method @NonNull public android.credentials.CreateCredentialRequest.Builder setIsSystemProviderRequired(boolean);
    method @NonNull @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_SET_ORIGIN) public android.credentials.CreateCredentialRequest.Builder setOrigin(@NonNull String);
    method @NonNull public android.credentials.CreateCredentialRequest.Builder setType(@NonNull String);
  }
  public final class CreateCredentialResponse implements android.os.Parcelable {
+7 −11
Original line number Diff line number Diff line
@@ -260,11 +260,17 @@ public final class CreateCredentialRequest implements Parcelable {
        private String mOrigin;

        /**
         * @param type the type of the credential to be stored
         * @param credentialData the full credential creation request data
         * @param candidateQueryData the partial request data that will be sent to the provider
         *                           during the initial creation candidate query stage
         */
        public Builder(@NonNull Bundle credentialData, @NonNull Bundle candidateQueryData) {
        public Builder(
                @NonNull String type,
                @NonNull Bundle credentialData,
                @NonNull Bundle candidateQueryData) {
            mType = Preconditions.checkStringNotEmpty(type,
                    "type must not be null or empty");
            mCredentialData = requireNonNull(credentialData,
                    "credentialData must not be null");
            mCandidateQueryData = requireNonNull(candidateQueryData,
@@ -290,16 +296,6 @@ public final class CreateCredentialRequest implements Parcelable {
            return this;
        }

        /**
         * Sets the requested credential type.
         */
        @SuppressLint("MissingGetterMatchingBuilder")
        @NonNull
        public CreateCredentialRequest.Builder setType(@NonNull String type) {
            mType = type;
            return this;
        }

        /**
         * Sets whether the request must only be fulfilled by a system provider.
         * This defaults to false
+3 −2
Original line number Diff line number Diff line
@@ -101,8 +101,9 @@ public class CredentialManagerTest {
        mGetRequest = new GetCredentialRequest.Builder(Bundle.EMPTY).addCredentialOption(
                new CredentialOption(Credential.TYPE_PASSWORD_CREDENTIAL, Bundle.EMPTY,
                        Bundle.EMPTY, false)).build();
        mCreateRequest = new CreateCredentialRequest.Builder(Bundle.EMPTY, Bundle.EMPTY)
                .setType(Credential.TYPE_PASSWORD_CREDENTIAL)
        mCreateRequest = new CreateCredentialRequest.Builder(
                Credential.TYPE_PASSWORD_CREDENTIAL,
                Bundle.EMPTY, Bundle.EMPTY)
                .setIsSystemProviderRequired(false)
                .setAlwaysSendAppInfoToProvider(false)
                .build();
+5 −6
Original line number Diff line number Diff line
@@ -407,8 +407,8 @@ class CredentialManagerRepo(
        val credentialData = request.credentialData
        return RequestInfo.newCreateRequestInfo(
                Binder(),
                CreateCredentialRequest.Builder(credentialData, Bundle())
                        .setType("androidx.credentials.TYPE_PUBLIC_KEY_CREDENTIAL")
                CreateCredentialRequest.Builder("androidx.credentials.TYPE_PUBLIC_KEY_CREDENTIAL",
                credentialData, Bundle())
                        .setIsSystemProviderRequired(false)
                        .setAlwaysSendAppInfoToProvider(true)
                        .build(),
@@ -420,8 +420,8 @@ class CredentialManagerRepo(
        val request = CreatePasswordRequest("beckett-bakert@gmail.com", "password123")
        return RequestInfo.newCreateRequestInfo(
                Binder(),
                CreateCredentialRequest.Builder(request.credentialData, request.candidateQueryData)
                        .setType(TYPE_PASSWORD_CREDENTIAL)
                CreateCredentialRequest.Builder(TYPE_PASSWORD_CREDENTIAL,
                request.credentialData, request.candidateQueryData)
                        .setIsSystemProviderRequired(false)
                        .setAlwaysSendAppInfoToProvider(true)
                        .build(),
@@ -438,8 +438,7 @@ class CredentialManagerRepo(
        )
        return RequestInfo.newCreateRequestInfo(
                Binder(),
                CreateCredentialRequest.Builder(data, Bundle())
                        .setType("other-sign-ins")
                CreateCredentialRequest.Builder("other-sign-ins", data, Bundle())
                        .setIsSystemProviderRequired(false)
                        .setAlwaysSendAppInfoToProvider(true)
                        .build(),