OLD | NEW |
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 Loading... |
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: |
126 return isolated_provider_.get(); | 127 return isolated_provider_.get(); |
127 default: | 128 default: |
128 if (provider_map_.find(type) != provider_map_.end()) | 129 if (provider_map_.find(type) != provider_map_.end()) |
129 return provider_map_.find(type)->second; | 130 return provider_map_.find(type)->second; |
130 // Fall through. | 131 // Fall through. |
131 case kFileSystemTypeUnknown: | 132 case kFileSystemTypeUnknown: |
132 case kFileSystemTypeDragged: | |
133 NOTREACHED(); | 133 NOTREACHED(); |
134 return NULL; | 134 return NULL; |
135 } | 135 } |
136 } | 136 } |
137 | 137 |
138 SandboxMountPointProvider* | 138 SandboxMountPointProvider* |
139 FileSystemContext::sandbox_provider() const { | 139 FileSystemContext::sandbox_provider() const { |
140 return sandbox_provider_.get(); | 140 return sandbox_provider_.get(); |
141 } | 141 } |
142 | 142 |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 if (!io_task_runner_->RunsTasksOnCurrentThread() && | 204 if (!io_task_runner_->RunsTasksOnCurrentThread() && |
205 io_task_runner_->DeleteSoon(FROM_HERE, this)) { | 205 io_task_runner_->DeleteSoon(FROM_HERE, this)) { |
206 return; | 206 return; |
207 } | 207 } |
208 STLDeleteContainerPairSecondPointers(provider_map_.begin(), | 208 STLDeleteContainerPairSecondPointers(provider_map_.begin(), |
209 provider_map_.end()); | 209 provider_map_.end()); |
210 delete this; | 210 delete this; |
211 } | 211 } |
212 | 212 |
213 } // namespace fileapi | 213 } // namespace fileapi |
OLD | NEW |