Convert InvalidationStateTracker to use invalidation::ObjectId instead of syncable::ModelType

BUG=124145,124149
TEST=unit tests

Review URL: https://chromiumcodereview.appspot.com/10545168

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143249 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/sync/notifier/chrome_system_resources.cc b/sync/notifier/chrome_system_resources.cc
index 62a44ac1..702078b 100644
--- a/sync/notifier/chrome_system_resources.cc
+++ b/sync/notifier/chrome_system_resources.cc
@@ -14,6 +14,7 @@
 #include "base/stl_util.h"
 #include "base/string_util.h"
 #include "base/stringprintf.h"
+#include "google/cacheinvalidation/deps/callback.h"
 #include "google/cacheinvalidation/include/types.h"
 #include "jingle/notifier/listener/push_client.h"
 #include "sync/notifier/invalidation_util.h"
@@ -123,8 +124,9 @@
 
 void ChromeScheduler::RunPostedTask(invalidation::Closure* task) {
   CHECK_EQ(created_on_loop_, MessageLoop::current());
-  RunAndDeleteClosure(task);
+  task->Run();
   posted_tasks_.erase(task);
+  delete task;
 }
 
 ChromeStorage::ChromeStorage(StateWriter* state_writer,