diff options
author | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-02 20:42:04 +0000 |
---|---|---|
committer | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-02 20:42:04 +0000 |
commit | 1d14f58b753c59924cef2f5bb4a0f1cb88db07d5 (patch) | |
tree | a0bdee96486c4f0cbe4bb8e23ed5b890c8131587 /ipc/ipc_message_utils.cc | |
parent | fd346b76799059213d36109a799bc029f3a2ed1d (diff) | |
download | chromium_src-1d14f58b753c59924cef2f5bb4a0f1cb88db07d5.zip chromium_src-1d14f58b753c59924cef2f5bb4a0f1cb88db07d5.tar.gz chromium_src-1d14f58b753c59924cef2f5bb4a0f1cb88db07d5.tar.bz2 |
Add metrics to measure time elapsed between form load and form submission with or without Autofill.
BUG=none
TEST=unit_tests --gtest_filter=AutofillMetricsTest.*
Review URL: http://codereview.chromium.org/7740070
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99447 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ipc/ipc_message_utils.cc')
-rw-r--r-- | ipc/ipc_message_utils.cc | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/ipc/ipc_message_utils.cc b/ipc/ipc_message_utils.cc index 6ef03f4..dcbde0b 100644 --- a/ipc/ipc_message_utils.cc +++ b/ipc/ipc_message_utils.cc @@ -269,7 +269,7 @@ void ParamTraits<base::Time>::Log(const param_type& p, std::string* l) { } void ParamTraits<base::TimeDelta> ::Write(Message* m, const param_type& p) { - ParamTraits<int64> ::Write(m, p.InMicroseconds()); + ParamTraits<int64> ::Write(m, p.ToInternalValue()); } bool ParamTraits<base::TimeDelta> ::Read(const Message* m, @@ -278,13 +278,32 @@ bool ParamTraits<base::TimeDelta> ::Read(const Message* m, int64 value; bool ret = ParamTraits<int64> ::Read(m, iter, &value); if (ret) - *r = base::TimeDelta::FromMicroseconds(value); + *r = base::TimeDelta::FromInternalValue(value); return ret; } void ParamTraits<base::TimeDelta> ::Log(const param_type& p, std::string* l) { - ParamTraits<int64> ::Log(p.InMicroseconds(), l); + ParamTraits<int64> ::Log(p.ToInternalValue(), l); +} + +void ParamTraits<base::TimeTicks> ::Write(Message* m, const param_type& p) { + ParamTraits<int64> ::Write(m, p.ToInternalValue()); +} + +bool ParamTraits<base::TimeTicks> ::Read(const Message* m, + void** iter, + param_type* r) { + int64 value; + bool ret = ParamTraits<int64> ::Read(m, iter, &value); + if (ret) + *r = base::TimeTicks::FromInternalValue(value); + + return ret; +} + +void ParamTraits<base::TimeTicks> ::Log(const param_type& p, std::string* l) { + ParamTraits<int64> ::Log(p.ToInternalValue(), l); } void ParamTraits<DictionaryValue>::Write(Message* m, const param_type& p) { |