diff options
author | Yangster-mac <yanglu@google.com> | 2018-08-18 12:38:11 -0700 |
---|---|---|
committer | Yang Lu <yanglu@google.com> | 2018-08-19 22:37:59 +0000 |
commit | 48b3d62bfece0fa0238f629220a799faa46fb58b (patch) | |
tree | ba2c08655c4b30a5b77a7be3b9b7b355a98bcbc4 /tools/stats_log_api_gen/Collation.cpp | |
parent | 6e68dc711ea8f0ddacf45bc1ac7280401c908399 (diff) |
Create log event from key value maps.
BUG: b/112816333
Test: statsd test.
Change-Id: Ib66f06186abfacd77807436379e1e142a5b87c99
Diffstat (limited to 'tools/stats_log_api_gen/Collation.cpp')
-rw-r--r-- | tools/stats_log_api_gen/Collation.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/stats_log_api_gen/Collation.cpp b/tools/stats_log_api_gen/Collation.cpp index ebdcdfdd6c50..40ee490fc186 100644 --- a/tools/stats_log_api_gen/Collation.cpp +++ b/tools/stats_log_api_gen/Collation.cpp @@ -116,6 +116,9 @@ java_type(const FieldDescriptor* field) if (field->message_type()->full_name() == "android.os.statsd.AttributionNode") { return JAVA_TYPE_ATTRIBUTION_CHAIN; + } else if (field->message_type()->full_name() == + "android.os.statsd.KeyValuePair") { + return JAVA_TYPE_KEY_VALUE_PAIR; } else { return JAVA_TYPE_OBJECT; } @@ -181,6 +184,16 @@ int collate_atom(const Descriptor *atom, AtomDecl *atomDecl, expectedNumber++; } + // Skips the key value pair atom. + for (map<int, const FieldDescriptor *>::const_iterator it = fields.begin(); + it != fields.end(); it++) { + const FieldDescriptor *field = it->second; + java_type_t javaType = java_type(field); + if (javaType == JAVA_TYPE_KEY_VALUE_PAIR) { + return 0; + } + } + // Check that only allowed types are present. Remove any invalid ones. for (map<int, const FieldDescriptor *>::const_iterator it = fields.begin(); it != fields.end(); it++) { |