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

Unified Diff: google_apis/gcm/engine/gcm_store_impl.cc

Issue 226893002: Revert of [GCM] Adding periodic checkin controlled by G-services settings (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 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 | « google_apis/gcm/engine/gcm_store_impl.h ('k') | google_apis/gcm/engine/gcm_store_impl_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: google_apis/gcm/engine/gcm_store_impl.cc
diff --git a/google_apis/gcm/engine/gcm_store_impl.cc b/google_apis/gcm/engine/gcm_store_impl.cc
index 2738c43dfe1dd161848d5b4f1670f4c2198839ad..3a74127c4b9607a52bc76da8848e2c372096ea24 100644
--- a/google_apis/gcm/engine/gcm_store_impl.cc
+++ b/google_apis/gcm/engine/gcm_store_impl.cc
@@ -16,14 +16,12 @@
#include "base/stl_util.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_piece.h"
-#include "base/time/time.h"
#include "base/tracked_objects.h"
#include "components/os_crypt/os_crypt.h"
#include "google_apis/gcm/base/mcs_message.h"
#include "google_apis/gcm/base/mcs_util.h"
#include "google_apis/gcm/protocol/mcs.pb.h"
#include "third_party/leveldatabase/src/include/leveldb/db.h"
-#include "third_party/leveldatabase/src/include/leveldb/write_batch.h"
namespace gcm {
@@ -55,14 +53,6 @@
// Key guaranteed to be higher than all outgoing message keys.
// Used for limiting iteration.
const char kOutgoingMsgKeyEnd[] = "outgoing2-";
-// Lowest lexicographically ordered G-service settings key.
-// Used for prefixing G-services settings.
-const char kGServiceSettingKeyStart[] = "gservice1-";
-// Key guaranteed to be higher than all G-services settings keys.
-// Used for limiting iteration.
-const char kGServiceSettingKeyEnd[] = "gservice2-";
-// Key for digest of the last G-services settings update.
-const char kGServiceSettingsDigestKey[] = "gservices_digest";
// Key used to timestamp last checkin (marked with G services settings update).
const char kLastCheckinTimeKey[] = "last_checkin_time";
@@ -84,14 +74,6 @@
std::string ParseOutgoingKey(const std::string& key) {
return key.substr(arraysize(kOutgoingMsgKeyStart) - 1);
-}
-
-std::string MakeGServiceSettingKey(const std::string& setting_name) {
- return kGServiceSettingKeyStart + setting_name;
-}
-
-std::string ParseGServiceSettingKey(const std::string& key) {
- return key.substr(arraysize(kGServiceSettingKeyStart) - 1);
}
// Note: leveldb::Slice keeps a pointer to the data in |s|, which must therefore
@@ -139,10 +121,6 @@
const UpdateCallback& callback);
void SetLastCheckinTime(const base::Time& last_checkin_time,
const UpdateCallback& callback);
- void SetGServicesSettings(
- const std::map<std::string, std::string>& settings,
- const std::string& digest,
- const UpdateCallback& callback);
private:
friend class base::RefCountedThreadSafe<Backend>;
@@ -153,8 +131,6 @@
bool LoadIncomingMessages(std::vector<std::string>* incoming_messages);
bool LoadOutgoingMessages(OutgoingMessageMap* outgoing_messages);
bool LoadLastCheckinTime(base::Time* last_checkin_time);
- bool LoadGServicesSettings(std::map<std::string, std::string>* settings,
- std::string* digest);
const base::FilePath path_;
scoped_refptr<base::SequencedTaskRunner> foreground_task_runner_;
@@ -200,16 +176,12 @@
!LoadRegistrations(&result->registrations) ||
!LoadIncomingMessages(&result->incoming_messages) ||
!LoadOutgoingMessages(&result->outgoing_messages) ||
- !LoadLastCheckinTime(&result->last_checkin_time) ||
- !LoadGServicesSettings(&result->gservices_settings,
- &result->gservices_digest)) {
+ !LoadLastCheckinTime(&result->last_checkin_time)) {
result->device_android_id = 0;
result->device_security_token = 0;
result->registrations.clear();
result->incoming_messages.clear();
result->outgoing_messages.clear();
- result->gservices_settings.clear();
- result->gservices_digest.clear();
result->last_checkin_time = base::Time::FromInternalValue(0LL);
foreground_task_runner_->PostTask(FROM_HERE,
base::Bind(callback,
@@ -493,44 +465,7 @@
if (!s.ok())
LOG(ERROR) << "LevelDB set last checkin time failed: " << s.ToString();
- foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, s.ok()));
-}
-
-void GCMStoreImpl::Backend::SetGServicesSettings(
- const std::map<std::string, std::string>& settings,
- const std::string& settings_digest,
- const UpdateCallback& callback) {
- leveldb::WriteBatch write_batch;
-
- // Remove all existing settings.
- leveldb::ReadOptions read_options;
- read_options.verify_checksums = true;
- scoped_ptr<leveldb::Iterator> iter(db_->NewIterator(read_options));
- for (iter->Seek(MakeSlice(kGServiceSettingKeyStart));
- iter->Valid() && iter->key().ToString() < kGServiceSettingKeyEnd;
- iter->Next()) {
- write_batch.Delete(iter->key());
- }
-
- // Add the new settings.
- for (std::map<std::string, std::string>::const_iterator iter =
- settings.begin();
- iter != settings.end(); ++iter) {
- write_batch.Put(MakeSlice(MakeGServiceSettingKey(iter->first)),
- MakeSlice(iter->second));
- }
-
- // Update the settings digest.
- write_batch.Put(MakeSlice(kGServiceSettingsDigestKey),
- MakeSlice(settings_digest));
-
- // Write it all in a batch.
- leveldb::WriteOptions write_options;
- write_options.sync = true;
-
- leveldb::Status s = db_->Write(write_options, &write_batch);
- if (!s.ok())
- LOG(ERROR) << "LevelDB GService Settings update failed: " << s.ToString();
+
foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, s.ok()));
}
@@ -669,34 +604,6 @@
return true;
}
-bool GCMStoreImpl::Backend::LoadGServicesSettings(
- std::map<std::string, std::string>* settings,
- std::string* digest) {
- leveldb::ReadOptions read_options;
- read_options.verify_checksums = true;
-
- // Load all of the GServices settings.
- scoped_ptr<leveldb::Iterator> iter(db_->NewIterator(read_options));
- for (iter->Seek(MakeSlice(kGServiceSettingKeyStart));
- iter->Valid() && iter->key().ToString() < kGServiceSettingKeyEnd;
- iter->Next()) {
- std::string value = iter->value().ToString();
- if (value.empty()) {
- LOG(ERROR) << "Error reading GService Settings " << value;
- return false;
- }
- std::string id = ParseGServiceSettingKey(iter->key().ToString());
- (*settings)[id] = value;
- DVLOG(1) << "Found G Service setting with key: " << id
- << ", and value: " << value;
- }
-
- // Load the settings digest. It's ok if it is empty.
- db_->Get(read_options, MakeSlice(kGServiceSettingsDigestKey), digest);
-
- return true;
-}
-
GCMStoreImpl::GCMStoreImpl(
bool use_mock_keychain,
const base::FilePath& path,
@@ -878,19 +785,6 @@
base::Bind(&GCMStoreImpl::Backend::SetLastCheckinTime,
backend_,
last_checkin_time,
- callback));
-}
-
-void GCMStoreImpl::SetGServicesSettings(
- const std::map<std::string, std::string>& settings,
- const std::string& digest,
- const UpdateCallback& callback) {
- blocking_task_runner_->PostTask(
- FROM_HERE,
- base::Bind(&GCMStoreImpl::Backend::SetGServicesSettings,
- backend_,
- settings,
- digest,
callback));
}
« no previous file with comments | « google_apis/gcm/engine/gcm_store_impl.h ('k') | google_apis/gcm/engine/gcm_store_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698