Index: chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc |
diff --git a/chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc b/chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc |
index d37f23c9b5b968c918040eb9ee7409ea0f22fe76..d080d52872d06647047009e5302da8e7410a1cdb 100644 |
--- a/chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc |
+++ b/chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc |
@@ -6,6 +6,7 @@ |
#include <string> |
+#include "base/memory/scoped_ptr.h" |
#include "base/values.h" |
#include "chrome/browser/chromeos/file_system_provider/provided_file_system_interface.h" |
#include "chrome/browser/chromeos/file_system_provider/request_manager.h" |
@@ -125,4 +126,27 @@ FileSystemProviderInternalGetMetadataRequestedErrorFunction::RunWhenValid() { |
return true; |
} |
+bool FileSystemProviderInternalReadDirectoryRequestedSuccessFunction:: |
+ RunWhenValid() { |
+ using api::file_system_provider_internal::ReadDirectoryRequestedSuccess:: |
+ Params; |
+ scoped_ptr<Params> params(Params::Create(*args_)); |
+ EXTENSION_FUNCTION_VALIDATE(params); |
+ |
+ const bool has_next = params->has_next; |
+ FulfillRequest(RequestValue::CreateForReadDirectorySuccess(params.Pass()), |
+ has_next); |
+ return true; |
+} |
+ |
+bool |
+FileSystemProviderInternalReadDirectoryRequestedErrorFunction::RunWhenValid() { |
+ using api::file_system_provider_internal::ReadDirectoryRequestedError::Params; |
+ const scoped_ptr<Params> params(Params::Create(*args_)); |
+ EXTENSION_FUNCTION_VALIDATE(params); |
+ |
+ RejectRequest(ProviderErrorToFileError(params->error)); |
+ return true; |
+} |
+ |
} // namespace extensions |