)]}'
{
  "log": [
    {
      "commit": "807c525de2f4f8f19c7e928c2c357812713757db",
      "tree": "d8b4d18467a72efbeeccd8ff362392bb1b0a5d2f",
      "parents": [
        "6af43e5d6fe1cfedc182094e46d2828fd121d044",
        "27b0eebb4d8257dd3851a88dc73b3fbeefc0a6b3"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 09:04:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 09:04:59 2017 +0000"
      },
      "message": "Merge \"NsdManager: add test coverage for discoverServices()\" am: 3e21b1745c am: 60182dbe4e\nam: 27b0eebb4d\n\nChange-Id: I46acfd104ac3457126c3ccef5041788e4146321c\n"
    },
    {
      "commit": "60182dbe4ecff81e99738ffc424635222d40866f",
      "tree": "a6d407abd131197e6fda08f335116e4a6c4a07e4",
      "parents": [
        "bc57faa1ace969179b374280dc8b6bf3bf5fc6af",
        "3e21b1745c6785870a0295bf614a07029b04bf3c"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 08:54:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 08:54:46 2017 +0000"
      },
      "message": "Merge \"NsdManager: add test coverage for discoverServices()\"\nam: 3e21b1745c\n\nChange-Id: I0fd1d8e6ea3264a96b144c6701200f7b0be5f9c4\n"
    },
    {
      "commit": "3e21b1745c6785870a0295bf614a07029b04bf3c",
      "tree": "9301f7ee2b3401c16bfe4439fb09356d0b87f247",
      "parents": [
        "b0e408450cb4199adee79a7bec0f931e7033ba2b",
        "93f45916845814e5a50c26f770e0473212517fe1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 02 08:44:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 08:44:29 2017 +0000"
      },
      "message": "Merge \"NsdManager: add test coverage for discoverServices()\""
    },
    {
      "commit": "783019d2ff2ee87462934bad21a80fcfb99b60a7",
      "tree": "72398a4dc173762b38d417276706c337092b21f4",
      "parents": [
        "6b7553bc21329e7399a81b03bb04437e87410efe",
        "9a3e69d9b60f6d200d1efbeba649b86307bd0490"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 06:49:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 06:49:52 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit test coverage for servive registration\" am: b0e408450c am: bc57faa1ac\nam: 9a3e69d9b6\n\nChange-Id: Ideabb1c929ddd4307e66831cddb20e2feac2c6d9\n"
    },
    {
      "commit": "bc57faa1ace969179b374280dc8b6bf3bf5fc6af",
      "tree": "6951d456116a9603fc0822f13412384faa13cd69",
      "parents": [
        "ef5e579cecc1b1fc1404daff81aa30e34f095864",
        "b0e408450cb4199adee79a7bec0f931e7033ba2b"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 06:35:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 06:35:11 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit test coverage for servive registration\"\nam: b0e408450c\n\nChange-Id: I0b47ad5a1ccee4a2efb169d717b512a46ad4ecc2\n"
    },
    {
      "commit": "b0e408450cb4199adee79a7bec0f931e7033ba2b",
      "tree": "67bcb8ecaaecc414c4036a42455fcb9cf2aa3783",
      "parents": [
        "c00af4c533689074e3bf635378190c90aa310d6f",
        "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 02 06:27:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 06:27:10 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit test coverage for servive registration\""
    },
    {
      "commit": "93f45916845814e5a50c26f770e0473212517fe1",
      "tree": "80a2a3b7e6c40cffaae0d21c42b3c57aace5d1a3",
      "parents": [
        "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 28 13:29:21 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 15:26:33 2017 +0900"
      },
      "message": "NsdManager: add test coverage for discoverServices()\n\nTest: added new tests\nBug: 37013369, 33298084\nChange-Id: If6c1113ee1bd4690db90abd5a61c3e229c827aec\n"
    },
    {
      "commit": "6b7553bc21329e7399a81b03bb04437e87410efe",
      "tree": "1c57f7116bcb0c1ba76674336163ead0106d7f18",
      "parents": [
        "7a0de65bee6d6aca446144752bd387a141aafc91",
        "5555b1e3d10a482a7348f484dae46a5bbcd3834f"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue May 02 04:44:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 04:44:31 2017 +0000"
      },
      "message": "Merge \"Add a method to start the captive portal login app.\" into oc-dev\nam: 5555b1e3d1\n\nChange-Id: Ic7c14bd3dfd07f97c04901f043ed1cd3b1eee6e4\n"
    },
    {
      "commit": "5555b1e3d10a482a7348f484dae46a5bbcd3834f",
      "tree": "144e1a4012465e21042bff40a607a1ef0158c109",
      "parents": [
        "337e2aae532a6a5d977a9e8560a55cd5320b4a79",
        "4734cdbbc38752765376aedb0d5208463674535e"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue May 02 04:38:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 02 04:38:54 2017 +0000"
      },
      "message": "Merge \"Add a method to start the captive portal login app.\" into oc-dev"
    },
    {
      "commit": "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d",
      "tree": "cc7bd650e637235283a90bf56433d8ec37be9eee",
      "parents": [
        "3cff7deecbdad5f30f7db23a9b21e9bc2cf767d6"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 28 11:01:22 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 13:31:24 2017 +0900"
      },
      "message": "NsdManager: unit test coverage for servive registration\n\nThis patch adds test coverage for NsdManager#registerService() and\nNsdManager#unregisterService(). This test shows a potential defect in\nthe api: if unregisterService() fails, the associated listener is always\nunregistered from NsdManager. If the service initially registered is\nstill registered, this potentially make it impossible to unregister.\n\nTest: added new unit test\nBug: 37013369, 33298084\nChange-Id: Ia089b6d2f2a349907a8b29d9a3acd7f59e177887\n"
    },
    {
      "commit": "e53ae6aa23c4e05f0ed7d40da06b55ab22b894fa",
      "tree": "e4f0c02a55425d607041860e8abde23b2c1e4fe8",
      "parents": [
        "236919054359bf81b124b32d985d197c0f4b0438",
        "8183328af7eefd4f05eb8fd8eb36640a774ad9af"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Mon May 01 22:31:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 22:31:55 2017 +0000"
      },
      "message": "Merge \"Do not unsnooze canceled notifications.\" into oc-dev\nam: 8183328af7\n\nChange-Id: I363a606d1f190c2da6cc8fbd76ef0b093efa0a58\n"
    },
    {
      "commit": "a8b766fb73641ab67194a54391305bdc9cfc1cdd",
      "tree": "1bfa60366785505377baf4339bf931ebd1d2838a",
      "parents": [
        "030107f0bdebb1d52838baab87b5d0146e6586b4"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Mar 07 16:30:21 2017 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Mon May 01 11:04:23 2017 -0400"
      },
      "message": "Do not unsnooze canceled notifications.\n\nTest: runtest systemui-notification\nChange-Id: I3edef5822aa74359bf3a34f54f59d4021696365d\n"
    },
    {
      "commit": "16c981ea4356238e95401a6e77b4519d1e433c1b",
      "tree": "d7e5bf574cfa14dd66a4e10c368bfe1832b09a3e",
      "parents": [
        "5642a6559b20dd72fc5af187c08ad3a68b595f03",
        "030107f0bdebb1d52838baab87b5d0146e6586b4"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Mon May 01 13:31:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 13:31:26 2017 +0000"
      },
      "message": "Merge \"Fix flaky test?\" into oc-dev\nam: 030107f0bd\n\nChange-Id: I3ae44198c1f15967b8a774a5166c678c0be0ab47\n"
    },
    {
      "commit": "4734cdbbc38752765376aedb0d5208463674535e",
      "tree": "f6da9a502d36c3b2f6e9acb7edf1094a0ba6542f",
      "parents": [
        "b8d4a9486713f6b14f8bde44c7c3831eeed1f16d"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 27 14:30:21 2017 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon May 01 16:01:15 2017 +0900"
      },
      "message": "Add a method to start the captive portal login app.\n\nBug: 36203355\nBug: 36656914\nTest: ConnectivityServiceTest (including new test) passes\nChange-Id: I82a9a9a8da47870ba3f1bbef5941b37e970c844f\n"
    },
    {
      "commit": "1660a27b5d682cbb0bd9e2ce66e5ca39d6ab7816",
      "tree": "6032ae7dadd1d76912b323b0872cde430b4396f1",
      "parents": [
        "0c21500920cac1e736f877e950e28eaa0b8b3f81"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Apr 28 15:53:59 2017 -0400"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Apr 28 15:53:59 2017 -0400"
      },
      "message": "Fix flaky test?\n\n - Fix testAttachDetach, process more messages so it actually\n   does attach and detach\n - Don\u0027t inflate Clocks in QSFragmentTest because they are doing\n   something weird...\n\nTest: runtest systemui\nChange-Id: I05360630ee8d96158b6ab36660f20588ad158a28\nFixes: 37773362\n"
    },
    {
      "commit": "45cb5e37b030c8834ed06c13808aa26d070889f2",
      "tree": "83c323bd9f42ca14b1922c4529e469e96d15f159",
      "parents": [
        "7c45398614397667a1719b258cdb67cbe1a39854",
        "243978171972aa66485fe7d268a7146d8765ef22"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 28 08:16:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 08:16:11 2017 +0000"
      },
      "message": "Merge \"Notify WifiManager of interface state changes\" am: 8e97274186 am: 241a7f15f2\nam: 2439781719\n\nChange-Id: I5b3f640f4dd5cfac7555ddf1f6ae752899caddb0\n"
    },
    {
      "commit": "241a7f15f20b48dd163ccd4031ec92e97959c78e",
      "tree": "43a2fcd8b86c64a4b3ce5fd34e62844d5dc2bace",
      "parents": [
        "dc31a455172ecb0f491f56f0facb27f37b1c39c3",
        "8e97274186460ee72589d52741f47b843bece54f"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 28 08:04:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 08:04:31 2017 +0000"
      },
      "message": "Merge \"Notify WifiManager of interface state changes\"\nam: 8e97274186\n\nChange-Id: I6e9594805f9f55da53cf29e322829b1d2ff2f058\n"
    },
    {
      "commit": "080f9734d62e1ee34f7d3c9c33ba23e33368a2fc",
      "tree": "6128c5a5380496b029270456737758aab98b75d8",
      "parents": [
        "3dfd8275749a734380282437579156b6b35ccc51"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 27 20:57:23 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 28 16:19:54 2017 +0900"
      },
      "message": "Notify WifiManager of interface state changes\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n      (except for an unrelated IpConnectivityMetricsTest error)\nBug: 31466854\nBug: 32163131\nChange-Id: I702ea79eb2c02604761e4e1ebcd5f9e445178efb\n"
    },
    {
      "commit": "216af6d3febb109628d9185ec1a619f0e003bcd1",
      "tree": "39f61626e67e5be3692a6f9f23f9d7a18b01895b",
      "parents": [
        "5bd39aaf42a7d70438cb7c2de5293192e945145e"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 27 20:57:23 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 28 13:46:41 2017 +0900"
      },
      "message": "Notify WifiManager of interface state changes\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n      (except for an unrelated IpConnectivityMetricsTest error)\nBug: 31466854\nBug: 32163131\nChange-Id: I702ea79eb2c02604761e4e1ebcd5f9e445178efb\n"
    },
    {
      "commit": "f0913324bab22e2a91ddcc31e3e5471a4231a3d1",
      "tree": "2ff3063da4a97f981baa275825f09fc3519548e6",
      "parents": [
        "81d9230c88226a595941e43a8081442aad703ef5",
        "413190bed6630936bcbe881dccba3b6eabcc075e"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 28 03:01:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 28 03:01:12 2017 +0000"
      },
      "message": "Merge \"Switch to WifiManager.{start,stop}SoftAp()\" into oc-dev"
    },
    {
      "commit": "65c42a5569473b3cd1481763d98ad39ffd49df4b",
      "tree": "b60f6ad51e54c4a8acd770b7e3a48ce920f2021f",
      "parents": [
        "5c1469e5ccd44cc98c88671ed38403eca7a7f3cb",
        "e7172ff9fb4103339aa4095ab543ad4d259b1ebc"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Apr 28 01:04:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 01:04:51 2017 +0000"
      },
      "message": "Merge \"AAPT2: Add workaround for non-standard package IDs\" into oc-dev\nam: e7172ff9fb\n\nChange-Id: I7b8e53f8394e41433ceebe4f6e477f8561e49807\n"
    },
    {
      "commit": "e7172ff9fb4103339aa4095ab543ad4d259b1ebc",
      "tree": "57f18b44e7d6b32d10f310038fec9f449e87b004",
      "parents": [
        "afd8d9e2b289fe623118e849e0915f940a19bf2f",
        "4ca56978a9aea3f021a54ed9265de10811984d94"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 23:45:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 23:45:44 2017 +0000"
      },
      "message": "Merge \"AAPT2: Add workaround for non-standard package IDs\" into oc-dev"
    },
    {
      "commit": "d0c1cf630f78bd748425190e7130c43c6685c864",
      "tree": "ca65505f494955aa47c43f3c44874fbef8547048",
      "parents": [
        "32eb4022fda88ce85a8ec6c48c29c277b768f093",
        "2cddbcaa0f271d4a89cb61b017fc7fcde96e4378"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Apr 27 13:56:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 13:56:42 2017 +0000"
      },
      "message": "Merge \"Guard against incorrect context use.\" into oc-dev\nam: 2cddbcaa0f\n\nChange-Id: Ia2905116802bf9d1ed88abb75aefded34d130853\n"
    },
    {
      "commit": "2cddbcaa0f271d4a89cb61b017fc7fcde96e4378",
      "tree": "7ba038f6deae97ec0ef9ae67449a63c0cb452d0c",
      "parents": [
        "2e0e7f3c94f39e5c6629152d2abfd618a5a7407b",
        "f06a317039a6502252c2b4b1a878520d166a38c6"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Apr 27 13:46:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 13:46:54 2017 +0000"
      },
      "message": "Merge \"Guard against incorrect context use.\" into oc-dev"
    },
    {
      "commit": "413190bed6630936bcbe881dccba3b6eabcc075e",
      "tree": "e9db9c7645043b0aad37f469d8e66e0eb3b7caf2",
      "parents": [
        "2e0e7f3c94f39e5c6629152d2abfd618a5a7407b"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Tue Apr 18 14:22:25 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 27 22:32:37 2017 +0900"
      },
      "message": "Switch to WifiManager.{start,stop}SoftAp()\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\nBug: 31466854\n\nChange-Id: I730d029128a14b936c111ae159b9708d935f4656\n(cherry picked from commit ceb54c63dc7af8f11ec9eac4993a43b9e788ee2f)\n"
    },
    {
      "commit": "12ced2681380fddc0566074c54581e07f51133d5",
      "tree": "15bdbfe8a68609580a049bb293618f3afc5f7a27",
      "parents": [
        "d640465c5d9122821b71834642adf3ffa4e39438",
        "48947de481185d1d273f320a66d657a4787842fa"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 13:09:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 13:09:02 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit tests for argument validation\" am: 3cff7deecb am: d97e358f7a\nam: 48947de481\n\nChange-Id: I8a51ff51071adc60fe9f4d99ec629edabbed353d\n"
    },
    {
      "commit": "d640465c5d9122821b71834642adf3ffa4e39438",
      "tree": "bf2a112349b2b5f61aee189035763ae91252fe11",
      "parents": [
        "be014da6387246edd786a4ec9ca049d3accdcd12",
        "5d0bd13538924e8b3735eb103331ba67fc5910a1"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 13:06:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 13:06:59 2017 +0000"
      },
      "message": "Merge \"NsdService: disentangle NativeDaemonConnector from ctor\" am: fa97f11b20 am: 47748b754c\nam: 5d0bd13538\n\nChange-Id: Ic8ddf92c7c64d4214a75bea6d6e5083f4612a76a\n"
    },
    {
      "commit": "d97e358f7a9580f8ceb123c07d2f6507a1c99364",
      "tree": "d235f34505dfad04ab6e661f81773cf2614264df",
      "parents": [
        "47748b754cf9f98f4aad5d8a3f823e74e423d955",
        "3cff7deecbdad5f30f7db23a9b21e9bc2cf767d6"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 12:44:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 12:44:35 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit tests for argument validation\"\nam: 3cff7deecb\n\nChange-Id: I24d3bda00236fe8c49df0ea7f53109625b3b4f9d\n"
    },
    {
      "commit": "47748b754cf9f98f4aad5d8a3f823e74e423d955",
      "tree": "c18faa933e202276ceed77e2631a373e0bc097eb",
      "parents": [
        "fee9c65f4059667b8b411403631b0d35a224b03a",
        "fa97f11b2052a6e0ebb2754675cb6edfff577f96"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 12:39:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 12:39:00 2017 +0000"
      },
      "message": "Merge \"NsdService: disentangle NativeDaemonConnector from ctor\"\nam: fa97f11b20\n\nChange-Id: I4e5dc9df1f4de256b34c0140ea5ae7ec1bb6fce6\n"
    },
    {
      "commit": "52d9e733aedf210b50f1df389cc23fbf28ab97fe",
      "tree": "ac5e9a008b7463f1bd2b01cfab8409cedc9afdd6",
      "parents": [
        "1fac3191c7ba7921724530ac38c07cb95263a635"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Apr 25 15:04:10 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 16:35:48 2017 +0900"
      },
      "message": "NsdManager: unit tests for argument validation\n\nTest: new tests pass.\nBug: 37013369, 33298084\nChange-Id: Ia514d2bbd967d46fed54e379f319b572ade22c62\n"
    },
    {
      "commit": "1fac3191c7ba7921724530ac38c07cb95263a635",
      "tree": "ee06f6515be242c8f15a4d8c9685ce3d77b21b3b",
      "parents": [
        "7ca060aa95ce8425b8d69d8dee3a472c968f28e0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 24 16:19:58 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 16:35:30 2017 +0900"
      },
      "message": "NsdService: disentangle NativeDaemonConnector from ctor\n\nThis patch disentangles the creation of NativeDaemonConnector from the\ncreation of NsdService by introducing a wrapper type DaemonConnection.\n\nThis allows to mock this dependency in unit tests.\n\nTest: enhanced previously introduced new tests.\nBug: 37013369, 33298084\nChange-Id: I894b7cddfc509f86d0134d214c88c063b81b5e0a\n"
    },
    {
      "commit": "e2377c88e31913e0168414c7d6a268efcb84234a",
      "tree": "f99378802acad780a137de82b61254b45ea781c9",
      "parents": [
        "81a1217b71dadc72a60b476eeb23f5fda30e9381",
        "d29ce6ae8c0ca96fcb63c0b730406e40a9bd065b"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 05:49:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 05:49:47 2017 +0000"
      },
      "message": "Merge \"NsdService: bootstrap unit tests\" am: 7ca060aa95 am: dd53c962b2\nam: d29ce6ae8c\n\nChange-Id: Iaf0679790e934baaaf48bcb04098aa18deca4d60\n"
    },
    {
      "commit": "dd53c962b20f65ca395de66b1cdeb4a5ac338161",
      "tree": "e944d447fe3eee108e0d24775335b2162b264cd5",
      "parents": [
        "dedc04978e2e4770b8e98b6e554e025a9696687d",
        "7ca060aa95ce8425b8d69d8dee3a472c968f28e0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 05:34:05 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 05:34:05 2017 +0000"
      },
      "message": "Merge \"NsdService: bootstrap unit tests\"\nam: 7ca060aa95\n\nChange-Id: I3ce2d85afb5e085c8c49731f3d18a96d17542271\n"
    },
    {
      "commit": "7ca060aa95ce8425b8d69d8dee3a472c968f28e0",
      "tree": "2b67c47dcf960e6f8ef35977392f2ce7979b0f29",
      "parents": [
        "ebc94ecac9199729ae7b46faa4ef6908181cad91",
        "cbb13672bcb20cba19a5cd54fdfd1a33e98271c1"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 27 05:22:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 05:22:54 2017 +0000"
      },
      "message": "Merge \"NsdService: bootstrap unit tests\""
    },
    {
      "commit": "7ee513c27b26b98bd5f2fd5bff5e0bd289736909",
      "tree": "dcfdc37af069f233433eb8f639ac3795dab344b6",
      "parents": [
        "5d34ce7f65826b079215df8676ec298c0327b161",
        "f84467e19f16a63f47f13bfc9263c70b46816c24"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Apr 27 05:04:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 05:04:18 2017 +0000"
      },
      "message": "Merge \"Api updates\" into oc-dev\nam: f84467e19f\n\nChange-Id: I136a7713ee8f2b625b58aac29f5315c5b336256b\n"
    },
    {
      "commit": "4ca56978a9aea3f021a54ed9265de10811984d94",
      "tree": "1634b01c81b725ff3d286b7a8bf6cd16682cf7eb",
      "parents": [
        "9e55fcbdc254da098bb792f460296ff0649c3b00"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Apr 26 21:49:53 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Apr 26 21:55:31 2017 -0700"
      },
      "message": "AAPT2: Add workaround for non-standard package IDs\n\nThe dynamic ref table used to map build-time IDs to runtime IDs\nis mainly used for shared resource libraries and has a few built-in\nmappings (app 0x7f and framework 0x01).\n\nUsing a non-standard package ID like 0x80 causes a failure in package ID\nlookup. The solution is to ship the dynamic_ref_table with an identity mapping\nwith any resource table that uses a non-standard package ID.\n\nAdds some tests to ensure this works correctly.\n\nBug: 37498913\nTest: make libandroidfw_tests\nTest: make aapt2_tests\nChange-Id: Ic3f67942384d34e7fdcbc94ded360e940e3ebc8a\n"
    },
    {
      "commit": "f84467e19f16a63f47f13bfc9263c70b46816c24",
      "tree": "5e8987721f75664f43d2e4bed093b1127a88ae52",
      "parents": [
        "3ab258c98d1b40bdea2833e9671fae8431d86ec5",
        "bad42976009ffb61010136ed8055f9e0f6d2e416"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 04:51:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 04:51:46 2017 +0000"
      },
      "message": "Merge \"Api updates\" into oc-dev"
    },
    {
      "commit": "f06a317039a6502252c2b4b1a878520d166a38c6",
      "tree": "4d0325c67b6ca0eae92eab84fc60c88c96538594",
      "parents": [
        "41bf42a1c73d762856d5a38d7548cf751ae8bd15"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Tue Apr 25 16:30:53 2017 -0400"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Tue Apr 25 21:38:40 2017 +0000"
      },
      "message": "Guard against incorrect context use.\n\nInstead of just having random tests fail, fail all the tests with a\nslightly more useful message.\n\nAlso remove all the code around acquiring and contention, now that\nwe have a test rule in place for TestableContext, we can just use\nthat for cleanup and have a simple copy-on-write provider.\n\nTest: runtest -x frameworks/base/tests/testables \u0026\u0026 runtest systemui\nChange-Id: I907da23730a4a96cfa2bb112100a06980f01b078\nFixes: 37302051\n"
    },
    {
      "commit": "bad42976009ffb61010136ed8055f9e0f6d2e416",
      "tree": "41c3243187a4e74ddcac2278248fe601c5d2dcb5",
      "parents": [
        "cd68c334bad676e4b29db77c78f61eb48fd75df1"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Apr 25 13:52:49 2017 -0400"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Apr 25 17:00:05 2017 -0400"
      },
      "message": "Api updates\n\n- Better documentation on DEFAULT_CHANNEL_ID\n- Renaming getChannel/setChannel/getTimeout/setTimeout\n- Add documentation to getShortcutId\n- @hide parcel constructors\n\nTest: make, make cts\nBug: 37672218\n\nChange-Id: I695b2620c51638a84930e9d1c5fbfd6d85699b55\n"
    },
    {
      "commit": "c831cf584c1aa3a056e97acf208e5c296ebce68f",
      "tree": "3699eca6ea86481994c0a2ecff308c6eb728b131",
      "parents": [
        "ba785bb0ba94c6412600476a9da2bd10097ced4d",
        "21fb35048f10280f64c4587ef85e084e999a4f5a"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Tue Apr 25 20:42:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 20:42:12 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Integrate new looper apis into testables\"\"\" into oc-dev\nam: 21fb35048f\n\nChange-Id: I03b206841f221e965cc39c1db6e82dabe9cd14de\n"
    },
    {
      "commit": "745d0a8b77ad3c7c8a220b6e05dbceff54154d57",
      "tree": "31a6e2e392ee170d1cf0f6b748284f320fb6faf5",
      "parents": [
        "41bf42a1c73d762856d5a38d7548cf751ae8bd15"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Mon Apr 17 11:34:22 2017 -0400"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Tue Apr 25 13:49:58 2017 -0400"
      },
      "message": "Revert \"Revert \"Integrate new looper apis into testables\"\"\n\nThis reverts commit fd8f615953631863c94d7080441f8dd4a0a74f56.\n+ some minor adjustments.\n\nTest: runtest systemui\nChange-Id: Ie4349fcfb2aadbbd8826506faa8a6fb1ecd5b589\n"
    },
    {
      "commit": "79d9e99632923994aa026db15f5f29af1af24db4",
      "tree": "3568b17c6863b7bec36680a9c2af7101ee428c26",
      "parents": [
        "e45651ba8f6a472ec54b8a9771aca137e1dd4a05",
        "887fd907422033b8a0192b9118195e61d1fcefea"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Tue Apr 25 13:40:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 13:40:42 2017 +0000"
      },
      "message": "Merge \"[AWARE] Add UID checking to WifiAwareNetworkSpecifier\" am: 2fd19ffa06 am: 3c6305cc55\nam: 887fd90742\n\nChange-Id: I8480ac43d89dc85b541e6255c3cdc597393896cf\n"
    },
    {
      "commit": "3c6305cc55a22a6abae9d5d7f74ba58ac963b3e3",
      "tree": "12b0b2a1b83f989113941275f61fbecc60b2546b",
      "parents": [
        "0efa05559004425294b9f693e51868a70731031a",
        "2fd19ffa060f1c8678f42b8062816aa6900412d5"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Tue Apr 25 13:27:22 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 13:27:22 2017 +0000"
      },
      "message": "Merge \"[AWARE] Add UID checking to WifiAwareNetworkSpecifier\"\nam: 2fd19ffa06\n\nChange-Id: I8e4a38b113d6e8f81bc382715dda5c279771e454\n"
    },
    {
      "commit": "2fd19ffa060f1c8678f42b8062816aa6900412d5",
      "tree": "44ef3eeef993de38548302c2155a55712581d71b",
      "parents": [
        "7d4a354fd572ac0dc01f9b815a9e0af2d127bc5b",
        "859748f08c42ddff5693c48d17bed633cbfe9cce"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Tue Apr 25 13:21:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 25 13:21:36 2017 +0000"
      },
      "message": "Merge \"[AWARE] Add UID checking to WifiAwareNetworkSpecifier\""
    },
    {
      "commit": "cbb13672bcb20cba19a5cd54fdfd1a33e98271c1",
      "tree": "5dec22cdd6b72d3b59b516905fc08381d3185b55",
      "parents": [
        "7781a6d4c138dab056459d9e3dfc017a763b70d0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 24 11:35:06 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Apr 25 10:42:58 2017 +0900"
      },
      "message": "NsdService: bootstrap unit tests\n\nTest: new tests part of $ runtest frameworks-net\nBug: 37013369, 33298084\nChange-Id: Ief45f838268380b4b2a128390fbf34d55a3b922b\n"
    },
    {
      "commit": "7a0191b355f8374480c695a13c7b7bec9ce23d52",
      "tree": "6312ad61a36a18965f2637cbca25c5ac54af35f8",
      "parents": [
        "575523f2e70e7cb2a53c712bbb6e4e6514f920bc",
        "a80bb82b4eb189cbb74fbfb3eaa70bd80c0396a0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 24 19:07:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 24 19:07:37 2017 +0000"
      },
      "message": "Merge \"Move byte logics from ApfFilter into BitsUtil\" am: 21b9b3a8ff am: 12c1074c8b\nam: a80bb82b4e\n\nChange-Id: I5f13b006b57cc8a3ab0560626077d003ce4fe8c8\n"
    },
    {
      "commit": "12c1074c8b46b6c09e7ad117d4b9e465020d0713",
      "tree": "5ee9253413b1d957d42fd651a789fbe72f740781",
      "parents": [
        "23d41ee68ef2a8d07f5cc617e0b3a2f9a4d6f919",
        "21b9b3a8ffddde5044b428b086bbb601318d231b"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 24 18:45:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 24 18:45:23 2017 +0000"
      },
      "message": "Merge \"Move byte logics from ApfFilter into BitsUtil\"\nam: 21b9b3a8ff\n\nChange-Id: I9234b9dcb527de8a67bebab8cebc35e5b96aa986\n"
    },
    {
      "commit": "495a17b332e57ea4c0162a4ae63d820b947e3719",
      "tree": "9f53928fc478332032e0c44f6ac101e79a590b97",
      "parents": [
        "9910dbc682118d2527fc17d4b50e8dcb94318534"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Jan 12 15:31:05 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 10:07:03 2017 +0900"
      },
      "message": "Move byte logics from ApfFilter into BitsUtil\n\nThis patch extracts into BitUtils byte manipulation helper methods\nand unsigned type manipulation helper methods from ApfFilter into\nan independent and reusable structure.\n\nTest: $ runtest frameworks-net\nChange-Id: I0f33af10457a63dbde5983f14353a79b8cd877d9\n"
    },
    {
      "commit": "658f2e5cd7794f341e436a06f1d8ab99b69e4fd3",
      "tree": "46e4c07883939f1d812d8bfbbfc3b0d6709ed285",
      "parents": [
        "cf0f217d1b51df61760b2c90f329b58af2fdffaa",
        "d2181235b9dfec8883cbfb53dd1b5e05eda68a16"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 00:57:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 22 00:57:48 2017 +0000"
      },
      "message": "Merge \"NsdManager: add unit tests\" am: dc54ad7fc3 am: 40ab8401b2\nam: d2181235b9\n\nChange-Id: I7a5202be0e6a6274f3bd11737f30fee0ef947235\n"
    },
    {
      "commit": "40ab8401b291de49e4aa1b6806f912212c8c6eb5",
      "tree": "28863831dea41edc89197028ec08048fc003b4b1",
      "parents": [
        "cb93ac533d95e9dc4788cd0bee94f82522b12962",
        "dc54ad7fc37888a1bb3db0d19dec5a6aca167cf0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 00:40:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 22 00:40:56 2017 +0000"
      },
      "message": "Merge \"NsdManager: add unit tests\"\nam: dc54ad7fc3\n\nChange-Id: I928f19e359b7423d43d792c413de4195a64141a7\n"
    },
    {
      "commit": "dc54ad7fc37888a1bb3db0d19dec5a6aca167cf0",
      "tree": "861f27397d908e3016a61e8e5aaae8cd2600d27e",
      "parents": [
        "d065cf049e870465571afb9c55d3d033a314015b",
        "db8adb798394af6381974444bfa0c47f4b30f0fb"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 00:31:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 22 00:31:28 2017 +0000"
      },
      "message": "Merge \"NsdManager: add unit tests\""
    },
    {
      "commit": "177868224277f3e41634eccfda71cfadb0041e23",
      "tree": "783d18ff03fd83568010254579164209177a1343",
      "parents": [
        "cd8557d15a679992f0b3a69490b16d8876912a19",
        "b90b2015d3d4e1e165c587738c136709ed8a409c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 21 23:23:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 23:23:17 2017 +0000"
      },
      "message": "Merge \"Mark Restricted APN connections as restricted.\"\nam: b90b2015d3\n\nChange-Id: Icd54c671035da752663d9ec125f999298aa1d8e7\n"
    },
    {
      "commit": "b90b2015d3d4e1e165c587738c136709ed8a409c",
      "tree": "b7b9901f859002780c0eff04041729435aef1868",
      "parents": [
        "e4f56a7e44aa707db45970e9471e2603ee0ee24e",
        "a7e148a87440a047cdd99179a99939a73e383d44"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 21 23:12:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 21 23:12:52 2017 +0000"
      },
      "message": "Merge \"Mark Restricted APN connections as restricted.\""
    },
    {
      "commit": "5d30d86372163a9513aba828bdafab42e5d1099b",
      "tree": "03a0a7c8fc88af3522349e778a12b2f884eda698",
      "parents": [
        "e7c2e03d22cab78775309e87451002f5bc382afd",
        "4de3794c2609eab0f89085cb2b038304bdf5cc02"
      ],
      "author": {
        "name": "Robin Lee",
        "email": "rgl@google.com",
        "time": "Fri Apr 21 22:17:15 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 22:17:15 2017 +0000"
      },
      "message": "Merge \"Use Vpn rules (not firewall) for always-on VPN\" am: e4f56a7e44 am: cd8557d15a\nam: 4de3794c26\n\nChange-Id: Ic1e96eac68ddc8a713b3c71b5c126cb8b99c59f5\n"
    },
    {
      "commit": "cd8557d15a679992f0b3a69490b16d8876912a19",
      "tree": "c08bdeff484ece17ff8aa4e91b18b056a9682ed2",
      "parents": [
        "e00b92e55084ef1a7c5dff0e8689b0112fa8ed16",
        "e4f56a7e44aa707db45970e9471e2603ee0ee24e"
      ],
      "author": {
        "name": "Robin Lee",
        "email": "rgl@google.com",
        "time": "Fri Apr 21 22:05:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 22:05:33 2017 +0000"
      },
      "message": "Merge \"Use Vpn rules (not firewall) for always-on VPN\"\nam: e4f56a7e44\n\nChange-Id: I80b3607fd1c61875be8354439e09db56a0bd391d\n"
    },
    {
      "commit": "a7e148a87440a047cdd99179a99939a73e383d44",
      "tree": "9c084dbaf8cee30f2994db966ff10b785bbc571c",
      "parents": [
        "9487dff8ab8a55202016137f464567b0adbf1f7f"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 10 14:32:23 2017 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 21 22:00:17 2017 +0000"
      },
      "message": "Mark Restricted APN connections as restricted.\n\nIf anything unrestricted is bundled in the whole thing has to be\nunrestricted (we can\u0027t restrict based on destination or intent)\nbut the NOT_METERED flag wasn\u0027t taken into account.\n\nThis wasn\u0027t a problem before because telephony set that statically\nand late, but a change caused it to be marked NOT_METERED earlier\nwhich exposed this bug.\n\nbug: 37208956\nMerged-In: I7b7a1c38621ce0ecde8cf041e82b1ebb7a9c6f15\nTest: new NetworkCapabilitiesTest.  Fails without fix, works with.\nChange-Id: I86c1b2854413a94662aa53e697d32380695ab9ac\n"
    },
    {
      "commit": "e4f56a7e44aa707db45970e9471e2603ee0ee24e",
      "tree": "ef3a010db7a43c780c98e6c2b29349eeca1bd299",
      "parents": [
        "c8d5f84fcf15fe242fc4d213f9a6b861485bc441",
        "c3736bc10da63d6a351d3f8e7781ff1d67ecc9a6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 21 21:53:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 21 21:53:15 2017 +0000"
      },
      "message": "Merge \"Use Vpn rules (not firewall) for always-on VPN\""
    },
    {
      "commit": "859748f08c42ddff5693c48d17bed633cbfe9cce",
      "tree": "8a222bf7820976fce23144109781f47b3bba39d7",
      "parents": [
        "946410eef568ecb9f3771b9c78b16290e694b10e"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Mon Apr 03 17:42:34 2017 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Fri Apr 21 18:47:35 2017 +0000"
      },
      "message": "[AWARE] Add UID checking to WifiAwareNetworkSpecifier\n\nWifi Aware networks are per app - i.e. a requestor gets\na dedicated network. Change verifies that the only the\noriginal requestor matches the created network (using UID).\n\nBug: 36053921\nTest: Integration (sl4a) tests\nChange-Id: I4ff3994731dd7ccb88e2bea333d1e6905b136f02\n"
    },
    {
      "commit": "09d1588183f717378b97a854ce53000792ef9736",
      "tree": "1f408fc8e6ed575c3d1b138e13b7e188d2344b0f",
      "parents": [
        "5a081a225f81af6389a81a8b01205970a505ac92",
        "6305795287dc6e813a7a4734f83ea877d428783f"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 21 09:18:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 09:18:50 2017 +0000"
      },
      "message": "Merge \"Clarify IControlsTethering LOCAL_ONLY state name\" am: 649c459858 am: f7c93bcd45\nam: 6305795287\n\nChange-Id: Idf256ced2c3403f9672b29c10ec02adb44a0ab7c\n"
    },
    {
      "commit": "f7c93bcd451269dfe795daad79b6d2adc272c2fb",
      "tree": "9cf2d215b0ea285c440abbdd0782f4db834cf52c",
      "parents": [
        "232198d02b4b4109a472d5aacc6c88ff75e70045",
        "649c45985879d4e29cfac623849e558cb2fe2a84"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 21 09:07:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 09:07:46 2017 +0000"
      },
      "message": "Merge \"Clarify IControlsTethering LOCAL_ONLY state name\"\nam: 649c459858\n\nChange-Id: Ia856b08ced4e26e32e107faac37e1c245caaf910\n"
    },
    {
      "commit": "5fe3718c6d2722e399c0d572621649c242c067da",
      "tree": "71b316be92d4b9d4a32c0238a703dc58e2d6a06e",
      "parents": [
        "4b76d33968511c2dd56b25940115dcc823afedc8"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 22:59:16 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 21 18:03:19 2017 +0900"
      },
      "message": "Clarify IControlsTethering LOCAL_ONLY state name\n\nTest: as follows\n    - build\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n    - manually starting tethering shows Settings and icon updates\nBug: 31466854\nBug: 32163131\n\nChange-Id: I1f45511f00aca37480f894be4a9a004f1a3b35d7\n(cherry picked from commit ca41be796a56fab152cd07bbeaf9283de7e8be90)\n"
    },
    {
      "commit": "db8adb798394af6381974444bfa0c47f4b30f0fb",
      "tree": "782297a36a79493350589887d4bd7bacb35c76bd",
      "parents": [
        "1321e592fe8ba8f3d975d0e8af6c4fec84481ff4"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 17 15:27:52 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 21 05:16:37 2017 +0000"
      },
      "message": "NsdManager: add unit tests\n\nThis prepares some refactoring and the addition of a timeout to\nresolveService.\n\nTest: new tests pass\nBug: 37013369, 33298084\nChange-Id: Ie8277bd5983278507bfa70495b4ce7d13895b24b\n"
    },
    {
      "commit": "668b722498b4f980dbc63bc26ced11d60acc62e2",
      "tree": "7d66417308ceb282bf36b278507f647c328fd3c3",
      "parents": [
        "652d006d6bc79468d5227cf109d750a23d73cdbd"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Apr 17 16:47:23 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 21 13:26:04 2017 +0900"
      },
      "message": "Add local-only hotspot info into tether state change broadcast\n\nTest: as follows\n    - build\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n    - manually starting tethering shows Settings and icon updates\nBug: 31466854\nBug: 32163131\n\nChange-Id: I938074587dfeec221c5cdb43a392802ad3fc3589\n"
    },
    {
      "commit": "ca41be796a56fab152cd07bbeaf9283de7e8be90",
      "tree": "b5af682fa0536cee003b7a03981045f5db76b4fc",
      "parents": [
        "1321e592fe8ba8f3d975d0e8af6c4fec84481ff4"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 22:59:16 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Apr 21 11:12:24 2017 +0900"
      },
      "message": "Clarify IControlsTethering LOCAL_ONLY state name\n\nTest: as follows\n    - build\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n    - manually starting tethering shows Settings and icon updates\nBug: 31466854\nBug: 32163131\n\nChange-Id: I1f45511f00aca37480f894be4a9a004f1a3b35d7\n"
    },
    {
      "commit": "dc7e445bc7def6ae901e7d9770bbf31eb9a15269",
      "tree": "938751c8516e5be9828ef64cedbdae06e9c87fb3",
      "parents": [
        "c9ee35581ccc69b9480178c2b7280bd10f42be5f",
        "7d321645a29b8ed43bf276cf57236dbe35adcb1c"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 16:02:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 20 16:02:06 2017 +0000"
      },
      "message": "Merge \"Switch to WifiManager.{start,stop}SoftAp()\" am: 275edcb940 am: 11fdd1769b\nam: 7d321645a2\n\nChange-Id: I40e72d9b8f99c52089a8c73c8ca20d1efd10c68d\n"
    },
    {
      "commit": "11fdd1769b51e643220910f3630d1fb31bf92153",
      "tree": "5bc7297d5d0c7c372ed095dafa7a0a6c570ce4df",
      "parents": [
        "6af3dd0fc3d15749161833fe7e1834161263990b",
        "275edcb940f1fb0aba53f19b87fe76d6fd8538a0"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 15:50:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 20 15:50:19 2017 +0000"
      },
      "message": "Merge \"Switch to WifiManager.{start,stop}SoftAp()\"\nam: 275edcb940\n\nChange-Id: I697bf530da9786da4ed1405ac8b44b7bc4d097a6\n"
    },
    {
      "commit": "275edcb940f1fb0aba53f19b87fe76d6fd8538a0",
      "tree": "90c61463d60a49889f6fab767bf17a81686a762c",
      "parents": [
        "4c7a999d79eabbd8d0fea831ab3ae8162bd29a7e",
        "ceb54c63dc7af8f11ec9eac4993a43b9e788ee2f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 20 15:37:29 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 20 15:37:31 2017 +0000"
      },
      "message": "Merge \"Switch to WifiManager.{start,stop}SoftAp()\""
    },
    {
      "commit": "c9ee35581ccc69b9480178c2b7280bd10f42be5f",
      "tree": "79b15922801790d282c6a8291d0b024580b1fc71",
      "parents": [
        "7b8fc6ea7906ed485f3b774c988024b64efffc9b",
        "3fa8908370319b62bfeabf195e5f74893953454b"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 14:02:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 20 14:02:24 2017 +0000"
      },
      "message": "Merge \"Add local-only hotspot info into tether state change broadcast\" am: 4c7a999d79 am: 6af3dd0fc3\nam: 3fa8908370\n\nChange-Id: If3851c3f15314e3c0d357e154049aaa2b8b5c8e7\n"
    },
    {
      "commit": "6af3dd0fc3d15749161833fe7e1834161263990b",
      "tree": "762ba6ab4cb791d83469eb62afcc246df6fa1704",
      "parents": [
        "23ee1621c78642f6409cce58f95a580b9b754452",
        "4c7a999d79eabbd8d0fea831ab3ae8162bd29a7e"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 12:55:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 20 12:55:48 2017 +0000"
      },
      "message": "Merge \"Add local-only hotspot info into tether state change broadcast\"\nam: 4c7a999d79\n\nChange-Id: I911be691b15604a63aa02bf4db607ae1cd701cfe\n"
    },
    {
      "commit": "8351faa900acdba1022f03bb3f18e26f539eadae",
      "tree": "96a9213838c4ef9e49915530d0c1be7e6ed020ca",
      "parents": [
        "fe86a197a112e248f6defede035657c508f41e8b"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Apr 17 16:47:23 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 19:44:01 2017 +0900"
      },
      "message": "Add local-only hotspot info into tether state change broadcast\n\nTest: as follows\n    - build\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n    - manually starting tethering shows Settings and icon updates\nBug: 31466854\nBug: 32163131\n\nChange-Id: I938074587dfeec221c5cdb43a392802ad3fc3589\n"
    },
    {
      "commit": "695d2c6df10c99cef25cfca584db9b0e164cdc9f",
      "tree": "576ef93f1bf4618d376eff34a50433e1ea6d56ec",
      "parents": [
        "98799bddfb21c2a362ab3270168b4f13fd931884",
        "d6c9efa3323f3f5ae44abe312ae5a1e6ef3816ce"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Apr 19 11:24:03 2017 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Apr 19 11:24:03 2017 -0700"
      },
      "message": "Merge commit \u0027d6c9efa3323f3f5ae44abe312ae5a1e6ef3816ce\u0027 into manual_merge_d6c9efa3323f\n\nChange-Id: I86d5e87cc3884d8fc3eb326a92b8871ef0926aa6\n"
    },
    {
      "commit": "1eeec7880db34869cb271b156b3168d3e4e8ab98",
      "tree": "9cf4834e3e3a50d90d3ecbedd275cf48f97a35f7",
      "parents": [
        "4b0d2bf70aa1fd9345ab7b7a693fd96878ce1663"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 10 14:32:23 2017 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Apr 18 11:29:20 2017 -0700"
      },
      "message": "Mark Restricted APN connections as restricted.\n\nIf anything unrestricted is bundled in the whole thing has to be\nunrestricted (we can\u0027t restrict based on destination or intent)\nbut the NOT_METERED flag wasn\u0027t taken into account.\n\nThis wasn\u0027t a problem before because telephony set that statically\nand late, but a change caused it to be marked NOT_METERED earlier\nwhich exposed this bug.\n\nbug: 37208956\nTest: new NetworkCapabilitiesTest.  Fails without fix, works with.\nChange-Id: I7b7a1c38621ce0ecde8cf041e82b1ebb7a9c6f15\n"
    },
    {
      "commit": "ceb54c63dc7af8f11ec9eac4993a43b9e788ee2f",
      "tree": "74e834d060f19d5875fcbce895582966fb478f95",
      "parents": [
        "6d033475b307ae95d0e733a3be9260525aa2879d"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Tue Apr 18 14:22:25 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Tue Apr 18 15:22:49 2017 +0900"
      },
      "message": "Switch to WifiManager.{start,stop}SoftAp()\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\nBug: 31466854\n\nChange-Id: I730d029128a14b936c111ae159b9708d935f4656\n"
    },
    {
      "commit": "7eb8260236a4884804960ae2b5c153a471d16db6",
      "tree": "18c666a395564313a10a98f2efd3da5f395e8780",
      "parents": [
        "487737b876b5a2d2ffc2f3a875243efdbe0fb48b",
        "4dd58ed08a11dd1c8032092a150b81de27ef130e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 17 05:11:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 17 05:11:21 2017 +0000"
      },
      "message": "Merge changes I76ae853c,If94102c7 into oc-dev\n\n* changes:\n  Ignore potential SystemProperties errors when setting net.dns\n  Make ConnectivityServiceTest pass on wifi-only devices.\n"
    },
    {
      "commit": "d98f26e4f379e0a8efa07b2ece0ca6d5e44857ad",
      "tree": "20b91ddfc416f4db937aa4fa75a323551532f9ab",
      "parents": [
        "490ef3cda4c45b512730b470f4e26f8f9ceb7754",
        "c1b654a09e0540bbc78c76a2e52c0d02a95f81be"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Apr 15 02:16:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 15 02:16:14 2017 +0000"
      },
      "message": "Merge changes from topics \u0027network_specifier\u0027, \u0027networkspecifier\u0027 into oc-dev\n\n* changes:\n  [CM] Unhide the NetworkSpecifier as object API\n  Make the NetworkSpecifier a class instead of a string.\n  Add test coverage for NetworkSpecifiers.\n"
    },
    {
      "commit": "efc602c30700112de9535ea4f85b497dd55df254",
      "tree": "6fbf659bc07b4a86b13cb6e9befec52b6d8b4406",
      "parents": [
        "2de6b0dab0ce67f0ed94560d2ba3fbc4ea106a22",
        "7c8ab2651b1f1c55f1df5eddba1bb3068299261f"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Apr 14 17:04:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 17:04:19 2017 +0000"
      },
      "message": "Merge \"Remove unnecessary casts on calls to findViewById\" into oc-dev\nam: 7c8ab2651b\n\nChange-Id: I82826b63a3d6bc527c696158bfab98fe438f9847\n"
    },
    {
      "commit": "7c8ab2651b1f1c55f1df5eddba1bb3068299261f",
      "tree": "9cc029a655ca3da88019b8195aa27695337cdf4e",
      "parents": [
        "b7f0db8d89d16ed653c04f0ddf1d6513bb95c55f",
        "51efddbd3bb304de2dd47fa8cd1114ac555958bb"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 14 16:56:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 14 16:56:28 2017 +0000"
      },
      "message": "Merge \"Remove unnecessary casts on calls to findViewById\" into oc-dev"
    },
    {
      "commit": "9b7453f3c65354410a6cd42cd91531950ba69687",
      "tree": "df204de937a96b36f99930dbbeb42c9e2bb6e0a6",
      "parents": [
        "83c52e0a40c6e39282a3bcc69c6bbdfa92922941",
        "e505b37ec5fff335fabb74ed4dee8a4c601be9b5"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 15:36:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 15:36:10 2017 +0000"
      },
      "message": "Merge \"ConnectivityManager: release all requests mapping to a callback.\" am: 1a8f04b1b2 am: 4d80366762\nam: e505b37ec5\n\nChange-Id: I99267e14ab04ce62c5c2385f24f5865e791a24a0\n"
    },
    {
      "commit": "4d80366762f9e7d3250f0105cd6f348e39d99b9a",
      "tree": "76d725e556412c90be24b62f4f6fc60bcbd6560e",
      "parents": [
        "605eafe0a5f5b17056a8d1f3f97c1727c6094810",
        "1a8f04b1b2b859cd1d40e338dc91d6932d0a3a16"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 15:22:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 15:22:39 2017 +0000"
      },
      "message": "Merge \"ConnectivityManager: release all requests mapping to a callback.\"\nam: 1a8f04b1b2\n\nChange-Id: I30d3790822430d250d6005cc165e7fa10f56649e\n"
    },
    {
      "commit": "51efddbd3bb304de2dd47fa8cd1114ac555958bb",
      "tree": "0c9fe7e2f2263b7757ec8e96084d1f2701119c47",
      "parents": [
        "5879aa4b03f17753eca3419a13db0ecbf2075e62"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Apr 05 10:00:01 2017 -0400"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Apr 14 11:15:50 2017 -0400"
      },
      "message": "Remove unnecessary casts on calls to findViewById\n\nJust frameworks/ this time. More paths to come.\n\nBug: 24137209\nTest: make -j32\nChange-Id: Iff27abd26fa43296ac2fff8f534fc6742d2ae80c\n"
    },
    {
      "commit": "dafed3d00818713b60ec09cfff482487a3405202",
      "tree": "a1cb5a5e865a8dc9aaf55d164bb47ed3fe086138",
      "parents": [
        "9ea45b6106cefad09e1cb0235801ec9ec4f918f1"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Mar 06 09:17:06 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 22:17:21 2017 +0900"
      },
      "message": "ConnectivityManager: release all requests mapping to a callback.\n\nThis patch changes how callback unregistration works in order to be\nconsistent with undocumented use cases currently de-facto supported\nby the API (although in a buggy way):\n  - callback recycling: releasing then reregistering a callback again.\n  - multiple request registrations with the same callback.\n\nThe second use case is not desirable but needs to be taken into account\nfor now for the purpose of correctly releasing NetworkRequests\nregistered in ConnectivityService.\n\nIn order to support request release in both use cases with minimal\namount of complexity for the time being the following changes are done:\n  - request to callback unmapping is done synchronously at callback\n    release time.\n  - all requests associated to a callback are unmapped at callback\n    release time.\n\nThis fixes the following issues:\n  - a callback stops being triggered as soon as it is released.\n    Otherwise when recycling the callback immediately, it is possible\n    the previous request associated with it triggers it, confusing the\n    app.\n  - when a callback is registered multiple times, the requests are not\n    leaked.\n  - when a callback is registered multiple times and then released, the\n    N-1 first registrations do not trigger the callback anymore.\n\nIn the future it would be desirable to enforce the intended 1:1 mapping\nbetween callbacks and requests at registration time.\n\nBug: 35921499, 35955593, 20701525\nTest: - added new tests in ConnectivityManagerTest to test releasing,\n      recycling, and a disabled test for no multiple regristration.\n      - new tests catch regression causing b/35921499, b/35955593.\nChange-Id: Ia0917ac322fc049f76adb4743bc745989fed6d26\n"
    },
    {
      "commit": "27af670d9a0de6e63a42daf52fb522759ebd00e2",
      "tree": "98cdc2ceb5c1669c361ded833dcd274ba4e1a7be",
      "parents": [
        "d4be031c76a0f451b8f47046d0962178f00c5773",
        "46ae660bf2f2508db373a7adcf92aed9e3d52e93"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Apr 14 12:02:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 12:02:08 2017 +0000"
      },
      "message": "Merge \"Implement new splash screen API\" into oc-dev\nam: 46ae660bf2\n\nChange-Id: I2f12289fcf82754a46365d0342997ae7bf59a2f8\n"
    },
    {
      "commit": "46ae660bf2f2508db373a7adcf92aed9e3d52e93",
      "tree": "7f2d7fbf1dda8799f525e25ce074dea62e9a698f",
      "parents": [
        "e52a1bfede79f87a75c498730860796ba74dea83",
        "7d0d10275213f23e2bd200d22822a3b700157688"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 14 11:54:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 14 11:54:47 2017 +0000"
      },
      "message": "Merge \"Implement new splash screen API\" into oc-dev"
    },
    {
      "commit": "29fe0c9930b98c1cc740e6f1fe53af2039b8f5ba",
      "tree": "c7cc1d065f81879d430e47323151d19f1a9d5510",
      "parents": [
        "677999af11450911105e143d2d1e3af0d1911659"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Mon Apr 03 12:17:51 2017 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Apr 14 18:22:10 2017 +0900"
      },
      "message": "Make the NetworkSpecifier a class instead of a string.\n\nBug: 27533960\nBug: 36053921\nBug: 36275276\nTest: connectivity, wifi, telephony unit tests\nChange-Id: Idd9b10a8418c53c8cf386d9ff8252226b076bbf9\nMerged-In: I7535495681da8f168c46d6d95e13925cffecc99b\nMerged-In: I6500639ae839ee9ad5af34d1292d1539c943e2ad\n"
    },
    {
      "commit": "677999af11450911105e143d2d1e3af0d1911659",
      "tree": "11b37be599f96fe3383a2dffb3d515c0296d797d",
      "parents": [
        "9d2f03ec5d288b8e8f188eff736bac10770d4741"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Apr 03 17:46:35 2017 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Apr 14 18:20:59 2017 +0900"
      },
      "message": "Add test coverage for NetworkSpecifiers.\n\nTests various combinations of empty / non-empty NetworkSpecifiers\nand changing specifiers on the fly.\n\nTest: ConnectivityServiceTest passes\nBug: 27533960\nBug: 36053921\nChange-Id: Ibd6b4efc861dc51689e46f3882ba859223411bf0\nMerged-In: Ia7d36096f0e3f0b203d1d838043c03fcd1cea829\nMerged-In: Ia71b72cc10dba6bac7c8fbe1ab3c5f40bc5506ff\n"
    },
    {
      "commit": "ed1e91e4f4089c27fcd665d8a61718fa91eaf4c1",
      "tree": "faed7c58a10da264f6d51122ec07614747943dd7",
      "parents": [
        "4e544771dd0dc617bbf6d78af010702bf637471a",
        "0e8090b10e5922f7ab3ecfdfe9936db234789619"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 04:32:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 04:32:17 2017 +0000"
      },
      "message": "Merge changes Id0d536ff,I4fcd0ad7 into oc-dev\nam: 0e8090b10e\n\nChange-Id: I0b432e9d7aa5654a0aeac1d3d0a09e624bcbc9bc\n"
    },
    {
      "commit": "7d0d10275213f23e2bd200d22822a3b700157688",
      "tree": "13883b498d41cbe978bdee6580da7ffdc62c2fdb",
      "parents": [
        "57af565fb79c006522261fc211b078d2a5efd331"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Feb 23 15:35:51 2017 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Apr 13 19:43:45 2017 -0700"
      },
      "message": "Implement new splash screen API\n\nTest: mmm frameworks/base/tests/ActivityTests, launch\nCustomSplashscreenActivity\nTest: android.server.android.server.cts.SplashscreenTests\n\nBug: 37252694\nChange-Id: Ie2aec4764d958086897296ed0fc3c39c55c4d8aa\nMerged-In: I9a5bc19b8f63312e682e536500411e4ff4639f88\n"
    },
    {
      "commit": "5eb9053c4e8c788b83cfcfd7bfd39f628dd4ca45",
      "tree": "8a7df3645c6829e2f9371e8619f49cc346f271c5",
      "parents": [
        "2a5cfb9738867da634a3bf64ccef881aaefbfce5"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Mar 23 18:38:22 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 01:44:52 2017 +0000"
      },
      "message": "Connectivity metrics: add transports to connect stats\n\nThis patch groups connect() events per netId. It adds netid and\ntransport information to serialized ConnectStatistics events.\n\nTest: updated NetdEventListenerServiceTest\n      updated IpConnectivityMetricsTest\n      $ runtest frameworks-net passes\nBug: 34901696\nChange-Id: Id0d536ff723ded5c26eafe0bb138ba75ba2856c5\nMerged-In: I4769496383943e714a1d350c298e093c2ed57477\n\n(cherry picked from commit dfc2cc5857199345e08f07977b79b20292f964a2)\n"
    },
    {
      "commit": "2a5cfb9738867da634a3bf64ccef881aaefbfce5",
      "tree": "a9d31ae88eb5dfedff90ca5a20c1b77e5d1d6031",
      "parents": [
        "4db137b0599a9dfff8a26cb5c2b6dab71b457a9b"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Wed Mar 22 22:21:44 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 01:41:48 2017 +0000"
      },
      "message": "Connectivity metrics: log DnsEvents in-band\n\nThis patch changes how DnsEvents are logged in IpConnectivityMetrics.\nThe following changes are made:\n - DnsEventBatch are not logged after 100 queries on the same network\n    - this allows to merge DnsEvent and DnsEventBatch into one class\n - DnsEventBatch are not logged after a network disconnect\n    - this allows to remove the NetworkCallback\n - DnsEvent are now logged similarly to ConnectStats when statistics are\n   flushed, in a direct call from IpConnectivityMetrics into\n   NetdEventListenerService, in a direct call from IpConnectivityMetrics\n   into NetdEventListenerService.\n    - this allows to remove the Parcelable implementation of DnsEvent\n - transports information is added to DnsEvent.\n\nTest: - simplified NetdEventListenerServiceTest covering dns logging\n      - updated IpConnectivityEventBuilderTest\n      - updated IpConnectivityMetricsTest\n      - $ runtest frameworks-net passes\n      - manually verified $ adb shell dumpsys connmetrics list proto\nBug: 34901696\nChange-Id: I4fcd0ad7a7b85d587647f471a90c1e53a18fc95a\nMerged-In: Ia4b33fd4212741152662a2adbb0533bd1b4902ee\n\n(cherry picked from commit 0699cf98042a64e41ee076c464eb115a6579be08)\n"
    },
    {
      "commit": "8b3da2ff4a5ac0e9b777a0a5c9799d712bb2be72",
      "tree": "d1614f0433c9fa7b22ca2e56b268378e5627cdd2",
      "parents": [
        "d280bfea23e921f5c760d5d3b3cb9506aba57242"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Mar 21 18:54:11 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 13 18:03:58 2017 +0900"
      },
      "message": "Make ConnectivityServiceTest pass on wifi-only devices.\n\nTest: ConnectivityServiceTest passes on ryu on internal master\nTest: ConnectivityServiceTest passes on bullhead\nBug: 36249702\nChange-Id: If94102c7df0257ea9e69e72b07a685ae3c2c4022\n(cherry picked from commit 42cdf577037770a66d27f831d0f9e26532c3628d)\n"
    },
    {
      "commit": "152c9cf703bb0f4ac7133761f744f8604e4f97fa",
      "tree": "be76128e7c2ebe4918b8732dc2e5c4ecdbd8ece2",
      "parents": [
        "92d7df74552fd32395c2e100ac9c54b43c3c902d",
        "270ab2fa7eda4d0bb20b0e131116b785ed208a3f"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 13 08:44:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 13 08:44:51 2017 +0000"
      },
      "message": "Merge \"Extract SimChangeListener to its own file\" am: 0ef8df6d52 am: 85f5725fb5\nam: 270ab2fa7e\n\nChange-Id: Ic39902fe33258dad0315a82b46f37582ba968085\n"
    },
    {
      "commit": "85f5725fb53ec1af4b31643e4cf4facbfee26d6a",
      "tree": "95322243c4fdabe1158dfc96b70757ec35f379d2",
      "parents": [
        "1303b8b9ca48701ea56c520f35e700622acd60dd",
        "0ef8df6d52adf157ed931ef9d346043d28ecac0a"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 13 08:33:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 13 08:33:12 2017 +0000"
      },
      "message": "Merge \"Extract SimChangeListener to its own file\"\nam: 0ef8df6d52\n\nChange-Id: Ib83aa0acc1cf19c04ed94a198bb8333c7e3a60b8\n"
    },
    {
      "commit": "0ef8df6d52adf157ed931ef9d346043d28ecac0a",
      "tree": "db5f59b14d1b61e31bf02a30545f73bd5ade6ca9",
      "parents": [
        "f854c9034c3a7b4bd41c336db3ee05b88c164209",
        "227648f3368876c1cc249f40c26b32b250fd3cae"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 08:19:05 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 13 08:19:07 2017 +0000"
      },
      "message": "Merge \"Extract SimChangeListener to its own file\""
    },
    {
      "commit": "42f7ca684c066ca07ccc96a72a14154839736b65",
      "tree": "2fc3c3718d9b978a15b7a0d8c2dffb37f2ab91f6",
      "parents": [
        "1737e10334bcc3090421353883c1c2047c3d4a17",
        "997e6b085a926d8f4c5390ffb6c1af7cd09a9e78"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 05:48:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 13 05:48:37 2017 +0000"
      },
      "message": "Merge \"Move some NetworkStats tests to tests/net.\" am: ab3901dc8b am: 67401e25c2\nam: 997e6b085a\n\nChange-Id: I37c1d362d891ec3b09b00df44aaf233adf355077\n"
    },
    {
      "commit": "67401e25c2e52c8ae2ca13794769465e53d39261",
      "tree": "c3bf07d9984590f86b161bd326092fef2fc1959b",
      "parents": [
        "362bef45d16f8dbd096df8305ec1330425417ac1",
        "ab3901dc8b1a8e77b83be362415920b955fdcbae"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 05:29:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 13 05:29:58 2017 +0000"
      },
      "message": "Merge \"Move some NetworkStats tests to tests/net.\"\nam: ab3901dc8b\n\nChange-Id: I68214c14658afbb5c92facb018988d2ed27bc351\n"
    },
    {
      "commit": "ab3901dc8b1a8e77b83be362415920b955fdcbae",
      "tree": "c5c7b6a9319fe72d51509383283f2944816e923c",
      "parents": [
        "d0f476bdaef85ac178c97b76f0589604f11fd109",
        "c86013be936f36c61fa0cdfad95141f6de3c6ef7"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 05:18:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 13 05:18:47 2017 +0000"
      },
      "message": "Merge \"Move some NetworkStats tests to tests/net.\""
    },
    {
      "commit": "c34f0f75200b57ea381f54dc830bb72e8dc2fa1f",
      "tree": "a5106092d2093fbbb2c8a5636f40b73253e5acf5",
      "parents": [
        "a06e779bfe6154e2345fd59bdcf7226af9c073e5",
        "cfd729093f8739ee891846a052a346c8c902ea35"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Apr 12 22:58:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 22:58:42 2017 +0000"
      },
      "message": "Merge changes from topic \u0027network_specifier\u0027 am: d0f476bdae am: 362bef45d1\nam: cfd729093f\n\nChange-Id: I7535495681da8f168c46d6d95e13925cffecc99b\n"
    },
    {
      "commit": "362bef45d16f8dbd096df8305ec1330425417ac1",
      "tree": "88906a456f9b06d6cfad96f5730b7ca25365625b",
      "parents": [
        "d43127865b38d016d07037b5fb3451ff724eaff6",
        "d0f476bdaef85ac178c97b76f0589604f11fd109"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Apr 12 22:43:03 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 22:43:03 2017 +0000"
      },
      "message": "Merge changes from topic \u0027network_specifier\u0027\nam: d0f476bdae\n\nChange-Id: I783b2d06f3a5e8b9cd7940f1f1ef0dd951c734f1\n"
    },
    {
      "commit": "d0f476bdaef85ac178c97b76f0589604f11fd109",
      "tree": "d63b614adbb5b5ea2ef138b4b2ae87b3c05358d5",
      "parents": [
        "a9acf9db97db75457fc37880ca7f14e605ea1f17",
        "39c6014666e778a48212a60216ab89152aafd3ae"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Apr 12 22:27:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 12 22:27:37 2017 +0000"
      },
      "message": "Merge changes from topic \u0027network_specifier\u0027\n\n* changes:\n  [CM] Unhide the NetworkSpecifier as object API\n  Make the NetworkSpecifier a class instead of a string.\n"
    },
    {
      "commit": "c86013be936f36c61fa0cdfad95141f6de3c6ef7",
      "tree": "9937e64aabc108e781468ff5ef9c5594b3094b06",
      "parents": [
        "70fea2df2a1bfc6f4981a6d3f636e26f3cb96490"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 01:18:05 2017 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 02:38:11 2017 +0900"
      },
      "message": "Move some NetworkStats tests to tests/net.\n\nThis groups them together with the rest of the networking unit\ntests. It also speeds up compile/test cycles (\"runtest -x\" of one\nfile goes from 1m15s to 30s).\n\nTest: runtest frameworks-net passes on internal tree\nChange-Id: I53cb0c51355fe4b4b30e451fa09fbbf58da39efd\n"
    }
  ],
  "next": "227648f3368876c1cc249f40c26b32b250fd3cae"
}
