Chromium Code Reviews| Index: content/renderer/renderer_webstoragearea_impl.cc |
| diff --git a/content/renderer/renderer_webstoragearea_impl.cc b/content/renderer/renderer_webstoragearea_impl.cc |
| index d3063ecf9af3a4df50e982dfc942aa55e6819219..bd4d03b7b84c8410c9805afc6b31c80b19582ee1 100644 |
| --- a/content/renderer/renderer_webstoragearea_impl.cc |
| +++ b/content/renderer/renderer_webstoragearea_impl.cc |
| @@ -4,6 +4,8 @@ |
| #include "content/renderer/renderer_webstoragearea_impl.h" |
| +#include "base/metrics/histogram.h" |
| +#include "base/time.h" |
| #include "content/common/dom_storage_messages.h" |
| #include "content/renderer/render_thread_impl.h" |
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebStorageNamespace.h" |
| @@ -25,22 +27,28 @@ RendererWebStorageAreaImpl::~RendererWebStorageAreaImpl() { |
| unsigned RendererWebStorageAreaImpl::length() { |
| unsigned length; |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send( |
| new DOMStorageHostMsg_Length(storage_area_id_, &length)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.length", base::Time::Now() - start); |
|
darin (slow to review)
2011/11/01 05:31:49
it seems like we should have a convenience macro f
cbentzel
2011/11/01 11:37:52
Yes. I'll see how common this is. Most of the timi
|
| return length; |
| } |
| WebString RendererWebStorageAreaImpl::key(unsigned index) { |
| NullableString16 key; |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send( |
| new DOMStorageHostMsg_Key(storage_area_id_, index, &key)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.key", base::Time::Now() - start); |
| return key; |
| } |
| WebString RendererWebStorageAreaImpl::getItem(const WebString& key) { |
| NullableString16 value; |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send( |
| new DOMStorageHostMsg_GetItem(storage_area_id_, key, &value)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.getItem", base::Time::Now() - start); |
| return value; |
| } |
| @@ -53,21 +61,27 @@ void RendererWebStorageAreaImpl::setItem( |
| return; |
| } |
| NullableString16 old_value; |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send(new DOMStorageHostMsg_SetItem( |
| storage_area_id_, key, value, url, &result, &old_value)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.setItem", base::Time::Now() - start); |
| old_value_webkit = old_value; |
| } |
| void RendererWebStorageAreaImpl::removeItem( |
| const WebString& key, const WebURL& url, WebString& old_value_webkit) { |
| NullableString16 old_value; |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send( |
| new DOMStorageHostMsg_RemoveItem(storage_area_id_, key, url, &old_value)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.removeItem", base::Time::Now() - start); |
| old_value_webkit = old_value; |
| } |
| void RendererWebStorageAreaImpl::clear( |
| const WebURL& url, bool& cleared_something) { |
| + base::Time start = base::Time::Now(); |
| RenderThreadImpl::current()->Send( |
| new DOMStorageHostMsg_Clear(storage_area_id_, url, &cleared_something)); |
| + UMA_HISTOGRAM_TIMES("DOMStorage.clear", base::Time::Now() - start); |
| } |