Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Unified Diff: content/browser/service_worker/service_worker_database.h

Issue 284123003: ServiceWorker: DB functions should return status code instead of boolean (3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | content/browser/service_worker/service_worker_database.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/service_worker/service_worker_database.h
diff --git a/content/browser/service_worker/service_worker_database.h b/content/browser/service_worker/service_worker_database.h
index 57654ca2ebe24d2f5ed1568231f8336483245e59..5f3f0339d42733f20c2fc98eb3f1c4421ae7c8f0 100644
--- a/content/browser/service_worker/service_worker_database.h
+++ b/content/browser/service_worker/service_worker_database.h
@@ -97,20 +97,44 @@ class CONTENT_EXPORT ServiceWorkerDatabase {
// (resource ids will be added/removed from the uncommitted/purgeable
// lists as needed)
- bool ReadRegistration(int64 registration_id,
- const GURL& origin,
- RegistrationData* registration,
- std::vector<ResourceRecord>* resources);
- bool WriteRegistration(const RegistrationData& registration,
- const std::vector<ResourceRecord>& resources);
-
- bool UpdateVersionToActive(int64 registration_id,
- const GURL& origin);
- bool UpdateLastCheckTime(int64 registration_id,
- const GURL& origin,
- const base::Time& time);
- bool DeleteRegistration(int64 registration_id,
- const GURL& origin);
+ // Reads a registration for |registration_id| and resource records associated
+ // with it from the database. Returns OK if they are successfully read.
+ // Otherwise, returns an error.
+ Status ReadRegistration(
+ int64 registration_id,
+ const GURL& origin,
+ RegistrationData* registration,
+ std::vector<ResourceRecord>* resources);
+
+ // Writes |registration| and |resources| into the database and does following
+ // things:
+ // - Deletes an old version of the registration if exists.
+ // - Bumps the next registration id and the next version id if needed.
+ // - Removes |resources| from the uncommitted list if exist.
+ // Returns OK they are successfully written. Otherwise, returns an error.
+ Status WriteRegistration(
+ const RegistrationData& registration,
+ const std::vector<ResourceRecord>& resources);
+
+ // Updates a registration for |registration_id| to an active state. Returns OK
+ // if it's successfully updated. Otherwise, returns an error.
+ Status UpdateVersionToActive(
+ int64 registration_id,
+ const GURL& origin);
+
+ // Updates last check time of a registration for |registration_id| by |time|.
+ // Returns OK if it's successfully updated. Otherwise, returns an error.
+ Status UpdateLastCheckTime(
+ int64 registration_id,
+ const GURL& origin,
+ const base::Time& time);
+
+ // Deletes a registration for |registration_id| and moves resource records
+ // associated with it into the purgeable list. Returns OK if it's successfully
+ // deleted or not found in the database. Otherwise, returns an error.
+ Status DeleteRegistration(
+ int64 registration_id,
+ const GURL& origin);
// As new resources are put into the diskcache, they go into an uncommitted
// list. When a registration is saved that refers to those ids, they're
@@ -119,33 +143,35 @@ class CONTENT_EXPORT ServiceWorkerDatabase {
// the purgeable list can be purged from the diskcache. At system startup, all
// uncommitted ids are moved to the purgeable list.
- // Reads uncommitted resource ids from the database. Returns true on success.
- // Otherwise clears |ids| and returns false.
- bool GetUncommittedResourceIds(std::set<int64>* ids);
+ // Reads uncommitted resource ids from the database. Returns OK on success.
+ // Otherwise clears |ids| and returns an error.
+ Status GetUncommittedResourceIds(std::set<int64>* ids);
- // Writes |ids| into the database as uncommitted resources. Returns true on
- // success. Otherwise writes nothing and returns false.
- bool WriteUncommittedResourceIds(const std::set<int64>& ids);
+ // Writes |ids| into the database as uncommitted resources. Returns OK on
+ // success. Otherwise writes nothing and returns an error.
+ Status WriteUncommittedResourceIds(const std::set<int64>& ids);
// Deletes uncommitted resource ids specified by |ids| from the database.
- // Returns true on success. Otherwise deletes nothing and returns false.
- bool ClearUncommittedResourceIds(const std::set<int64>& ids);
+ // Returns OK on success. Otherwise deletes nothing and returns an error.
+ Status ClearUncommittedResourceIds(const std::set<int64>& ids);
- // Reads purgeable resource ids from the database. Returns true on success.
- // Otherwise clears |ids| and returns false.
- bool GetPurgeableResourceIds(std::set<int64>* ids);
+ // Reads purgeable resource ids from the database. Returns OK on success.
+ // Otherwise clears |ids| and returns an error.
+ Status GetPurgeableResourceIds(std::set<int64>* ids);
- // Writes |ids| into the database as purgeable resources. Returns true on
- // success. Otherwise writes nothing and returns false.
- bool WritePurgeableResourceIds(const std::set<int64>& ids);
+ // Writes |ids| into the database as purgeable resources. Returns OK on
+ // success. Otherwise writes nothing and returns an error.
+ Status WritePurgeableResourceIds(const std::set<int64>& ids);
// Deletes purgeable resource ids specified by |ids| from the database.
- // Returns true on success. Otherwise deletes nothing and returns false.
- bool ClearPurgeableResourceIds(const std::set<int64>& ids);
+ // Returns OK on success. Otherwise deletes nothing and returns an error.
+ Status ClearPurgeableResourceIds(const std::set<int64>& ids);
- // Delete all data for |origin|, namely, unique origin, registrations and
- // resource records. Resources are moved to the purgeable list.
- bool DeleteAllDataForOrigin(const GURL& origin);
+ // Deletes all data for |origin|, namely, unique origin, registrations and
+ // resource records. Resources are moved to the purgeable list. Returns OK if
+ // they are successfully deleted or not found in the database. Otherwise,
+ // returns an error.
+ Status DeleteAllDataForOrigin(const GURL& origin);
bool is_disabled() const { return is_disabled_; }
bool was_corruption_detected() const { return was_corruption_detected_; }
@@ -169,40 +195,70 @@ class CONTENT_EXPORT ServiceWorkerDatabase {
const char* id_key,
int64* next_avail_id);
- bool ReadRegistrationData(int64 registration_id,
- const GURL& origin,
- RegistrationData* registration);
- bool ReadResourceRecords(int64 version_id,
- std::vector<ResourceRecord>* resources);
- bool DeleteResourceRecords(int64 version_id,
- leveldb::WriteBatch* batch);
- bool ReadResourceIds(const char* id_key_prefix,
- std::set<int64>* ids);
- bool WriteResourceIds(const char* id_key_prefix,
- const std::set<int64>& ids);
- bool DeleteResourceIds(const char* id_key_prefix,
- const std::set<int64>& ids);
+ // Reads registration data for |registration_id| from the database. Returns OK
+ // if successfully reads. Otherwise, returns an error.
+ Status ReadRegistrationData(
+ int64 registration_id,
+ const GURL& origin,
+ RegistrationData* registration);
+
+ // Reads resource records for |version_id| from the database. Returns OK if
+ // it's successfully read or not found in the database. Otherwise, returns an
+ // error.
+ Status ReadResourceRecords(
+ int64 version_id,
+ std::vector<ResourceRecord>* resources);
+
+ // Deletes resource records for |version_id| from the database. Returns OK if
+ // they are successfully deleted or not found in the database. Otherwise,
+ // returns an error.
+ Status DeleteResourceRecords(
+ int64 version_id,
+ leveldb::WriteBatch* batch);
+
+ // Reads resource ids for |id_key_prefix| from the database. Returns OK if
+ // it's successfully read or not found in the database. Otherwise, returns an
+ // error.
+ Status ReadResourceIds(
+ const char* id_key_prefix,
+ std::set<int64>* ids);
+
+ // Write resource ids for |id_key_prefix| into the database. Returns OK on
+ // success. Otherwise, returns writes nothing and returns an error.
+ Status WriteResourceIds(
+ const char* id_key_prefix,
+ const std::set<int64>& ids);
+
+ // Deletes resource ids for |id_key_prefix| from the database. Returns OK if
+ // it's successfully deleted or not found in the database. Otherwise, returns
+ // an error.
+ Status DeleteResourceIds(
+ const char* id_key_prefix,
+ const std::set<int64>& ids);
// Reads the current schema version from the database. If the database hasn't
// been written anything yet, sets |db_version| to 0 and returns OK.
Status ReadDatabaseVersion(int64* db_version);
- // Write a batch into the database.
+ // Writes a batch into the database.
// NOTE: You must call this when you want to put something into the database
// because this initializes the database if needed.
- bool WriteBatch(leveldb::WriteBatch* batch);
+ Status WriteBatch(leveldb::WriteBatch* batch);
// Bumps the next available id if |used_id| is greater than or equal to the
// cached one.
- void BumpNextRegistrationIdIfNeeded(int64 used_id,
- leveldb::WriteBatch* batch);
- void BumpNextVersionIdIfNeeded(int64 used_id,
- leveldb::WriteBatch* batch);
+ void BumpNextRegistrationIdIfNeeded(
+ int64 used_id,
+ leveldb::WriteBatch* batch);
+ void BumpNextVersionIdIfNeeded(
+ int64 used_id,
+ leveldb::WriteBatch* batch);
bool IsOpen();
- void HandleError(const tracked_objects::Location& from_here,
- const leveldb::Status& status);
+ void HandleError(
+ const tracked_objects::Location& from_here,
+ const leveldb::Status& status);
base::FilePath path_;
scoped_ptr<leveldb::Env> env_;
« no previous file with comments | « no previous file | content/browser/service_worker/service_worker_database.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698