| 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 |