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

Commit 2cc4961c authored by Winson Chiu's avatar Winson Chiu Committed by Automerger Merge Worker
Browse files

Merge "Convert InstantAppRequestInfo to getters and add @MainThread" into...

Merge "Convert InstantAppRequestInfo to getters and add @MainThread" into rvc-dev am: 5051748f am: 99425b04 am: 5c1174a9

Change-Id: I86eff38e1e18d4019b6b078934b00fd3bb23dcfd
parents 4927dc6b 5c1174a9
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -615,11 +615,11 @@ package android.app {
    method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @MainThread public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    method @MainThread public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
  }
  public static final class InstantAppResolverService.InstantAppResolutionCallback {
@@ -2043,13 +2043,13 @@ package android.content.pm {
  public final class InstantAppRequestInfo implements android.os.Parcelable {
    ctor public InstantAppRequestInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, boolean, @NonNull String);
    method public int describeContents();
    method @Nullable public int[] getHostDigestPrefix();
    method @NonNull public android.content.Intent getIntent();
    method @NonNull public String getToken();
    method @NonNull public android.os.UserHandle getUserHandle();
    method public boolean isRequesterInstantApp();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppRequestInfo> CREATOR;
    field @Nullable public final int[] hostDigestPrefix;
    field @NonNull public final android.content.Intent intent;
    field public final boolean isRequesterInstantApp;
    field @NonNull public final String token;
    field @NonNull public final android.os.UserHandle userHandle;
  }
  public final class InstantAppResolveInfo implements android.os.Parcelable {
+15 −12
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package android.app;

import android.annotation.MainThread;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.SystemApi;
@@ -225,11 +226,12 @@ public abstract class InstantAppResolverService extends Service {
     *
     * @see InstantAppResolveInfo
     */
    @MainThread
    public void onGetInstantAppResolveInfo(@NonNull InstantAppRequestInfo request,
            @NonNull InstantAppResolutionCallback callback) {
        // If not overridden, forward to the old method.
        onGetInstantAppResolveInfo(request.intent, request.hostDigestPrefix, request.userHandle,
                request.token, callback);
        onGetInstantAppResolveInfo(request.getIntent(), request.getHostDigestPrefix(),
                request.getUserHandle(), request.getToken(), callback);
    }

    /**
@@ -241,11 +243,12 @@ public abstract class InstantAppResolverService extends Service {
     * @param request The parameters for this resolution request
     * @param callback The {@link InstantAppResolutionCallback} to provide results to.
     */
    @MainThread
    public void onGetInstantAppIntentFilter(@NonNull InstantAppRequestInfo request,
            @NonNull InstantAppResolutionCallback callback) {
        // If not overridden, forward to the old method.
        onGetInstantAppIntentFilter(request.intent, request.hostDigestPrefix, request.userHandle,
                request.token, callback);
        onGetInstantAppIntentFilter(request.getIntent(), request.getHostDigestPrefix(),
                request.getUserHandle(), request.getToken(), callback);
    }

    /**
@@ -268,7 +271,7 @@ public abstract class InstantAppResolverService extends Service {
            public void getInstantAppResolveInfoList(InstantAppRequestInfo request, int sequence,
                    IRemoteCallback callback) {
                if (DEBUG_INSTANT) {
                    Slog.v(TAG, "[" + request.token + "] Phase1 called; posting");
                    Slog.v(TAG, "[" + request.getToken() + "] Phase1 called; posting");
                }
                final SomeArgs args = SomeArgs.obtain();
                args.arg1 = request;
@@ -281,7 +284,7 @@ public abstract class InstantAppResolverService extends Service {
            public void getInstantAppIntentFilterList(InstantAppRequestInfo request,
                    IRemoteCallback callback) {
                if (DEBUG_INSTANT) {
                    Slog.v(TAG, "[" + request.token + "] Phase2 called; posting");
                    Slog.v(TAG, "[" + request.getToken() + "] Phase2 called; posting");
                }
                final SomeArgs args = SomeArgs.obtain();
                args.arg1 = request;
@@ -336,9 +339,9 @@ public abstract class InstantAppResolverService extends Service {
                    args.recycle();
                    final int sequence = message.arg1;
                    if (DEBUG_INSTANT) {
                        Slog.d(TAG, "[" + request.token + "] Phase1 request;"
                                + " prefix: " + Arrays.toString(request.hostDigestPrefix)
                                + ", userId: " + request.userHandle.getIdentifier());
                        Slog.d(TAG, "[" + request.getToken() + "] Phase1 request;"
                                + " prefix: " + Arrays.toString(request.getHostDigestPrefix())
                                + ", userId: " + request.getUserHandle().getIdentifier());
                    }
                    onGetInstantAppResolveInfo(request,
                            new InstantAppResolutionCallback(sequence, callback));
@@ -350,9 +353,9 @@ public abstract class InstantAppResolverService extends Service {
                    final IRemoteCallback callback = (IRemoteCallback) args.arg2;
                    args.recycle();
                    if (DEBUG_INSTANT) {
                        Slog.d(TAG, "[" + request.token + "] Phase2 request;"
                                + " prefix: " + Arrays.toString(request.hostDigestPrefix)
                                + ", userId: " + request.userHandle.getIdentifier());
                        Slog.d(TAG, "[" + request.getToken() + "] Phase2 request;"
                                + " prefix: " + Arrays.toString(request.getHostDigestPrefix())
                                + ", userId: " + request.getUserHandle().getIdentifier());
                    }
                    onGetInstantAppIntentFilter(request,
                            new InstantAppResolutionCallback(-1 /*sequence*/, callback));
+81 −39
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ import com.android.internal.util.DataClass;
 * @hide
 */
@SystemApi
@DataClass(genParcelable = true, genConstructor = true, genAidl = true)
@DataClass(genParcelable = true, genConstructor = true, genAidl = true, genGetters = true)
public final class InstantAppRequestInfo implements Parcelable {

    /**
@@ -40,26 +40,26 @@ public final class InstantAppRequestInfo implements Parcelable {
     * host + path of the data, if defined.
     */
    @NonNull
    public final Intent intent;
    private final Intent mIntent;

    /** The hash prefix of the instant app's domain or null if no host is defined. */
    @Nullable
    public final int[] hostDigestPrefix;
    private final int[] mHostDigestPrefix;

    /** The user requesting the instant application */
    @NonNull
    public final UserHandle userHandle;
    private final UserHandle mUserHandle;

    /** Whether or not the requesting package was an instant app itself */
    public final boolean isRequesterInstantApp;
    private final boolean mRequesterInstantApp;

    /** A unique identifier */
    @NonNull
    public final String token;
    private final String mToken;



    // Code below generated by codegen v1.0.13.
    // Code below generated by codegen v1.0.15.
    //
    // DO NOT MODIFY!
    // CHECKSTYLE:OFF Generated code
@@ -83,7 +83,7 @@ public final class InstantAppRequestInfo implements Parcelable {
     *   The hash prefix of the instant app's domain or null if no host is defined.
     * @param userHandle
     *   The user requesting the instant application
     * @param isRequesterInstantApp
     * @param requesterInstantApp
     *   Whether or not the requesting package was an instant app itself
     * @param token
     *   A unique identifier
@@ -93,23 +93,65 @@ public final class InstantAppRequestInfo implements Parcelable {
            @NonNull Intent intent,
            @Nullable int[] hostDigestPrefix,
            @NonNull UserHandle userHandle,
            boolean isRequesterInstantApp,
            boolean requesterInstantApp,
            @NonNull String token) {
        this.intent = intent;
        this.mIntent = intent;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, intent);
        this.hostDigestPrefix = hostDigestPrefix;
        this.userHandle = userHandle;
                NonNull.class, null, mIntent);
        this.mHostDigestPrefix = hostDigestPrefix;
        this.mUserHandle = userHandle;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, userHandle);
        this.isRequesterInstantApp = isRequesterInstantApp;
        this.token = token;
                NonNull.class, null, mUserHandle);
        this.mRequesterInstantApp = requesterInstantApp;
        this.mToken = token;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, token);
                NonNull.class, null, mToken);

        // onConstructed(); // You can define this method to get a callback
    }

    /**
     * The sanitized {@link Intent} used for resolution. A sanitized Intent is an intent with
     * potential PII removed from the original intent. Fields removed include extras and the
     * host + path of the data, if defined.
     */
    @DataClass.Generated.Member
    public @NonNull Intent getIntent() {
        return mIntent;
    }

    /**
     * The hash prefix of the instant app's domain or null if no host is defined.
     */
    @DataClass.Generated.Member
    public @Nullable int[] getHostDigestPrefix() {
        return mHostDigestPrefix;
    }

    /**
     * The user requesting the instant application
     */
    @DataClass.Generated.Member
    public @NonNull UserHandle getUserHandle() {
        return mUserHandle;
    }

    /**
     * Whether or not the requesting package was an instant app itself
     */
    @DataClass.Generated.Member
    public boolean isRequesterInstantApp() {
        return mRequesterInstantApp;
    }

    /**
     * A unique identifier
     */
    @DataClass.Generated.Member
    public @NonNull String getToken() {
        return mToken;
    }

    @Override
    @DataClass.Generated.Member
    public void writeToParcel(@NonNull android.os.Parcel dest, int flags) {
@@ -117,13 +159,13 @@ public final class InstantAppRequestInfo implements Parcelable {
        // void parcelFieldName(Parcel dest, int flags) { ... }

        byte flg = 0;
        if (isRequesterInstantApp) flg |= 0x8;
        if (hostDigestPrefix != null) flg |= 0x2;
        if (mRequesterInstantApp) flg |= 0x8;
        if (mHostDigestPrefix != null) flg |= 0x2;
        dest.writeByte(flg);
        dest.writeTypedObject(intent, flags);
        if (hostDigestPrefix != null) dest.writeIntArray(hostDigestPrefix);
        dest.writeTypedObject(userHandle, flags);
        dest.writeString(token);
        dest.writeTypedObject(mIntent, flags);
        if (mHostDigestPrefix != null) dest.writeIntArray(mHostDigestPrefix);
        dest.writeTypedObject(mUserHandle, flags);
        dest.writeString(mToken);
    }

    @Override
@@ -138,23 +180,23 @@ public final class InstantAppRequestInfo implements Parcelable {
        // static FieldType unparcelFieldName(Parcel in) { ... }

        byte flg = in.readByte();
        boolean _isRequesterInstantApp = (flg & 0x8) != 0;
        Intent _intent = (Intent) in.readTypedObject(Intent.CREATOR);
        int[] _hostDigestPrefix = (flg & 0x2) == 0 ? null : in.createIntArray();
        UserHandle _userHandle = (UserHandle) in.readTypedObject(UserHandle.CREATOR);
        String _token = in.readString();
        boolean requesterInstantApp = (flg & 0x8) != 0;
        Intent intent = (Intent) in.readTypedObject(Intent.CREATOR);
        int[] hostDigestPrefix = (flg & 0x2) == 0 ? null : in.createIntArray();
        UserHandle userHandle = (UserHandle) in.readTypedObject(UserHandle.CREATOR);
        String token = in.readString();

        this.intent = _intent;
        this.mIntent = intent;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, intent);
        this.hostDigestPrefix = _hostDigestPrefix;
        this.userHandle = _userHandle;
                NonNull.class, null, mIntent);
        this.mHostDigestPrefix = hostDigestPrefix;
        this.mUserHandle = userHandle;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, userHandle);
        this.isRequesterInstantApp = _isRequesterInstantApp;
        this.token = _token;
                NonNull.class, null, mUserHandle);
        this.mRequesterInstantApp = requesterInstantApp;
        this.mToken = token;
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, token);
                NonNull.class, null, mToken);

        // onConstructed(); // You can define this method to get a callback
    }
