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

Commit 294c6275 authored by Reema Bajwa's avatar Reema Bajwa Committed by Automerger Merge Worker
Browse files

Merge "Revert usage of ParceledListSlice in UI interface" into udc-dev am: a24961f0

parents cb2913de a24961f0
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package android.credentials.ui;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.content.pm.ParceledListSlice;
import android.os.Parcel;
import android.os.Parcelable;

@@ -36,7 +35,7 @@ import java.util.List;
@TestApi
public final class CreateCredentialProviderData extends ProviderData implements Parcelable {
    @NonNull
    private final ParceledListSlice<Entry> mSaveEntries;
    private final List<Entry> mSaveEntries;
    @Nullable
    private final Entry mRemoteEntry;

@@ -44,13 +43,13 @@ public final class CreateCredentialProviderData extends ProviderData implements
            @NonNull String providerFlattenedComponentName, @NonNull List<Entry> saveEntries,
            @Nullable Entry remoteEntry) {
        super(providerFlattenedComponentName);
        mSaveEntries = new ParceledListSlice<>(saveEntries);
        mSaveEntries = new ArrayList<>(saveEntries);
        mRemoteEntry = remoteEntry;
    }

    @NonNull
    public List<Entry> getSaveEntries() {
        return mSaveEntries.getList();
        return mSaveEntries;
    }

    @Nullable
@@ -61,7 +60,9 @@ public final class CreateCredentialProviderData extends ProviderData implements
    private CreateCredentialProviderData(@NonNull Parcel in) {
        super(in);

        mSaveEntries = in.readParcelable(null, android.content.pm.ParceledListSlice.class);
        List<Entry> credentialEntries = new ArrayList<>();
        in.readTypedList(credentialEntries, Entry.CREATOR);
        mSaveEntries = credentialEntries;
        AnnotationValidations.validate(NonNull.class, null, mSaveEntries);

        Entry remoteEntry = in.readTypedObject(Entry.CREATOR);
@@ -71,7 +72,7 @@ public final class CreateCredentialProviderData extends ProviderData implements
    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        super.writeToParcel(dest, flags);
        dest.writeParcelable(mSaveEntries, flags);
        dest.writeTypedList(mSaveEntries);
        dest.writeTypedObject(mRemoteEntry, flags);
    }

+22 −19
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package android.credentials.ui;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.content.pm.ParceledListSlice;
import android.os.Parcel;
import android.os.Parcelable;

@@ -36,11 +35,11 @@ import java.util.List;
@TestApi
public final class GetCredentialProviderData extends ProviderData implements Parcelable {
    @NonNull
    private final ParceledListSlice<Entry> mCredentialEntries;
    private final List<Entry> mCredentialEntries;
    @NonNull
    private final ParceledListSlice<Entry> mActionChips;
    private final List<Entry> mActionChips;
    @NonNull
    private final ParceledListSlice<AuthenticationEntry> mAuthenticationEntries;
    private final List<AuthenticationEntry> mAuthenticationEntries;
    @Nullable
    private final Entry mRemoteEntry;

@@ -50,25 +49,25 @@ public final class GetCredentialProviderData extends ProviderData implements Par
            @NonNull List<AuthenticationEntry> authenticationEntries,
            @Nullable Entry remoteEntry) {
        super(providerFlattenedComponentName);
        mCredentialEntries = new ParceledListSlice<>(credentialEntries);
        mActionChips = new ParceledListSlice<>(actionChips);
        mAuthenticationEntries = new ParceledListSlice<>(authenticationEntries);
        mCredentialEntries = new ArrayList<>(credentialEntries);
        mActionChips = new ArrayList<>(actionChips);
        mAuthenticationEntries = new ArrayList<>(authenticationEntries);
        mRemoteEntry = remoteEntry;
    }

    @NonNull
    public List<Entry> getCredentialEntries() {
        return mCredentialEntries.getList();
        return mCredentialEntries;
    }

    @NonNull
    public List<Entry> getActionChips() {
        return mActionChips.getList();
        return mActionChips;
    }

    @NonNull
    public List<AuthenticationEntry> getAuthenticationEntries() {
        return mAuthenticationEntries.getList();
        return mAuthenticationEntries;
    }

    @Nullable
