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 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_FLASH_LSO_HELPER_H_ 6 #define CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_FLASH_LSO_HELPER_H_ 7 8 #include <string> 9 #include <vector> 10 11 #include "base/callback_forward.h" 12 #include "base/memory/ref_counted.h" 13 14 namespace content { 15 class BrowserContext; 16 } 17 18 // This class asynchronously fetches information about Flash LSOs and can delete 19 // them. 20 class BrowsingDataFlashLSOHelper 21 : public base::RefCounted<BrowsingDataFlashLSOHelper> { 22 public: 23 typedef base::Callback<void(const std::vector<std::string>&)> 24 GetSitesWithFlashDataCallback; 25 26 static BrowsingDataFlashLSOHelper* Create( 27 content::BrowserContext* browser_context); 28 29 virtual void StartFetching(const GetSitesWithFlashDataCallback& callback) = 0; 30 virtual void DeleteFlashLSOsForSite(const std::string& site) = 0; 31 32 protected: 33 friend class base::RefCounted<BrowsingDataFlashLSOHelper>; 34 virtual ~BrowsingDataFlashLSOHelper() {} 35 }; 36 37 #endif // CHROME_BROWSER_BROWSING_DATA_BROWSING_DATA_FLASH_LSO_HELPER_H_ 38