diff options
Diffstat (limited to 'webkit/glue/plugins/pepper_file_system.cc')
-rw-r--r-- | webkit/glue/plugins/pepper_file_system.cc | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/webkit/glue/plugins/pepper_file_system.cc b/webkit/glue/plugins/pepper_file_system.cc deleted file mode 100644 index 9262798..0000000 --- a/webkit/glue/plugins/pepper_file_system.cc +++ /dev/null @@ -1,85 +0,0 @@ -// 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. - -#include "webkit/glue/plugins/pepper_file_system.h" - -#include "base/ref_counted.h" -#include "ppapi/c/dev/ppb_file_system_dev.h" -#include "ppapi/c/pp_completion_callback.h" -#include "third_party/WebKit/WebKit/chromium/public/WebDocument.h" -#include "third_party/WebKit/WebKit/chromium/public/WebElement.h" -#include "third_party/WebKit/WebKit/chromium/public/WebFrame.h" -#include "third_party/WebKit/WebKit/chromium/public/WebPluginContainer.h" -#include "webkit/fileapi/file_system_types.h" -#include "webkit/glue/plugins/pepper_directory_reader.h" -#include "webkit/glue/plugins/pepper_file_callbacks.h" -#include "webkit/glue/plugins/pepper_plugin_delegate.h" -#include "webkit/glue/plugins/pepper_plugin_instance.h" -#include "webkit/glue/plugins/pepper_plugin_module.h" -#include "webkit/glue/plugins/pepper_resource.h" -#include "webkit/glue/plugins/pepper_resource_tracker.h" - -namespace pepper { - -namespace { - -PP_Resource Create(PP_Instance instance, PP_FileSystemType_Dev type) { - PluginInstance* plugin_instance = - ResourceTracker::Get()->GetInstance(instance); - if (!plugin_instance) - return 0; - - FileSystem* file_system = new FileSystem(plugin_instance, type); - return file_system->GetReference(); -} - -int32_t Open(PP_Resource file_system_id, - int64 expected_size, - PP_CompletionCallback callback) { - scoped_refptr<FileSystem> file_system( - Resource::GetAs<FileSystem>(file_system_id)); - if (!file_system) - return PP_ERROR_BADRESOURCE; - - if (file_system->opened()) - return PP_OK; - - if ((file_system->type() != PP_FILESYSTEMTYPE_LOCALPERSISTENT) && - (file_system->type() != PP_FILESYSTEMTYPE_LOCALTEMPORARY)) - return PP_ERROR_FAILED; - - PluginInstance* instance = file_system->instance(); - fileapi::FileSystemType file_system_type = - (file_system->type() == PP_FILESYSTEMTYPE_LOCALTEMPORARY ? - fileapi::kFileSystemTypeTemporary : - fileapi::kFileSystemTypePersistent); - if (!instance->delegate()->OpenFileSystem( - instance->container()->element().document().frame()->url(), - file_system_type, expected_size, - new FileCallbacks(instance->module()->AsWeakPtr(), - callback, NULL, file_system, NULL))) - return PP_ERROR_FAILED; - - return PP_ERROR_WOULDBLOCK; -} - -const PPB_FileSystem_Dev ppb_filesystem = { - &Create, - &Open -}; - -} // namespace - -FileSystem::FileSystem(PluginInstance* instance, PP_FileSystemType_Dev type) - : Resource(instance->module()), - instance_(instance), - type_(type), - opened_(false) { -} - -const PPB_FileSystem_Dev* FileSystem::GetInterface() { - return &ppb_filesystem; -} - -} // namespace pepper |