@@ -78,16 +77,20 @@ public final class GetCredentialProviderData extends ProviderData implements Par

    private GetCredentialProviderData(@NonNull Parcel in) {
        super(in);
        mCredentialEntries = in.readParcelable(null,
                android.content.pm.ParceledListSlice.class);

        List<Entry> credentialEntries = new ArrayList<>();
        in.readTypedList(credentialEntries, Entry.CREATOR);
        mCredentialEntries = credentialEntries;
        AnnotationValidations.validate(NonNull.class, null, mCredentialEntries);

        mActionChips = in.readParcelable(null,
                android.content.pm.ParceledListSlice.class);
        List<Entry> actionChips  = new ArrayList<>();
        in.readTypedList(actionChips, Entry.CREATOR);
        mActionChips = actionChips;
        AnnotationValidations.validate(NonNull.class, null, mActionChips);

        mAuthenticationEntries = in.readParcelable(null,
                android.content.pm.ParceledListSlice.class);
        List<AuthenticationEntry> authenticationEntries  = new ArrayList<>();
        in.readTypedList(authenticationEntries, AuthenticationEntry.CREATOR);
        mAuthenticationEntries = authenticationEntries;
        AnnotationValidations.validate(NonNull.class, null, mAuthenticationEntries);

        Entry remoteEntry = in.readTypedObject(Entry.CREATOR);
@@ -97,9 +100,9 @@ public final class GetCredentialProviderData extends ProviderData implements Par
    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        super.writeToParcel(dest, flags);
        dest.writeParcelable(mCredentialEntries, flags);
        dest.writeParcelable(mActionChips, flags);
        dest.writeParcelable(mAuthenticationEntries, flags);
        dest.writeTypedList(mCredentialEntries);
        dest.writeTypedList(mActionChips);
        dest.writeTypedList(mAuthenticationEntries);
        dest.writeTypedObject(mRemoteEntry, flags);
    }

+8 −1
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.os.IBinder;
import android.os.Looper;
import android.os.ResultReceiver;
import android.service.credentials.CredentialProviderInfoFactory;
import android.util.Log;
import android.util.Slog;

import java.util.ArrayList;
@@ -71,6 +72,8 @@ public class CredentialManagerUi {
    };

    private void handleUiResult(int resultCode, Bundle resultData) {
        Log.i("reemademo", "handleUiResult with resultCOde: " + resultCode);

        switch (resultCode) {
            case UserSelectionDialogResult.RESULT_CODE_DIALOG_COMPLETE_WITH_SELECTION:
                mStatus = UiStatus.IN_PROGRESS;
@@ -83,10 +86,14 @@ public class CredentialManagerUi {
                }
                break;
            case UserSelectionDialogResult.RESULT_CODE_DIALOG_USER_CANCELED:
                Log.i("reemademo", "RESULT_CODE_DIALOG_USER_CANCELED");

                mStatus = UiStatus.TERMINATED;
                mCallbacks.onUiCancellation(/* isUserCancellation= */ true);
                break;
            case UserSelectionDialogResult.RESULT_CODE_CANCELED_AND_LAUNCHED_SETTINGS:
                Log.i("reemademo", "RESULT_CODE_CANCELED_AND_LAUNCHED_SETTINGS");

                mStatus = UiStatus.TERMINATED;
                mCallbacks.onUiCancellation(/* isUserCancellation= */ false);
                break;
@@ -95,7 +102,7 @@ public class CredentialManagerUi {
                mCallbacks.onUiSelectorInvocationFailure();
                break;
            default:
                Slog.i(TAG, "Unknown error code returned from the UI");
                Log.i("reemademo", "Unknown error code returned from the UI");
                mStatus = UiStatus.IN_PROGRESS;
                mCallbacks.onUiSelectorInvocationFailure();
                break;