From 2d89c243da208f929dfd72de4e37f31a06b4b830 Mon Sep 17 00:00:00 2001 From: Alison Cichowlas Date: Wed, 25 Jan 2017 08:51:45 -0500 Subject: [PATCH] Tron logging - Fix isValidValue to match its name, allow nulls. Test: runtest --path frameworks/base/core/tests/coretests/src/android/metrics/LogMakerTest.java Change-Id: I92567e1873c5178606ac88135b5934d760b4ec24 --- core/java/android/metrics/LogMaker.java | 10 +++++++--- .../coretests/src/android/metrics/LogMakerTest.java | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/core/java/android/metrics/LogMaker.java b/core/java/android/metrics/LogMaker.java index 0aef532cdb37e..2bf841c3171e6 100644 --- a/core/java/android/metrics/LogMaker.java +++ b/core/java/android/metrics/LogMaker.java @@ -106,7 +106,7 @@ public class LogMaker { * @return */ public LogMaker addTaggedData(int tag, Object value) { - if (isValidValue(value)) { + if (!isValidValue(value)) { throw new IllegalArgumentException( "Value must be loggable type - int, long, float, String"); } @@ -119,10 +119,14 @@ public class LogMaker { } public boolean isValidValue(Object value) { - return !(value instanceof Integer || + if (value == null) { + Log.i("LogBuilder", "Logging a null value."); + return true; + } + return value instanceof Integer || value instanceof String || value instanceof Long || - value instanceof Float); + value instanceof Float; } public Object getTaggedData(int tag) { diff --git a/core/tests/coretests/src/android/metrics/LogMakerTest.java b/core/tests/coretests/src/android/metrics/LogMakerTest.java index 0f75cb67795fa..35d8d9343887b 100644 --- a/core/tests/coretests/src/android/metrics/LogMakerTest.java +++ b/core/tests/coretests/src/android/metrics/LogMakerTest.java @@ -100,6 +100,7 @@ public class LogMakerTest extends TestCase { builder.addTaggedData(2, 123); builder.addTaggedData(3, 123L); builder.addTaggedData(4, 123.0F); + builder.addTaggedData(5, null); Object[] out = builder.serialize(); assertEquals("onetwothree", out[1]); assertEquals(123, out[3]);