// Copyright (c) 2010 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_WORKER_WORKER_WEBKITCLIENT_IMPL_H_ #define CHROME_WORKER_WORKER_WEBKITCLIENT_IMPL_H_ #include "third_party/WebKit/WebKit/chromium/public/WebMimeRegistry.h" #include "webkit/glue/webkitclient_impl.h" class WorkerWebKitClientImpl : public webkit_glue::WebKitClientImpl, public WebKit::WebMimeRegistry { public: // WebKitClient methods: virtual WebKit::WebClipboard* clipboard(); virtual WebKit::WebMimeRegistry* mimeRegistry(); virtual WebKit::WebSandboxSupport* sandboxSupport(); virtual bool sandboxEnabled(); virtual unsigned long long visitedLinkHash(const char* canonicalURL, size_t length); virtual bool isLinkVisited(unsigned long long linkHash); virtual WebKit::WebMessagePortChannel* createMessagePortChannel(); virtual void setCookies(const WebKit::WebURL& url, const WebKit::WebURL& first_party_for_cookies, const WebKit::WebString& value); virtual WebKit::WebString cookies( const WebKit::WebURL& url, const WebKit::WebURL& first_party_for_cookies); virtual void prefetchHostName(const WebKit::WebString&); virtual bool getFileSize(const WebKit::WebString& path, long long& result); virtual WebKit::WebString defaultLocale(); virtual WebKit::WebStorageNamespace* createLocalStorageNamespace( const WebKit::WebString& path, unsigned quota); virtual void dispatchStorageEvent( const WebKit::WebString& key, const WebKit::WebString& old_value, const WebKit::WebString& new_value, const WebKit::WebString& origin, const WebKit::WebURL& url, bool is_local_storage); virtual WebKit::WebSharedWorkerRepository* sharedWorkerRepository(); virtual WebKit::WebKitClient::FileHandle databaseOpenFile( const WebKit::WebString& vfs_file_name, int desired_flags, WebKit::WebKitClient::FileHandle* dir_handle); virtual int databaseDeleteFile(const WebKit::WebString& vfs_file_name, bool sync_dir); virtual long databaseGetFileAttributes( const WebKit::WebString& vfs_file_name); virtual long long databaseGetFileSize( const WebKit::WebString& vfs_file_name); // WebMimeRegistry methods: virtual WebKit::WebMimeRegistry::SupportsType supportsMIMEType( const WebKit::WebString&); virtual WebKit::WebMimeRegistry::SupportsType supportsImageMIMEType( const WebKit::WebString&); virtual WebKit::WebMimeRegistry::SupportsType supportsJavaScriptMIMEType( const WebKit::WebString&); virtual WebKit::WebMimeRegistry::SupportsType supportsMediaMIMEType( const WebKit::WebString&, const WebKit::WebString&); virtual WebKit::WebMimeRegistry::SupportsType supportsNonImageMIMEType( const WebKit::WebString&); virtual WebKit::WebString mimeTypeForExtension(const WebKit::WebString&); virtual WebKit::WebString mimeTypeFromFile(const WebKit::WebString&); virtual WebKit::WebString preferredExtensionForMIMEType( const WebKit::WebString&); }; #endif // CHROME_WORKER_WORKER_WEBKITCLIENT_IMPL_H_