| Index: ppapi/proxy/directory_reader_resource.cc
|
| diff --git a/ppapi/proxy/directory_reader_resource.cc b/ppapi/proxy/directory_reader_resource.cc
|
| deleted file mode 100644
|
| index 17826d0306cf6d8980a93d2d684fc4b6b35a0e82..0000000000000000000000000000000000000000
|
| --- a/ppapi/proxy/directory_reader_resource.cc
|
| +++ /dev/null
|
| @@ -1,108 +0,0 @@
|
| -// Copyright (c) 2013 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/directory_reader_resource.h"
|
| -
|
| -#include "base/bind.h"
|
| -#include "ipc/ipc_message.h"
|
| -#include "ppapi/c/pp_errors.h"
|
| -#include "ppapi/proxy/dispatch_reply_message.h"
|
| -#include "ppapi/proxy/ppapi_messages.h"
|
| -#include "ppapi/proxy/ppb_file_ref_proxy.h"
|
| -#include "ppapi/shared_impl/ppapi_globals.h"
|
| -#include "ppapi/shared_impl/resource_tracker.h"
|
| -#include "ppapi/shared_impl/tracked_callback.h"
|
| -#include "ppapi/thunk/enter.h"
|
| -#include "ppapi/thunk/ppb_file_ref_api.h"
|
| -
|
| -using ppapi::proxy::PPB_FileRef_Proxy;
|
| -
|
| -namespace ppapi {
|
| -namespace proxy {
|
| -
|
| -namespace {
|
| -
|
| -void ReleaseEntries(const std::vector<PP_DirectoryEntry_Dev>& entries) {
|
| - ResourceTracker* tracker = PpapiGlobals::Get()->GetResourceTracker();
|
| - for (std::vector<PP_DirectoryEntry_Dev>::const_iterator it = entries.begin();
|
| - it != entries.end(); ++it)
|
| - tracker->ReleaseResource(it->file_ref);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -DirectoryReaderResource::DirectoryReaderResource(
|
| - Connection connection,
|
| - PP_Instance instance,
|
| - PP_Resource directory_ref)
|
| - : PluginResource(connection, instance) {
|
| - directory_resource_ =
|
| - PpapiGlobals::Get()->GetResourceTracker()->GetResource(directory_ref);
|
| -}
|
| -
|
| -DirectoryReaderResource::~DirectoryReaderResource() {
|
| -}
|
| -
|
| -thunk::PPB_DirectoryReader_API*
|
| -DirectoryReaderResource::AsPPB_DirectoryReader_API() {
|
| - return this;
|
| -}
|
| -
|
| -int32_t DirectoryReaderResource::ReadEntries(
|
| - const PP_ArrayOutput& output,
|
| - scoped_refptr<TrackedCallback> callback) {
|
| - if (TrackedCallback::IsPending(callback_))
|
| - return PP_ERROR_INPROGRESS;
|
| -
|
| - callback_ = callback;
|
| -
|
| - if (!sent_create_to_renderer())
|
| - SendCreate(RENDERER, PpapiHostMsg_DirectoryReader_Create());
|
| -
|
| - PpapiHostMsg_DirectoryReader_GetEntries msg(
|
| - directory_resource_->host_resource());
|
| - Call<PpapiPluginMsg_DirectoryReader_GetEntriesReply>(
|
| - RENDERER, msg,
|
| - base::Bind(&DirectoryReaderResource::OnPluginMsgGetEntriesReply,
|
| - this, output));
|
| - return PP_OK_COMPLETIONPENDING;
|
| -}
|
| -
|
| -void DirectoryReaderResource::OnPluginMsgGetEntriesReply(
|
| - const PP_ArrayOutput& output,
|
| - const ResourceMessageReplyParams& params,
|
| - const std::vector<ppapi::PPB_FileRef_CreateInfo>& infos,
|
| - const std::vector<PP_FileType>& file_types) {
|
| - CHECK_EQ(infos.size(), file_types.size());
|
| -
|
| - std::vector<PP_DirectoryEntry_Dev> entries;
|
| - for (std::vector<ppapi::PPB_FileRef_CreateInfo>::size_type i = 0;
|
| - i < infos.size(); ++i) {
|
| - PP_DirectoryEntry_Dev entry;
|
| - entry.file_ref = PPB_FileRef_Proxy::DeserializeFileRef(infos[i]);
|
| - entry.file_type = file_types[i];
|
| - entries.push_back(entry);
|
| - }
|
| -
|
| - if (!TrackedCallback::IsPending(callback_)) {
|
| - ReleaseEntries(entries);
|
| - entries.clear();
|
| - return;
|
| - }
|
| -
|
| - ArrayWriter writer(output);
|
| - if (!writer.is_valid()) {
|
| - ReleaseEntries(entries);
|
| - entries.clear();
|
| - callback_->Run(PP_ERROR_FAILED);
|
| - return;
|
| - }
|
| -
|
| - writer.StoreVector(entries);
|
| - entries.clear();
|
| - callback_->Run(params.result());
|
| -}
|
| -
|
| -} // namespace proxy
|
| -} // namespace ppapi
|
|
|