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

Commit d6ff806c authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 6284977 from f0e69f59 to mainline-release

Change-Id: I832ecc45d4e5e4da58096fc313d69e83e57c3e75
parents 7e4b6db5 f0e69f59
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -470,7 +470,7 @@ java_library {
        "framework-statsd-stubs-module_libs_api",
        "framework-permission-stubs-systemapi",
        "framework-wifi-stubs-systemapi",
        "framework-tethering-stubs",
        "framework-tethering-stubs-module_libs_api",
    ],
    installable: true,
    javac_shard_size: 150,
@@ -518,7 +518,7 @@ java_library {
        "framework-sdkextensions-stubs-systemapi",
        "framework-statsd-stubs-module_libs_api",
        "framework-wifi-stubs-systemapi",
        "framework-tethering-stubs",
        "framework-tethering-stubs-module_libs_api",
        // TODO (b/147688669) should be framework-telephony-stubs
        "framework-telephony",
        // TODO(jiyong): add stubs for APEXes here
@@ -540,7 +540,6 @@ java_library {
    visibility: [
        // DO NOT ADD ANY MORE ENTRIES TO THIS LIST
        "//external/robolectric-shadows:__subpackages__",
        "//frameworks/base/packages/Tethering/common/TetheringLib:__subpackages__",
        "//frameworks/layoutlib:__subpackages__",
        "//frameworks/opt/net/ike:__subpackages__",
    ],
+4 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ stubs_defaults {
    name: "framework-module-stubs-defaults-publicapi",
    args: mainline_stubs_args,
    installable: false,
    sdk_version: "current",
}

stubs_defaults {
@@ -50,6 +51,7 @@ stubs_defaults {
    args: mainline_stubs_args + priv_apps,
    srcs: [":framework-annotations"],
    installable: false,
    sdk_version: "system_current",
}

// The defaults for module_libs comes in two parts - defaults for API checks
@@ -62,6 +64,7 @@ stubs_defaults {
    args: mainline_stubs_args + module_libs,
    srcs: [":framework-annotations"],
    installable: false,
    sdk_version: "module_current",
}

stubs_defaults {
@@ -69,4 +72,5 @@ stubs_defaults {
    args: mainline_stubs_args + module_libs + priv_apps,
    srcs: [":framework-annotations"],
    installable: false,
    sdk_version: "module_current",
}
+119 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.app.blob;

import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.List;

/**
 * Class to provide information about an accessor of a shared blob.
 *
 * @hide
 */
public final class AccessorInfo implements Parcelable {
    private final String mPackageName;
    private final long mExpiryTimeMs;
    private final int mDescriptionResId;
    private final CharSequence mDescription;

    public AccessorInfo(String packageName, long expiryTimeMs,
            int descriptionResId, CharSequence description) {
        mPackageName = packageName;
        mExpiryTimeMs = expiryTimeMs;
        mDescriptionResId = descriptionResId;
        mDescription = description;
    }

    private AccessorInfo(Parcel in) {
        mPackageName = in.readString();
        mExpiryTimeMs = in.readLong();
        mDescriptionResId = in.readInt();
        mDescription = in.readCharSequence();
    }

    public String getPackageName() {
        return mPackageName;
    }

    public long getExpiryTimeMs() {
        return mExpiryTimeMs;
    }

    public int getDescriptionResId() {
        return mDescriptionResId;
    }

    public CharSequence getDescription() {
        return mDescription;
    }

    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        dest.writeString(mPackageName);
        dest.writeLong(mExpiryTimeMs);
        dest.writeInt(mDescriptionResId);
        dest.writeCharSequence(mDescription);
    }

    @Override
    public String toString() {
        return "AccessorInfo {"
                + "package: " + mPackageName + ","
                + "expiryMs: " + mExpiryTimeMs + ","
                + "descriptionResId: " + mDescriptionResId + ","
                + "description: " + mDescription + ","
                + "}";
    }

    private String toShortString() {
        return mPackageName;
    }

    public static String toShortString(List<AccessorInfo> accessors) {
        final StringBuilder sb = new StringBuilder();
        sb.append("[");
        for (int i = 0, size = accessors.size(); i < size; ++i) {
            sb.append(accessors.get(i).toShortString());
            sb.append(",");
        }
        sb.append("]");
        return sb.toString();
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @NonNull
    public static final Creator<AccessorInfo> CREATOR = new Creator<AccessorInfo>() {
        @Override
        @NonNull
        public AccessorInfo createFromParcel(Parcel source) {
            return new AccessorInfo(source);
        }

        @Override
        @NonNull
        public AccessorInfo[] newArray(int size) {
            return new AccessorInfo[size];
        }
    };
}
+19 −0
Original line number Diff line number Diff line
/*
 * Copyright 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package android.app.blob;

/** {@hide} */
parcelable BlobInfo;
 No newline at end of file
+109 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.app.blob;

import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.Collections;
import java.util.List;

/**
 * Class to provide information about a shared blob.
 *
 * @hide
 */
public final class BlobInfo implements Parcelable {
    private final long mId;
    private final long mExpiryTimeMs;
    private final CharSequence mLabel;
    private final List<AccessorInfo> mAccessors;

    public BlobInfo(long id, long expiryTimeMs, CharSequence label,
            List<AccessorInfo> accessors) {
        mId = id;
        mExpiryTimeMs = expiryTimeMs;
        mLabel = label;
        mAccessors = accessors;
    }

    private BlobInfo(Parcel in) {
        mId = in.readLong();
        mExpiryTimeMs = in.readLong();
        mLabel = in.readCharSequence();
        mAccessors = in.readArrayList(null /* classloader */);
    }

    public long getId() {
        return mId;
    }

    public long getExpiryTimeMs() {
        return mExpiryTimeMs;
    }

    public CharSequence getLabel() {
        return mLabel;
    }

    public List<AccessorInfo> getAccessors() {
        return Collections.unmodifiableList(mAccessors);
    }

    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        dest.writeLong(mId);
        dest.writeLong(mExpiryTimeMs);
        dest.writeCharSequence(mLabel);
        dest.writeList(mAccessors);
    }

    @Override
    public String toString() {
        return toShortString();
    }

    private String toShortString() {
        return "BlobInfo {"
                + "id: " + mId + ","
                + "expiryMs: " + mExpiryTimeMs + ","
                + "label: " + mLabel + ","
                + "accessors: " + AccessorInfo.toShortString(mAccessors) + ","
                + "}";
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @NonNull
    public static final Creator<BlobInfo> CREATOR = new Creator<BlobInfo>() {
        @Override
        @NonNull
        public BlobInfo createFromParcel(Parcel source) {
            return new BlobInfo(source);
        }

        @Override
        @NonNull
        public BlobInfo[] newArray(int size) {
            return new BlobInfo[size];
        }
    };
}
Loading