diff options
Diffstat (limited to 'chrome/renderer/renderer_webstoragenamespace_impl.h')
-rw-r--r-- | chrome/renderer/renderer_webstoragenamespace_impl.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/chrome/renderer/renderer_webstoragenamespace_impl.h b/chrome/renderer/renderer_webstoragenamespace_impl.h new file mode 100644 index 0000000..7478a67 --- /dev/null +++ b/chrome/renderer/renderer_webstoragenamespace_impl.h @@ -0,0 +1,35 @@ +// Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this +// source code is governed by a BSD-style license that can be found in the +// LICENSE file. + +#ifndef CHROME_RENDERER_RENDERER_WEBSTORAGENAMESPACE_IMPL_H_ +#define CHROME_RENDERER_RENDERER_WEBSTORAGENAMESPACE_IMPL_H_ + +#include "base/basictypes.h" +#include "webkit/api/public/WebStorageNamespace.h" + +class RendererWebStorageNamespaceImpl : public WebKit::WebStorageNamespace { + public: + explicit RendererWebStorageNamespaceImpl(bool is_local_storage); + RendererWebStorageNamespaceImpl(bool is_local_storage, int64 namespace_id); + + // See WebStorageNamespace.h for documentation on these functions. + virtual ~RendererWebStorageNamespaceImpl(); + virtual WebKit::WebStorageArea* createStorageArea( + const WebKit::WebString& origin); + virtual WebKit::WebStorageNamespace* copy(); + virtual void close(); + + private: + // Are we local storage (as opposed to session storage). Used during lazy + // initialization of namespace_id_. + bool is_local_storage_; + + // Our namespace ID. Lazily initialized. + int64 namespace_id_; + + // namespace_id_ should equal this iff its unitialized. + static const int64 kUninitializedNamespaceId = -1; +}; + +#endif // CHROME_RENDERER_WEBSTORAGENAMESPACE_IMPL_H_ |