OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "content/browser/plugin_private_storage_helper.h" | 5 #include "content/browser/plugin_private_storage_helper.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 25 matching lines...) Expand all Loading... |
36 | 36 |
37 std::string StringTypeToString(const base::FilePath::StringType& value) { | 37 std::string StringTypeToString(const base::FilePath::StringType& value) { |
38 #if defined(OS_POSIX) | 38 #if defined(OS_POSIX) |
39 return value; | 39 return value; |
40 #elif defined(OS_WIN) | 40 #elif defined(OS_WIN) |
41 return base::WideToUTF8(value); | 41 return base::WideToUTF8(value); |
42 #endif | 42 #endif |
43 } | 43 } |
44 | 44 |
45 // Helper for checking the plugin private data for a specified origin and | 45 // Helper for checking the plugin private data for a specified origin and |
46 // plugin for the existance of any file that matches the time range specified. | 46 // plugin for the existence of any file that matches the time range specified. |
47 // All of the operations in this class are done on the IO thread. | 47 // All of the operations in this class are done on the IO thread. |
48 // | 48 // |
49 // This class keeps track of outstanding async requests it generates, and does | 49 // This class keeps track of outstanding async requests it generates, and does |
50 // not call |callback_| until they all respond (and thus don't need to worry | 50 // not call |callback_| until they all respond (and thus don't need to worry |
51 // about lifetime of |this| in the async requests). If the data for the origin | 51 // about lifetime of |this| in the async requests). If the data for the origin |
52 // needs to be deleted, it needs to be done on the file task runner, so we | 52 // needs to be deleted, it needs to be done on the file task runner, so we |
53 // want to ensure that there are no pending requests that may prevent the | 53 // want to ensure that there are no pending requests that may prevent the |
54 // date from being deleted. | 54 // date from being deleted. |
55 class PluginPrivateDataByOriginChecker { | 55 class PluginPrivateDataByOriginChecker { |
56 public: | 56 public: |
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 origins.insert(storage_origin); | 418 origins.insert(storage_origin); |
419 } | 419 } |
420 | 420 |
421 PluginPrivateDataDeletionHelper* helper = new PluginPrivateDataDeletionHelper( | 421 PluginPrivateDataDeletionHelper* helper = new PluginPrivateDataDeletionHelper( |
422 std::move(filesystem_context), begin, end, callback); | 422 std::move(filesystem_context), begin, end, callback); |
423 helper->CheckOriginsOnFileTaskRunner(origins); | 423 helper->CheckOriginsOnFileTaskRunner(origins); |
424 // |helper| will delete itself when all origins have been checked. | 424 // |helper| will delete itself when all origins have been checked. |
425 } | 425 } |
426 | 426 |
427 } // namespace content | 427 } // namespace content |
OLD | NEW |