| Index: webkit/tools/test_shell/simple_dom_storage_system.h | 
| =================================================================== | 
| --- webkit/tools/test_shell/simple_dom_storage_system.h	(revision 133749) | 
| +++ webkit/tools/test_shell/simple_dom_storage_system.h	(working copy) | 
| @@ -9,11 +9,8 @@ | 
| #include "base/memory/scoped_ptr.h" | 
| #include "base/memory/weak_ptr.h" | 
| #include "webkit/dom_storage/dom_storage_context.h" | 
| -#include "webkit/dom_storage/dom_storage_host.h" | 
| -#include "webkit/dom_storage/dom_storage_types.h"  // For the ENABLE flag. | 
|  | 
| namespace dom_storage { | 
| -class DomStorageContext; | 
| class DomStorageHost; | 
| } | 
| namespace WebKit { | 
| @@ -22,12 +19,13 @@ | 
|  | 
| // Class that composes dom_storage classes together for use | 
| // in simple single process environments like test_shell and DRT. | 
| -class SimpleDomStorageSystem { | 
| +class SimpleDomStorageSystem | 
| +    : public dom_storage::DomStorageContext::EventObserver { | 
| public: | 
| static SimpleDomStorageSystem& instance() { return *g_instance_; } | 
|  | 
| SimpleDomStorageSystem(); | 
| -  ~SimpleDomStorageSystem(); | 
| +  virtual ~SimpleDomStorageSystem(); | 
|  | 
| // The Create<<>> calls are bound to WebKit api that the embedder | 
| // is responsible for implementing. These factories are called strictly | 
| @@ -46,9 +44,34 @@ | 
| class NamespaceImpl; | 
| class AreaImpl; | 
|  | 
| +  // DomStorageContext::EventObserver implementation which | 
| +  // calls into webkit/webcore to dispatch events. | 
| +  virtual void OnDomStorageItemSet( | 
| +      const dom_storage::DomStorageArea* area, | 
| +      const string16& key, | 
| +      const string16& new_value, | 
| +      const NullableString16& old_value, | 
| +      const GURL& page_url) OVERRIDE; | 
| +  virtual void OnDomStorageItemRemoved( | 
| +      const dom_storage::DomStorageArea* area, | 
| +      const string16& key, | 
| +      const string16& old_value, | 
| +      const GURL& page_url) OVERRIDE; | 
| +  virtual void OnDomStorageAreaCleared( | 
| +      const dom_storage::DomStorageArea* area, | 
| +      const GURL& page_url) OVERRIDE; | 
| + | 
| +  void DispatchDomStorageEvent( | 
| +      const dom_storage::DomStorageArea* area, | 
| +      const GURL& page_url, | 
| +      const NullableString16& key, | 
| +      const NullableString16& new_value, | 
| +      const NullableString16& old_value); | 
| + | 
| base::WeakPtrFactory<SimpleDomStorageSystem> weak_factory_; | 
| scoped_refptr<dom_storage::DomStorageContext> context_; | 
| scoped_ptr<dom_storage::DomStorageHost> host_; | 
| +  AreaImpl* area_being_processed_; | 
| int next_connection_id_; | 
|  | 
| static SimpleDomStorageSystem* g_instance_; | 
|  |