Refactor GeofencingManager to have one instance per StoragePartition.
Add a new GeofencingService class for the few global tasks GeofencingManager
used to do.
BUG=383125
Review URL: https://codereview.chromium.org/645763003
Cr-Commit-Position: refs/heads/master@{#300960}
diff --git a/content/browser/storage_partition_impl.h b/content/browser/storage_partition_impl.h
index f0c12d4..3037739 100644
--- a/content/browser/storage_partition_impl.h
+++ b/content/browser/storage_partition_impl.h
@@ -43,6 +43,7 @@
DOMStorageContextWrapper* GetDOMStorageContext() override;
IndexedDBContextImpl* GetIndexedDBContext() override;
ServiceWorkerContextWrapper* GetServiceWorkerContext() override;
+ GeofencingManager* GetGeofencingManager() override;
void ClearDataForOrigin(uint32 remove_mask,
uint32 quota_storage_remove_mask,
@@ -116,7 +117,8 @@
IndexedDBContextImpl* indexed_db_context,
ServiceWorkerContextWrapper* service_worker_context,
WebRTCIdentityStore* webrtc_identity_store,
- storage::SpecialStoragePolicy* special_storage_policy);
+ storage::SpecialStoragePolicy* special_storage_policy,
+ GeofencingManager* geofencing_manager);
void ClearDataImpl(uint32 remove_mask,
uint32 quota_storage_remove_mask,
@@ -156,6 +158,7 @@
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context_;
scoped_refptr<WebRTCIdentityStore> webrtc_identity_store_;
scoped_refptr<storage::SpecialStoragePolicy> special_storage_policy_;
+ scoped_refptr<GeofencingManager> geofencing_manager_;
DISALLOW_COPY_AND_ASSIGN(StoragePartitionImpl);
};