summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Rowe <erowe@google.com>2014-08-28 16:09:03 -0700
committerEric Rowe <erowe@google.com>2014-08-28 16:09:03 -0700
commite64f495107aaa91f2e40e7e5c92c700d58115fa3 (patch)
treeeb63686499fcac54b3d5a1a0d4c207a7be60ff51
parente337a91a147162fbad603c05c5ddffd12bff6f7d (diff)
downloadloganalysis-lollipop-mr1-fi-release.tar.gz
Parse mem info as long.android-wear-5.1.1_r1android-wear-5.1.0_r1android-wear-5.0.0_r1android-m-preview-2android-m-preview-1android-m-previewandroid-cts-5.1_r9android-cts-5.1_r8android-cts-5.1_r7android-cts-5.1_r6android-cts-5.1_r5android-cts-5.1_r4android-cts-5.1_r3android-cts-5.1_r28android-cts-5.1_r27android-cts-5.1_r26android-cts-5.1_r25android-cts-5.1_r24android-cts-5.1_r23android-cts-5.1_r22android-cts-5.1_r21android-cts-5.1_r20android-cts-5.1_r2android-cts-5.1_r19android-cts-5.1_r18android-cts-5.1_r17android-cts-5.1_r16android-cts-5.1_r15android-cts-5.1_r14android-cts-5.1_r13android-cts-5.1_r10android-cts-5.1_r1android-cts-5.0_r9android-cts-5.0_r8android-cts-5.0_r7android-cts-5.0_r6android-cts-5.0_r5android-cts-5.0_r4android-cts-5.0_r3android-5.1.1_r9android-5.1.1_r8android-5.1.1_r7android-5.1.1_r6android-5.1.1_r5android-5.1.1_r4android-5.1.1_r38android-5.1.1_r37android-5.1.1_r36android-5.1.1_r35android-5.1.1_r34android-5.1.1_r33android-5.1.1_r30android-5.1.1_r3android-5.1.1_r29android-5.1.1_r28android-5.1.1_r26android-5.1.1_r25android-5.1.1_r24android-5.1.1_r23android-5.1.1_r22android-5.1.1_r20android-5.1.1_r2android-5.1.1_r19android-5.1.1_r18android-5.1.1_r17android-5.1.1_r16android-5.1.1_r15android-5.1.1_r14android-5.1.1_r13android-5.1.1_r12android-5.1.1_r10android-5.1.1_r1android-5.1.0_r5android-5.1.0_r4android-5.1.0_r3android-5.1.0_r1android-5.0.2_r3android-5.0.2_r1android-5.0.1_r1android-5.0.0_r7android-5.0.0_r6android-5.0.0_r5.1android-5.0.0_r5android-5.0.0_r4android-5.0.0_r3android-5.0.0_r2android-5.0.0_r1master-soonglollipop-wear-releaselollipop-releaselollipop-mr1-wfc-releaselollipop-mr1-releaselollipop-mr1-fi-releaselollipop-mr1-devlollipop-mr1-cts-releaselollipop-devlollipop-cts-release
Ignore entries with values greater than a long instead of crashing. Change-Id: I62410d4083169143049229afd47236a0984b3c42
-rw-r--r--src/com/android/loganalysis/item/MemInfoItem.java2
-rw-r--r--src/com/android/loganalysis/parser/MemInfoParser.java8
-rw-r--r--tests/src/com/android/loganalysis/item/MemInfoItemTest.java4
-rw-r--r--tests/src/com/android/loganalysis/parser/MemInfoParserTest.java18
4 files changed, 20 insertions, 12 deletions
diff --git a/src/com/android/loganalysis/item/MemInfoItem.java b/src/com/android/loganalysis/item/MemInfoItem.java
index 07a14fe..9fa512c 100644
--- a/src/com/android/loganalysis/item/MemInfoItem.java
+++ b/src/com/android/loganalysis/item/MemInfoItem.java
@@ -22,7 +22,7 @@ import org.json.JSONObject;
* An {@link IItem} used to store the memory info output.
*/
@SuppressWarnings("serial")
-public class MemInfoItem extends GenericMapItem<Integer> {
+public class MemInfoItem extends GenericMapItem<Long> {
/** Constant for JSON output */
public static final String LINES = "LINES";
diff --git a/src/com/android/loganalysis/parser/MemInfoParser.java b/src/com/android/loganalysis/parser/MemInfoParser.java
index 72125b0..4a48798 100644
--- a/src/com/android/loganalysis/parser/MemInfoParser.java
+++ b/src/com/android/loganalysis/parser/MemInfoParser.java
@@ -49,8 +49,12 @@ public class MemInfoParser implements IParser {
Matcher m = INFO_LINE.matcher(line);
if (m.matches()) {
String key = m.group(1);
- Integer value = Integer.parseInt(m.group(2));
- item.put(key, value);
+ try {
+ Long value = Long.parseLong(m.group(2));
+ item.put(key, value);
+ } catch (NumberFormatException e) {
+ // Ignore
+ }
}
}
diff --git a/tests/src/com/android/loganalysis/item/MemInfoItemTest.java b/tests/src/com/android/loganalysis/item/MemInfoItemTest.java
index beda797..7f25fe3 100644
--- a/tests/src/com/android/loganalysis/item/MemInfoItemTest.java
+++ b/tests/src/com/android/loganalysis/item/MemInfoItemTest.java
@@ -30,8 +30,8 @@ public class MemInfoItemTest extends TestCase {
*/
public void testToJson() throws JSONException {
MemInfoItem item = new MemInfoItem();
- item.put("foo", 123);
- item.put("bar", 456);
+ item.put("foo", 123l);
+ item.put("bar", 456l);
item.setText("foo: 123 kB\nbar: 456 kB");
// Convert to JSON string and back again
diff --git a/tests/src/com/android/loganalysis/parser/MemInfoParserTest.java b/tests/src/com/android/loganalysis/parser/MemInfoParserTest.java
index d02ce39..ab41b33 100644
--- a/tests/src/com/android/loganalysis/parser/MemInfoParserTest.java
+++ b/tests/src/com/android/loganalysis/parser/MemInfoParserTest.java
@@ -37,16 +37,20 @@ public class MemInfoParserTest extends TestCase {
"MemFree: 65420 kB",
"Buffers: 20800 kB",
"Cached: 86204 kB",
- "SwapCached: 0 kB");
+ "SwapCached: 0 kB",
+ "Long: 34359640152 kB",
+ "ExtraLongIgnore: 12345678901234567890 kB");
MemInfoItem item = new MemInfoParser().parse(inputBlock);
- assertEquals(5, item.size());
- assertEquals((Integer)353332, item.get("MemTotal"));
- assertEquals((Integer)65420, item.get("MemFree"));
- assertEquals((Integer)20800, item.get("Buffers"));
- assertEquals((Integer)86204, item.get("Cached"));
- assertEquals((Integer)0, item.get("SwapCached"));
+ assertEquals(6, item.size());
+ assertEquals((Long)353332l, item.get("MemTotal"));
+ assertEquals((Long)65420l, item.get("MemFree"));
+ assertEquals((Long)20800l, item.get("Buffers"));
+ assertEquals((Long)86204l, item.get("Cached"));
+ assertEquals((Long)0l, item.get("SwapCached"));
+ assertEquals((Long)34359640152l, item.get("Long"));
+ assertNull(item.get("ExtraLongIgnore"));
assertEquals(ArrayUtil.join("\n", inputBlock), item.getText());
}