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

Commit 7cdceb42 authored by Roshan Pius's avatar Roshan Pius Committed by Gerrit Code Review
Browse files

Merge changes from topic "dumpDebugComponent"

* changes:
  nfc(api): Port over ComponentName#dumpDebug to internal util
  nfc(proto): Create library for nfc protos
parents a057129f 8c864f7d
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -660,7 +660,7 @@ public final class ApduServiceInfo implements Parcelable {
     * @param proto the ProtoOutputStream to write to
     * @param proto the ProtoOutputStream to write to
     */
     */
    public void dumpDebug(ProtoOutputStream proto) {
    public void dumpDebug(ProtoOutputStream proto) {
        getComponent().dumpDebug(proto, ApduServiceInfoProto.COMPONENT_NAME);
        Utils.dumpDebugComponentName(getComponent(), proto, ApduServiceInfoProto.COMPONENT_NAME);
        proto.write(ApduServiceInfoProto.DESCRIPTION, getDescription());
        proto.write(ApduServiceInfoProto.DESCRIPTION, getDescription());
        proto.write(ApduServiceInfoProto.ON_HOST, mOnHost);
        proto.write(ApduServiceInfoProto.ON_HOST, mOnHost);
        if (!mOnHost) {
        if (!mOnHost) {
+1 −1
Original line number Original line Diff line number Diff line
@@ -340,7 +340,7 @@ public final class NfcFServiceInfo implements Parcelable {
     * @param proto the ProtoOutputStream to write to
     * @param proto the ProtoOutputStream to write to
     */
     */
    public void dumpDebug(ProtoOutputStream proto) {
    public void dumpDebug(ProtoOutputStream proto) {
        getComponent().dumpDebug(proto, NfcFServiceInfoProto.COMPONENT_NAME);
        Utils.dumpDebugComponentName(getComponent(), proto, NfcFServiceInfoProto.COMPONENT_NAME);
        proto.write(NfcFServiceInfoProto.DESCRIPTION, getDescription());
        proto.write(NfcFServiceInfoProto.DESCRIPTION, getDescription());
        proto.write(NfcFServiceInfoProto.SYSTEM_CODE, getSystemCode());
        proto.write(NfcFServiceInfoProto.SYSTEM_CODE, getSystemCode());
        proto.write(NfcFServiceInfoProto.NFCID2, getNfcid2());
        proto.write(NfcFServiceInfoProto.NFCID2, getNfcid2());
+37 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2023 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.nfc.cardemulation;

import android.annotation.NonNull;
import android.content.ComponentName;
import android.content.ComponentNameProto;
import android.util.proto.ProtoOutputStream;

/** @hide */
public final class Utils {
    private Utils() {
    }

    /** Copied from {@link ComponentName#dumpDebug(ProtoOutputStream, long)} */
    public static void dumpDebugComponentName(
            @NonNull ComponentName componentName, @NonNull ProtoOutputStream proto, long fieldId) {
        final long token = proto.start(fieldId);
        proto.write(ComponentNameProto.PACKAGE_NAME, componentName.getPackageName());
        proto.write(ComponentNameProto.CLASS_NAME, componentName.getClassName());
        proto.end(token);
    }
}
+43 −0
Original line number Original line Diff line number Diff line
//
// Copyright (C) 2023 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 {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

filegroup {
    name: "srcs_nfc_proto",
    srcs: [
        "*.proto",
    ],
}

// Will be statically linked by `framework-nfc`.
java_library {
    name: "nfc-proto-java-gen",
    installable: false,
    proto: {
        type: "stream",
        include_dirs: [
            "external/protobuf/src",
        ],
    },
    srcs: [
        ":srcs_nfc_proto",
    ],
    sdk_version: "current",
    min_sdk_version: "current",
}