| Index: ppapi/proxy/ppb_file_system_proxy.cc
|
| diff --git a/ppapi/proxy/ppb_file_system_proxy.cc b/ppapi/proxy/ppb_file_system_proxy.cc
|
| deleted file mode 100644
|
| index f0e67a4913b1bfedc18b72ff50a7e77c93173293..0000000000000000000000000000000000000000
|
| --- a/ppapi/proxy/ppb_file_system_proxy.cc
|
| +++ /dev/null
|
| @@ -1,190 +0,0 @@
|
| -// Copyright (c) 2012 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 "ppapi/proxy/ppb_file_system_proxy.h"
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/message_loop.h"
|
| -#include "ppapi/c/pp_errors.h"
|
| -#include "ppapi/c/ppb_file_system.h"
|
| -#include "ppapi/proxy/enter_proxy.h"
|
| -#include "ppapi/proxy/host_dispatcher.h"
|
| -#include "ppapi/proxy/plugin_dispatcher.h"
|
| -#include "ppapi/proxy/ppapi_messages.h"
|
| -#include "ppapi/proxy/serialized_var.h"
|
| -#include "ppapi/shared_impl/tracked_callback.h"
|
| -#include "ppapi/thunk/enter.h"
|
| -#include "ppapi/thunk/ppb_file_system_api.h"
|
| -#include "ppapi/thunk/resource_creation_api.h"
|
| -#include "ppapi/thunk/thunk.h"
|
| -
|
| -using ppapi::thunk::PPB_FileSystem_API;
|
| -using ppapi::thunk::ResourceCreationAPI;
|
| -
|
| -namespace ppapi {
|
| -namespace proxy {
|
| -
|
| -namespace {
|
| -
|
| -InterfaceProxy* CreateFileSystemProxy(Dispatcher* dispatcher) {
|
| - return new PPB_FileSystem_Proxy(dispatcher);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -// This object maintains most of the state of the ref in the plugin for fast
|
| -// querying. It's all set in the constructor from the "create info" sent from
|
| -// the host.
|
| -class FileSystem : public Resource, public PPB_FileSystem_API {
|
| - public:
|
| - FileSystem(const HostResource& host_resource, PP_FileSystemType type);
|
| - virtual ~FileSystem();
|
| -
|
| - // Resource override.
|
| - virtual PPB_FileSystem_API* AsPPB_FileSystem_API() OVERRIDE;
|
| -
|
| - // PPB_FileSystem_APi implementation.
|
| - virtual int32_t Open(int64_t expected_size,
|
| - scoped_refptr<TrackedCallback> callback) OVERRIDE;
|
| - virtual PP_FileSystemType GetType() OVERRIDE;
|
| -
|
| - // Called when the host has responded to our open request.
|
| - void OpenComplete(int32_t result);
|
| -
|
| - private:
|
| - PP_FileSystemType type_;
|
| - bool called_open_;
|
| - scoped_refptr<TrackedCallback> current_open_callback_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(FileSystem);
|
| -};
|
| -
|
| -FileSystem::FileSystem(const HostResource& host_resource,
|
| - PP_FileSystemType type)
|
| - : Resource(OBJECT_IS_PROXY, host_resource),
|
| - type_(type),
|
| - called_open_(false) {
|
| -}
|
| -
|
| -FileSystem::~FileSystem() {
|
| -}
|
| -
|
| -PPB_FileSystem_API* FileSystem::AsPPB_FileSystem_API() {
|
| - return this;
|
| -}
|
| -
|
| -int32_t FileSystem::Open(int64_t expected_size,
|
| - scoped_refptr<TrackedCallback> callback) {
|
| - if (TrackedCallback::IsPending(current_open_callback_))
|
| - return PP_ERROR_INPROGRESS;
|
| - if (called_open_)
|
| - return PP_ERROR_FAILED;
|
| -
|
| - current_open_callback_ = callback;
|
| - called_open_ = true;
|
| - PluginDispatcher::GetForResource(this)->Send(
|
| - new PpapiHostMsg_PPBFileSystem_Open(
|
| - API_ID_PPB_FILE_SYSTEM, host_resource(), expected_size));
|
| - return PP_OK_COMPLETIONPENDING;
|
| -}
|
| -
|
| -PP_FileSystemType FileSystem::GetType() {
|
| - return type_;
|
| -}
|
| -
|
| -void FileSystem::OpenComplete(int32_t result) {
|
| - current_open_callback_->Run(result);
|
| -}
|
| -
|
| -PPB_FileSystem_Proxy::PPB_FileSystem_Proxy(Dispatcher* dispatcher)
|
| - : InterfaceProxy(dispatcher),
|
| - callback_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
|
| -}
|
| -
|
| -PPB_FileSystem_Proxy::~PPB_FileSystem_Proxy() {
|
| -}
|
| -
|
| -const InterfaceProxy::Info* PPB_FileSystem_Proxy::GetInfo() {
|
| - static const Info info = {
|
| - thunk::GetPPB_FileSystem_1_0_Thunk(),
|
| - PPB_FILESYSTEM_INTERFACE_1_0,
|
| - API_ID_PPB_FILE_SYSTEM,
|
| - false,
|
| - &CreateFileSystemProxy,
|
| - };
|
| - return &info;
|
| -}
|
| -
|
| -// static
|
| -PP_Resource PPB_FileSystem_Proxy::CreateProxyResource(
|
| - PP_Instance instance,
|
| - PP_FileSystemType type) {
|
| - PluginDispatcher* dispatcher = PluginDispatcher::GetForInstance(instance);
|
| - if (!dispatcher)
|
| - return PP_ERROR_BADARGUMENT;
|
| -
|
| - HostResource result;
|
| - dispatcher->Send(new PpapiHostMsg_PPBFileSystem_Create(
|
| - API_ID_PPB_FILE_SYSTEM, instance, type, &result));
|
| - if (result.is_null())
|
| - return 0;
|
| - return (new FileSystem(result, type))->GetReference();
|
| -}
|
| -
|
| -bool PPB_FileSystem_Proxy::OnMessageReceived(const IPC::Message& msg) {
|
| - bool handled = true;
|
| - IPC_BEGIN_MESSAGE_MAP(PPB_FileSystem_Proxy, msg)
|
| -#if !defined(OS_NACL)
|
| - IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBFileSystem_Create, OnMsgCreate)
|
| - IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBFileSystem_Open, OnMsgOpen)
|
| -#endif
|
| - IPC_MESSAGE_HANDLER(PpapiMsg_PPBFileSystem_OpenComplete, OnMsgOpenComplete)
|
| - IPC_MESSAGE_UNHANDLED(handled = false)
|
| - IPC_END_MESSAGE_MAP()
|
| - return handled;
|
| -}
|
| -
|
| -#if !defined(OS_NACL)
|
| -void PPB_FileSystem_Proxy::OnMsgCreate(PP_Instance instance,
|
| - int type,
|
| - HostResource* result) {
|
| - thunk::EnterResourceCreation enter(instance);
|
| - if (enter.failed())
|
| - return;
|
| - PP_Resource resource = enter.functions()->CreateFileSystem(
|
| - instance, static_cast<PP_FileSystemType>(type));
|
| - if (!resource)
|
| - return; // CreateInfo default constructor initializes to 0.
|
| - result->SetHostResource(instance, resource);
|
| -}
|
| -
|
| -void PPB_FileSystem_Proxy::OnMsgOpen(const HostResource& host_resource,
|
| - int64_t expected_size) {
|
| - EnterHostFromHostResourceForceCallback<PPB_FileSystem_API> enter(
|
| - host_resource, callback_factory_,
|
| - &PPB_FileSystem_Proxy::OpenCompleteInHost, host_resource);
|
| - if (enter.succeeded())
|
| - enter.SetResult(enter.object()->Open(expected_size, enter.callback()));
|
| -}
|
| -#endif // !defined(OS_NACL)
|
| -
|
| -// Called in the plugin to handle the open callback.
|
| -void PPB_FileSystem_Proxy::OnMsgOpenComplete(const HostResource& host_resource,
|
| - int32_t result) {
|
| - EnterPluginFromHostResource<PPB_FileSystem_API> enter(host_resource);
|
| - if (enter.succeeded())
|
| - static_cast<FileSystem*>(enter.object())->OpenComplete(result);
|
| -}
|
| -
|
| -#if !defined(OS_NACL)
|
| -void PPB_FileSystem_Proxy::OpenCompleteInHost(
|
| - int32_t result,
|
| - const HostResource& host_resource) {
|
| - dispatcher()->Send(new PpapiMsg_PPBFileSystem_OpenComplete(
|
| - API_ID_PPB_FILE_SYSTEM, host_resource, result));
|
| -}
|
| -#endif // !defined(OS_NACL)
|
| -
|
| -} // namespace proxy
|
| -} // namespace ppapi
|
|
|