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

Side by Side Diff: webkit/fileapi/file_system_context.cc

Issue 10810053: Enables internal filesystem types via Isolated filesystems (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 5 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "webkit/fileapi/file_system_context.h" 5 #include "webkit/fileapi/file_system_context.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/file_util.h" 8 #include "base/file_util.h"
9 #include "base/stl_util.h" 9 #include "base/stl_util.h"
10 #include "base/single_thread_task_runner.h" 10 #include "base/single_thread_task_runner.h"
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 return NULL; 104 return NULL;
105 return mount_point_provider->GetQuotaUtil(); 105 return mount_point_provider->GetQuotaUtil();
106 } 106 }
107 107
108 FileSystemFileUtil* FileSystemContext::GetFileUtil( 108 FileSystemFileUtil* FileSystemContext::GetFileUtil(
109 FileSystemType type) const { 109 FileSystemType type) const {
110 FileSystemMountPointProvider* mount_point_provider = 110 FileSystemMountPointProvider* mount_point_provider =
111 GetMountPointProvider(type); 111 GetMountPointProvider(type);
112 if (!mount_point_provider) 112 if (!mount_point_provider)
113 return NULL; 113 return NULL;
114 return mount_point_provider->GetFileUtil(); 114 return mount_point_provider->GetFileUtil(type);
115 } 115 }
116 116
117 FileSystemMountPointProvider* FileSystemContext::GetMountPointProvider( 117 FileSystemMountPointProvider* FileSystemContext::GetMountPointProvider(
118 FileSystemType type) const { 118 FileSystemType type) const {
119 switch (type) { 119 switch (type) {
120 case kFileSystemTypeTemporary: 120 case kFileSystemTypeTemporary:
121 case kFileSystemTypePersistent: 121 case kFileSystemTypePersistent:
122 return sandbox_provider_.get(); 122 return sandbox_provider_.get();
123 case kFileSystemTypeExternal: 123 case kFileSystemTypeExternal:
124 return external_provider_.get(); 124 return external_provider_.get();
125 case kFileSystemTypeIsolated: 125 case kFileSystemTypeIsolated:
126 case kFileSystemTypeDragged:
127 case kFileSystemTypeMedia:
126 return isolated_provider_.get(); 128 return isolated_provider_.get();
127 default: 129 default:
128 if (provider_map_.find(type) != provider_map_.end()) 130 if (provider_map_.find(type) != provider_map_.end())
129 return provider_map_.find(type)->second; 131 return provider_map_.find(type)->second;
130 // Fall through. 132 // Fall through.
131 case kFileSystemTypeUnknown: 133 case kFileSystemTypeUnknown:
132 NOTREACHED(); 134 NOTREACHED();
133 return NULL; 135 return NULL;
134 } 136 }
135 } 137 }
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
203 if (!io_task_runner_->RunsTasksOnCurrentThread() && 205 if (!io_task_runner_->RunsTasksOnCurrentThread() &&
204 io_task_runner_->DeleteSoon(FROM_HERE, this)) { 206 io_task_runner_->DeleteSoon(FROM_HERE, this)) {
205 return; 207 return;
206 } 208 }
207 STLDeleteContainerPairSecondPointers(provider_map_.begin(), 209 STLDeleteContainerPairSecondPointers(provider_map_.begin(),
208 provider_map_.end()); 210 provider_map_.end());
209 delete this; 211 delete this;
210 } 212 }
211 213
212 } // namespace fileapi 214 } // namespace fileapi
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698