Upstream version 9.37.197.0
[platform/framework/web/crosswalk.git] / src / content / browser / worker_host / worker_storage_partition.cc
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 #include "content/browser/worker_host/worker_storage_partition.h"
6
7 #include <string>
8
9 #include "content/browser/appcache/chrome_appcache_service.h"
10 #include "content/browser/indexed_db/indexed_db_context_impl.h"
11 #include "content/browser/service_worker/service_worker_context_wrapper.h"
12 #include "net/url_request/url_request_context_getter.h"
13 #include "webkit/browser/database/database_tracker.h"
14 #include "webkit/browser/fileapi/file_system_context.h"
15 #include "webkit/browser/quota/quota_manager.h"
16
17 namespace content {
18
19 WorkerStoragePartition::WorkerStoragePartition(
20     net::URLRequestContextGetter* url_request_context,
21     net::URLRequestContextGetter* media_url_request_context,
22     ChromeAppCacheService* appcache_service,
23     quota::QuotaManager* quota_manager,
24     fileapi::FileSystemContext* filesystem_context,
25     webkit_database::DatabaseTracker* database_tracker,
26     IndexedDBContextImpl* indexed_db_context,
27     ServiceWorkerContextWrapper* service_worker_context)
28     : url_request_context_(url_request_context),
29       media_url_request_context_(media_url_request_context),
30       appcache_service_(appcache_service),
31       quota_manager_(quota_manager),
32       filesystem_context_(filesystem_context),
33       database_tracker_(database_tracker),
34       indexed_db_context_(indexed_db_context),
35       service_worker_context_(service_worker_context) {
36 }
37
38 WorkerStoragePartition::WorkerStoragePartition(
39     const WorkerStoragePartition& other) {
40   Copy(other);
41 }
42
43 const WorkerStoragePartition& WorkerStoragePartition::operator=(
44     const WorkerStoragePartition& rhs) {
45   Copy(rhs);
46   return *this;
47 }
48
49 bool WorkerStoragePartition::Equals(
50     const WorkerStoragePartition& other) const {
51   return url_request_context_.get() == other.url_request_context_.get() &&
52          media_url_request_context_.get() ==
53              other.media_url_request_context_.get() &&
54          appcache_service_.get() == other.appcache_service_.get() &&
55          quota_manager_.get() == other.quota_manager_.get() &&
56          filesystem_context_.get() == other.filesystem_context_.get() &&
57          database_tracker_.get() == other.database_tracker_.get() &&
58          indexed_db_context_.get() == other.indexed_db_context_.get() &&
59          service_worker_context_.get() == other.service_worker_context_.get();
60 }
61
62 WorkerStoragePartition::~WorkerStoragePartition() {
63 }
64
65 void WorkerStoragePartition::Copy(const WorkerStoragePartition& other) {
66   url_request_context_ = other.url_request_context_;
67   media_url_request_context_ = other.media_url_request_context_;
68   appcache_service_ = other.appcache_service_;
69   quota_manager_ = other.quota_manager_;
70   filesystem_context_ = other.filesystem_context_;
71   database_tracker_ = other.database_tracker_;
72   indexed_db_context_ = other.indexed_db_context_;
73   service_worker_context_ = other.service_worker_context_;
74 }
75
76 WorkerStoragePartitionId::WorkerStoragePartitionId(
77     const WorkerStoragePartition& partition)
78     : url_request_context_(partition.url_request_context()),
79       media_url_request_context_(partition.media_url_request_context()),
80       appcache_service_(partition.appcache_service()),
81       quota_manager_(partition.quota_manager()),
82       filesystem_context_(partition.filesystem_context()),
83       database_tracker_(partition.database_tracker()),
84       indexed_db_context_(partition.indexed_db_context()),
85       service_worker_context_(partition.service_worker_context()) {
86 }
87
88 WorkerStoragePartitionId::~WorkerStoragePartitionId() {
89 }
90
91 bool WorkerStoragePartitionId::Equals(
92     const WorkerStoragePartitionId& other) const {
93   return url_request_context_ == other.url_request_context_ &&
94          media_url_request_context_ == other.media_url_request_context_ &&
95          appcache_service_ == other.appcache_service_ &&
96          quota_manager_ == other.quota_manager_ &&
97          filesystem_context_ == other.filesystem_context_ &&
98          database_tracker_ == other.database_tracker_ &&
99          indexed_db_context_ == other.indexed_db_context_ &&
100          service_worker_context_ == other.service_worker_context_;
101 }
102
103 }  // namespace content