diff options
Diffstat (limited to 'tools/stats_log_api_gen/Collation.cpp')
-rw-r--r-- | tools/stats_log_api_gen/Collation.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/tools/stats_log_api_gen/Collation.cpp b/tools/stats_log_api_gen/Collation.cpp index ab106d708748..ebdcdfdd6c50 100644 --- a/tools/stats_log_api_gen/Collation.cpp +++ b/tools/stats_log_api_gen/Collation.cpp @@ -46,7 +46,8 @@ AtomDecl::AtomDecl(const AtomDecl& that) message(that.message), fields(that.fields), primaryFields(that.primaryFields), - exclusiveField(that.exclusiveField) {} + exclusiveField(that.exclusiveField), + uidField(that.uidField) {} AtomDecl::AtomDecl(int c, const string& n, const string& m) :code(c), @@ -262,6 +263,18 @@ int collate_atom(const Descriptor *atom, AtomDecl *atomDecl, errorCount++; } } + + if (field->options().GetExtension(os::statsd::is_uid) == true) { + if (javaType != JAVA_TYPE_INT) { + errorCount++; + } + + if (atomDecl->uidField == 0) { + atomDecl->uidField = it->first; + } else { + errorCount++; + } + } } return errorCount; |