Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(233)

Side by Side Diff: extensions/renderer/file_system_natives.cc

Issue 306063005: Use createV8Entry() and toV8Value() with context and isolate defined in WebDOMFileSystem. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/renderer/pepper/resource_converter.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "extensions/renderer/file_system_natives.h" 5 #include "extensions/renderer/file_system_natives.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "extensions/common/constants.h" 9 #include "extensions/common/constants.h"
10 #include "extensions/renderer/script_context.h" 10 #include "extensions/renderer/script_context.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 optional_root_name = *v8::String::Utf8Value(args[1]); 57 optional_root_name = *v8::String::Utf8Value(args[1]);
58 } 58 }
59 59
60 GURL root_url(fileapi::GetIsolatedFileSystemRootURIString( 60 GURL root_url(fileapi::GetIsolatedFileSystemRootURIString(
61 context_url.GetOrigin(), file_system_id, optional_root_name)); 61 context_url.GetOrigin(), file_system_id, optional_root_name));
62 62
63 args.GetReturnValue().Set( 63 args.GetReturnValue().Set(
64 blink::WebDOMFileSystem::create(webframe, 64 blink::WebDOMFileSystem::create(webframe,
65 blink::WebFileSystemTypeIsolated, 65 blink::WebFileSystemTypeIsolated,
66 blink::WebString::fromUTF8(name), 66 blink::WebString::fromUTF8(name),
67 root_url).toV8Value()); 67 root_url)
68 .toV8Value(args.Holder(), args.GetIsolate()));
68 } 69 }
69 70
70 void FileSystemNatives::GetFileEntry( 71 void FileSystemNatives::GetFileEntry(
71 const v8::FunctionCallbackInfo<v8::Value>& args) { 72 const v8::FunctionCallbackInfo<v8::Value>& args) {
72 DCHECK(args.Length() == 5); 73 DCHECK(args.Length() == 5);
73 DCHECK(args[0]->IsString()); 74 DCHECK(args[0]->IsString());
74 std::string type_string = *v8::String::Utf8Value(args[0]->ToString()); 75 std::string type_string = *v8::String::Utf8Value(args[0]->ToString());
75 blink::WebFileSystemType type; 76 blink::WebFileSystemType type;
76 bool is_valid_type = fileapi::GetFileSystemPublicType(type_string, &type); 77 bool is_valid_type = fileapi::GetFileSystemPublicType(type_string, &type);
77 DCHECK(is_valid_type); 78 DCHECK(is_valid_type);
(...skipping 18 matching lines...) Expand all
96 blink::WebLocalFrame* webframe = 97 blink::WebLocalFrame* webframe =
97 blink::WebLocalFrame::frameForContext(context()->v8_context()); 98 blink::WebLocalFrame::frameForContext(context()->v8_context());
98 DCHECK(webframe); 99 DCHECK(webframe);
99 args.GetReturnValue().Set( 100 args.GetReturnValue().Set(
100 blink::WebDOMFileSystem::create( 101 blink::WebDOMFileSystem::create(
101 webframe, 102 webframe,
102 type, 103 type,
103 blink::WebString::fromUTF8(file_system_name), 104 blink::WebString::fromUTF8(file_system_name),
104 file_system_root_url) 105 file_system_root_url)
105 .createV8Entry(blink::WebString::fromUTF8(file_path_string), 106 .createV8Entry(blink::WebString::fromUTF8(file_path_string),
106 entry_type)); 107 entry_type,
108 args.Holder(),
109 args.GetIsolate()));
107 } 110 }
108 111
109 void FileSystemNatives::CrackIsolatedFileSystemName( 112 void FileSystemNatives::CrackIsolatedFileSystemName(
110 const v8::FunctionCallbackInfo<v8::Value>& args) { 113 const v8::FunctionCallbackInfo<v8::Value>& args) {
111 DCHECK_EQ(args.Length(), 1); 114 DCHECK_EQ(args.Length(), 1);
112 DCHECK(args[0]->IsString()); 115 DCHECK(args[0]->IsString());
113 std::string filesystem_name = *v8::String::Utf8Value(args[0]->ToString()); 116 std::string filesystem_name = *v8::String::Utf8Value(args[0]->ToString());
114 std::string filesystem_id; 117 std::string filesystem_id;
115 if (!fileapi::CrackIsolatedFileSystemName(filesystem_name, &filesystem_id)) 118 if (!fileapi::CrackIsolatedFileSystemName(filesystem_name, &filesystem_id))
116 return; 119 return;
(...skipping 26 matching lines...) Expand all
143 } 146 }
144 std::string message(*v8::String::Utf8Value(args[1])); 147 std::string message(*v8::String::Utf8Value(args[1]));
145 // message is optional hence empty is fine. 148 // message is optional hence empty is fine.
146 149
147 blink::WebDOMError dom_error = blink::WebDOMError::create( 150 blink::WebDOMError dom_error = blink::WebDOMError::create(
148 blink::WebString::fromUTF8(name), blink::WebString::fromUTF8(message)); 151 blink::WebString::fromUTF8(name), blink::WebString::fromUTF8(message));
149 args.GetReturnValue().Set(dom_error.toV8Value()); 152 args.GetReturnValue().Set(dom_error.toV8Value());
150 } 153 }
151 154
152 } // namespace extensions 155 } // namespace extensions
OLDNEW
« no previous file with comments | « content/renderer/pepper/resource_converter.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698