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

Commit 8f5da09a authored by Charles Yo's avatar Charles Yo
Browse files

Revert "Clearly distinguish ProtoLog hash vs message interface"

Revert submission 28147757-no-processing-protolog

Reason for revert: b/351458758

Reverted changes: /q/submissionid:28147757-no-processing-protolog

Change-Id: If80d73c9351ed98b2890a8a7090b7310f6f24fa2
parent 9486eb7e
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -97,12 +97,12 @@ public class LegacyProtoLogImpl implements IProtoLog {
    @VisibleForTesting
    @Override
    public void log(LogLevel level, IProtoLogGroup group, long messageHash, int paramsMask,
            Object[] args) {
            @Nullable String messageString, Object[] args) {
        if (group.isLogToProto()) {
            logToProto(messageHash, paramsMask, args);
        }
        if (group.isLogToLogcat()) {
            logToLogcat(group.getTag(), level, messageHash, args);
            logToLogcat(group.getTag(), level, messageHash, messageString, args);
        }
    }

@@ -113,9 +113,12 @@ public class LegacyProtoLogImpl implements IProtoLog {
                "Not implemented. Only implemented for PerfettoProtoLogImpl.");
    }

    private void logToLogcat(String tag, LogLevel level, long messageHash, Object[] args) {
    private void logToLogcat(String tag, LogLevel level, long messageHash,
            @Nullable String messageString, Object[] args) {
        String message = null;
        final String messageString = mViewerConfig.getViewerString(messageHash);
        if (messageString == null) {
            messageString = mViewerConfig.getViewerString(messageHash);
        }
        if (messageString != null) {
            if (args != null) {
                try {
+11 −7
Original line number Diff line number Diff line
@@ -170,7 +170,7 @@ public class PerfettoProtoLogImpl implements IProtoLog {
    @VisibleForTesting
    @Override
    public void log(LogLevel level, IProtoLogGroup group, long messageHash, int paramsMask,
            Object[] args) {
            @Nullable String messageString, Object[] args) {
        Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "log");

        try {
@@ -180,7 +180,7 @@ public class PerfettoProtoLogImpl implements IProtoLog {
                        logToProto(level, group, messageHash, paramsMask, args, tsNanos));
            }
            if (group.isLogToLogcat()) {
                logToLogcat(group.getTag(), level, messageHash, args);
                logToLogcat(group.getTag(), level, messageHash, messageString, args);
            }
        } finally {
            Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
@@ -199,7 +199,7 @@ public class PerfettoProtoLogImpl implements IProtoLog {
                                tsNanos));
            }
            if (group.isLogToLogcat()) {
                logToLogcat(group.getTag(), logLevel, 0, args);
                logToLogcat(group.getTag(), logLevel, 0, messageString, args);
            }
        } finally {
            Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
@@ -297,18 +297,22 @@ public class PerfettoProtoLogImpl implements IProtoLog {
        os.end(outMessagesToken);
    }

    private void logToLogcat(String tag, LogLevel level, long messageHash, Object[] args) {
    private void logToLogcat(String tag, LogLevel level, long messageHash,
            @Nullable String messageString, Object[] args) {
        Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "logToLogcat");
        try {
            doLogToLogcat(tag, level, messageHash, args);
            doLogToLogcat(tag, level, messageHash, messageString, args);
        } finally {
            Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
        }
    }

    private void doLogToLogcat(String tag, LogLevel level, long messageHash, Object[] args) {
    private void doLogToLogcat(String tag, LogLevel level, long messageHash,
            @androidx.annotation.Nullable String messageString, Object[] args) {
        String message = null;
        String messageString = mViewerConfigReader.getViewerString(messageHash);
        if (messageString == null) {
            messageString = mViewerConfigReader.getViewerString(messageHash);
        }
        if (messageString != null) {
            if (args != null) {
                try {
+27 −12
Original line number Diff line number Diff line
@@ -54,33 +54,48 @@ public class ProtoLogImpl {
    private static Runnable sCacheUpdater;

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void d(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.DEBUG, group, messageHash, paramsMask, args);
    public static void d(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance()
                .log(LogLevel.DEBUG, group, messageHash, paramsMask, messageString, args);
    }

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void v(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.VERBOSE, group, messageHash, paramsMask, args);
    public static void v(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance().log(LogLevel.VERBOSE, group, messageHash, paramsMask, messageString,
                args);
    }

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void i(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.INFO, group, messageHash, paramsMask, args);
    public static void i(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance().log(LogLevel.INFO, group, messageHash, paramsMask, messageString, args);
    }

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void w(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.WARN, group, messageHash, paramsMask, args);
    public static void w(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance().log(LogLevel.WARN, group, messageHash, paramsMask, messageString, args);
    }

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void e(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.ERROR, group, messageHash, paramsMask, args);
    public static void e(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance()
                .log(LogLevel.ERROR, group, messageHash, paramsMask, messageString, args);
    }

    /** Used by the ProtoLogTool, do not call directly - use {@code ProtoLog} class instead. */
    public static void wtf(IProtoLogGroup group, long messageHash, int paramsMask, Object... args) {
        getSingleInstance().log(LogLevel.WTF, group, messageHash, paramsMask, args);
    public static void wtf(IProtoLogGroup group, long messageHash, int paramsMask,
            @Nullable String messageString,
            Object... args) {
        getSingleInstance().log(LogLevel.WTF, group, messageHash, paramsMask, messageString, args);
    }

    /**
+2 −1
Original line number Diff line number Diff line
@@ -27,10 +27,11 @@ public interface IProtoLog {
     * @param group The group this message belongs to.
     * @param messageHash The hash of the message.
     * @param paramsMask The parameters mask of the message.
     * @param messageString The message string.
     * @param args The arguments of the message.
     */
    void log(LogLevel logLevel, IProtoLogGroup group, long messageHash, int paramsMask,
            Object[] args);
             String messageString, Object[] args);

    /**
     * Log a ProtoLog message