@@ -174,10 +216,10 @@ public final class InstantAppRequestInfo implements Parcelable {
    };

    @DataClass.Generated(
            time = 1574373347443L,
            codegenVersion = "1.0.13",
            time = 1583964236162L,
            codegenVersion = "1.0.15",
            sourceFile = "frameworks/base/core/java/android/content/pm/InstantAppRequestInfo.java",
            inputSignatures = "public final @android.annotation.NonNull android.content.Intent intent\npublic final @android.annotation.Nullable int[] hostDigestPrefix\npublic final @android.annotation.NonNull android.os.UserHandle userHandle\npublic final  boolean isRequesterInstantApp\npublic final @android.annotation.NonNull java.lang.String token\nclass InstantAppRequestInfo extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genParcelable=true, genConstructor=true, genAidl=true)")
            inputSignatures = "private final @android.annotation.NonNull android.content.Intent mIntent\nprivate final @android.annotation.Nullable int[] mHostDigestPrefix\nprivate final @android.annotation.NonNull android.os.UserHandle mUserHandle\nprivate final  boolean mRequesterInstantApp\nprivate final @android.annotation.NonNull java.lang.String mToken\nclass InstantAppRequestInfo extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genParcelable=true, genConstructor=true, genAidl=true, genGetters=true)")
    @Deprecated
    private void __metadata() {}

+2 −2
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ final class InstantAppResolverConnection implements DeathRecipient {
        IInstantAppResolver target = null;
        try {
            try {
                target = getRemoteInstanceLazy(request.token);
                target = getRemoteInstanceLazy(request.getToken());
            } catch (TimeoutException e) {
                throw new ConnectionException(ConnectionException.FAILURE_BIND);
            } catch (InterruptedException e) {
@@ -126,7 +126,7 @@ final class InstantAppResolverConnection implements DeathRecipient {
            }
        };
        try {
            getRemoteInstanceLazy(request.token)
            getRemoteInstanceLazy(request.getToken())
                    .getInstantAppIntentFilterList(request, remoteCallback);
        } catch (TimeoutException e) {
            throw new ConnectionException(ConnectionException.FAILURE_BIND);