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

Commit 39d08050 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Dump usb as DualDump"

parents 0b33be37 371a3b87
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -16,6 +16,11 @@

package android.hardware.usb;

import android.annotation.NonNull;
import android.service.usb.UsbAccessoryFilterProto;

import com.android.internal.util.dump.DualDumpOutputStream;

import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlSerializer;
@@ -142,4 +147,17 @@ public class AccessoryFilter {
                "\", mModel=\"" + mModel +
                "\", mVersion=\"" + mVersion + "\"]";
    }

    /**
     * Write a description of the filter to a dump stream.
     */
    public void dump(@NonNull DualDumpOutputStream dump, String idName, long id) {
        long token = dump.start(idName, id);

        dump.write("manufacturer", UsbAccessoryFilterProto.MANUFACTURER, mManufacturer);
        dump.write("model", UsbAccessoryFilterProto.MODEL, mModel);
        dump.write("version", UsbAccessoryFilterProto.VERSION, mVersion);

        dump.end(token);
    }
}
+22 −0
Original line number Diff line number Diff line
@@ -16,8 +16,12 @@

package android.hardware.usb;

import android.annotation.NonNull;
import android.service.usb.UsbDeviceFilterProto;
import android.util.Slog;

import com.android.internal.util.dump.DualDumpOutputStream;

import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlSerializer;
@@ -310,4 +314,22 @@ public class DeviceFilter {
                ",mProductName=" + mProductName + ",mSerialNumber=" + mSerialNumber +
                "]";
    }

    /**
     * Write a description of the filter to a dump stream.
     */
    public void dump(@NonNull DualDumpOutputStream dump, String idName, long id) {
        long token = dump.start(idName, id);

        dump.write("vendor_id", UsbDeviceFilterProto.VENDOR_ID, mVendorId);
        dump.write("product_id", UsbDeviceFilterProto.PRODUCT_ID, mProductId);
        dump.write("class", UsbDeviceFilterProto.CLASS, mClass);
        dump.write("subclass", UsbDeviceFilterProto.SUBCLASS, mSubclass);
        dump.write("protocol", UsbDeviceFilterProto.PROTOCOL, mProtocol);
        dump.write("manufacturer_name", UsbDeviceFilterProto.MANUFACTURER_NAME, mManufacturerName);
        dump.write("product_name", UsbDeviceFilterProto.PRODUCT_NAME, mProductName);
        dump.write("serial_number", UsbDeviceFilterProto.SERIAL_NUMBER, mSerialNumber);

        dump.end(token);
    }
}
+12 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.os.Parcel;
import android.os.Parcelable;

import com.android.internal.util.Preconditions;

/**
@@ -105,6 +106,17 @@ public class UsbConfiguration implements Parcelable {
        return (mAttributes & ATTR_REMOTE_WAKEUP) != 0;
    }

    /**
     * Returns the attributes of this configuration
     *
     * @return the configuration's attributes
     *
     * @hide
     */
    public int getAttributes() {
        return mAttributes;
    }

    /**
     * Returns the configuration's max power consumption, in milliamps.
     *
+12 −6
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package android.hardware.usb;

import android.service.ServiceProtoEnums;

/**
 * Contains constants for the USB protocol.
 * These constants correspond to definitions in linux/usb/ch9.h in the linux kernel.
@@ -35,12 +37,12 @@ public final class UsbConstants {
     * Used to signify direction of data for a {@link UsbEndpoint} is OUT (host to device)
     * @see UsbEndpoint#getDirection
     */
    public static final int USB_DIR_OUT = 0;
    public static final int USB_DIR_OUT = ServiceProtoEnums.USB_ENDPOINT_DIR_OUT; // 0
    /**
     * Used to signify direction of data for a {@link UsbEndpoint} is IN (device to host)
     * @see UsbEndpoint#getDirection
     */
    public static final int USB_DIR_IN = 0x80;
    public static final int USB_DIR_IN = ServiceProtoEnums.USB_ENDPOINT_DIR_IN; // 0x80

    /**
     * Bitmask used for extracting the {@link UsbEndpoint} number its address field.
@@ -63,22 +65,26 @@ public final class UsbConstants {
     * Control endpoint type (endpoint zero)
     * @see UsbEndpoint#getType
     */
    public static final int USB_ENDPOINT_XFER_CONTROL = 0;
    public static final int USB_ENDPOINT_XFER_CONTROL =
            ServiceProtoEnums.USB_ENDPOINT_TYPE_XFER_CONTROL; // 0
    /**
     * Isochronous endpoint type (currently not supported)
     * @see UsbEndpoint#getType
     */
    public static final int USB_ENDPOINT_XFER_ISOC = 1;
    public static final int USB_ENDPOINT_XFER_ISOC =
            ServiceProtoEnums.USB_ENDPOINT_TYPE_XFER_ISOC; // 1
    /**
     * Bulk endpoint type
     * @see UsbEndpoint#getType
     */
    public static final int USB_ENDPOINT_XFER_BULK = 2;
    public static final int USB_ENDPOINT_XFER_BULK =
            ServiceProtoEnums.USB_ENDPOINT_TYPE_XFER_BULK; // 2
    /**
     * Interrupt endpoint type
     * @see UsbEndpoint#getType
     */
    public static final int USB_ENDPOINT_XFER_INT = 3;
    public static final int USB_ENDPOINT_XFER_INT =
            ServiceProtoEnums.USB_ENDPOINT_TYPE_XFER_INT; // 3


    /**
+4 −34
Original line number Diff line number Diff line
@@ -16,10 +16,9 @@

package com.android.internal.print;

import static com.android.internal.util.dump.DumpUtils.writeComponentName;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.ComponentName;
import android.content.ComponentNameProto;
import android.content.Context;
import android.print.PageRange;
import android.print.PrintAttributes;
@@ -40,41 +39,12 @@ import android.service.print.PrinterIdProto;
import android.service.print.PrinterInfoProto;
import android.service.print.ResolutionProto;

import com.android.internal.util.dump.DualDumpOutputStream;

/**
 * Utilities for dumping print related proto buffer
 */
public class DumpUtils {
    /**
     * Write a string to a proto if the string is not {@code null}.
     *
     * @param proto The proto to write to
     * @param idName Clear text name of the proto-id
     * @param id The proto-id of the string
     * @param string The string to write
     */
    public static void writeStringIfNotNull(@NonNull DualDumpOutputStream proto, String idName,
            long id, @Nullable String string) {
        if (string != null) {
            proto.write(idName, id, string);
        }
    }

    /**
     * Write a {@link ComponentName} to a proto.
     *
     * @param proto The proto to write to
     * @param idName Clear text name of the proto-id
     * @param id The proto-id of the component name
     * @param component The component name to write
     */
    public static void writeComponentName(@NonNull DualDumpOutputStream proto, String idName,
            long id, @NonNull ComponentName component) {
        long token = proto.start(idName, id);
        proto.write("package_name", ComponentNameProto.PACKAGE_NAME, component.getPackageName());
        proto.write("class_name", ComponentNameProto.CLASS_NAME, component.getClassName());
        proto.end(token);
    }

    /**
     * Write a {@link PrinterId} to a proto.
     *
Loading