)]}'
{
  "commit": "3fa42aebf88af42a17026b41a8eb7cc510ef7897",
  "tree": "69edeee2d172d0438e5f9b51031c5bdad5643621",
  "parents": [
    "94fe16cd96626f00809eb466ff2881f4f4d22ab5"
  ],
  "author": {
    "name": "Alex Vakulenko",
    "email": "avakulenko@chromium.org",
    "time": "Tue Jun 23 15:12:22 2015 -0700"
  },
  "committer": {
    "name": "ChromeOS Commit Bot",
    "email": "chromeos-commit-bot@chromium.org",
    "time": "Thu Jun 25 03:49:50 2015 +0000"
  },
  "message": "buffet: Handle cloud request failures due to device deleted on cloud\n\nWhen making cloud request and receiving \"authorization failed\" error,\nwe are refreshing the access token. If that fails with \"invalid_grant\",\nwe are certain that the device\u0027s robot account has been deleted, so\nwe should treat the device as no longer registered with the cloud, and\ndelete its cached credentials.\n\nThis CL adds OnDeviceDeleted() notification which wipes out the device\nregistration information. This notification is called when refreshing\nthe access token fails with \"invalid_grant\".\n\nA follow-up CL will add handling for DEVICE_DELETED XMPP notification.\n\nBUG\u003dbrillo:1215\nTEST\u003d`FEATURES\u003dtest emerge-link buffet`\n     `test_that -b link 100.96.49.59 e:buffet_.*`\nCQ-DEPEND\u003dCL:281664\n\nChange-Id: I220c286dbd286dd036d7664a4d14e9d761d70f28\nReviewed-on: https://chromium-review.googlesource.com/281393\nTested-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nTrybot-Ready: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nReviewed-by: Vitaly Buka \u003cvitalybuka@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e27b35d9ff5087f10757a56aea167a238fe9d228",
      "old_mode": 33188,
      "old_path": "buffet/device_registration_info.cc",
      "new_id": "b76c79e3ba59290317f4f6b42533f364a1bc89f1",
      "new_mode": 33188,
      "new_path": "buffet/device_registration_info.cc"
    },
    {
      "type": "modify",
      "old_id": "ed96db00c273f3e2c8c8843c6a6003ff1818700f",
      "old_mode": 33188,
      "old_path": "buffet/device_registration_info.h",
      "new_id": "19c698cdb98d6c723e947cd6e31a9d906b55bf9f",
      "new_mode": 33188,
      "new_path": "buffet/device_registration_info.h"
    },
    {
      "type": "modify",
      "old_id": "9d70886694d4b070b34e36818fa22f485187db03",
      "old_mode": 33188,
      "old_path": "buffet/device_registration_info_unittest.cc",
      "new_id": "c8130c3ac2c4df62c3620244626b1aa27f7dfd1c",
      "new_mode": 33188,
      "new_path": "buffet/device_registration_info_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "eee593f7b15ed8cb006d861bf64a47a63025de08",
      "old_mode": 33188,
      "old_path": "buffet/manager.cc",
      "new_id": "88a0b1687a2db0e513d7fb3e9af40adcff1a04cd",
      "new_mode": 33188,
      "new_path": "buffet/manager.cc"
    }
  ]
}
