)]}'
{
  "commit": "e0a6ca64fac5bd4f10139321604031816e90adb4",
  "tree": "af84954409f063e07e3845c5b8a8fe703106da7a",
  "parents": [
    "ec7100d0114d50f12c4ad95eaeac61e93a6d5a96"
  ],
  "author": {
    "name": "Mike Lockwood",
    "email": "lockwood@google.com",
    "time": "Thu Jun 04 13:43:56 2015 -0700"
  },
  "committer": {
    "name": "Mike Lockwood",
    "email": "lockwood@google.com",
    "time": "Thu Jun 04 19:16:23 2015 -0700"
  },
  "message": "MidiManager: proxy all requests to open devices through MidiService\n\nPreviously when a MidiManager client opened a virtual or Bluetooth device,\nthe client bound directly to the virtual device\u0027s MidiDeviceService\nor BluetoothMidiDevice\u0027s IMidiDeviceServer for the given BluetoothDevice.\nOnly USB devices were opened in MidiService.\n\nNow opening any type of MIDI device is done via IMidiManager.openDevice() or\nIMidiManager.openBluetoothDevice().  MidiService tracks all connnections between\nclients and devices.\n\nServices that implement virtual devices must now require android.permission.BIND_MIDI_DEVICE_SERVICE\nso only MidiService can bind to these services.\n\nBug: 21044677\n\nChange-Id: I7172f7b1e0cbfe4a2a87dff376c32dc9b41aa563\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d6dac533605a91941d53a04db244058a2af21128",
      "old_mode": 33188,
      "old_path": "Android.mk",
      "new_id": "047254fe76c50e636986d183fc6d1c791782852e",
      "new_mode": 33188,
      "new_path": "Android.mk"
    },
    {
      "type": "modify",
      "old_id": "31f4cffeaf24521a3dfb96cffc094522c4a99624",
      "old_mode": 33188,
      "old_path": "api/current.txt",
      "new_id": "4de7ed11805cba022885a035dc767b180aacd824",
      "new_mode": 33188,
      "new_path": "api/current.txt"
    },
    {
      "type": "modify",
      "old_id": "187edc086d7fc2e78f07e8e011111b323f4aab8c",
      "old_mode": 33188,
      "old_path": "api/system-current.txt",
      "new_id": "38d4c08593228b53ae2c60e0f52d2d8a01e67b0f",
      "new_mode": 33188,
      "new_path": "api/system-current.txt"
    },
    {
      "type": "modify",
      "old_id": "0d009088eab214c2026afe8a653d4ea63f257e9f",
      "old_mode": 33188,
      "old_path": "core/java/android/app/SystemServiceRegistry.java",
      "new_id": "10e8a535014ba154125bd6d16f28ae693689c109",
      "new_mode": 33188,
      "new_path": "core/java/android/app/SystemServiceRegistry.java"
    },
    {
      "type": "modify",
      "old_id": "ba91bce2ce29d5b5cc13aeacc3468c285e9884bd",
      "old_mode": 33188,
      "old_path": "core/res/AndroidManifest.xml",
      "new_id": "3bced5a315e7b4efb5434d3d69bd68ccaa9d3b57",
      "new_mode": 33188,
      "new_path": "core/res/AndroidManifest.xml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6e3dbbf113a7cb396a3630492691f62a2aa4f452",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/IMidiDeviceOpenCallback.aidl"
    },
    {
      "type": "modify",
      "old_id": "96d12fdedf05fec76b14ecca3de5f52608a5dabc",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/IMidiDeviceServer.aidl",
      "new_id": "e30796d0629b66b0a1b5414527f014a418ea9843",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/IMidiDeviceServer.aidl"
    },
    {
      "type": "modify",
      "old_id": "fcd4aff09116ebcc73be04706ad6dc6d898b298b",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/IMidiManager.aidl",
      "new_id": "d3c8e0adb3ced213223c4acfd0761a4ea3500276",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/IMidiManager.aidl"
    },
    {
      "type": "modify",
      "old_id": "6526adc5d20b5fbec8958297e4cf6c2e0a840d19",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/MidiDevice.java",
      "new_id": "7998a924c1ac5f9d4e225faf8705f918a5a22980",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/MidiDevice.java"
    },
    {
      "type": "modify",
      "old_id": "a316a44d4f74d165fcdf35be89558e2df78103d5",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/MidiDeviceServer.java",
      "new_id": "1b56e1c7f6f3ee52108c5ba5dde9ac0c7e01a959",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/MidiDeviceServer.java"
    },
    {
      "type": "modify",
      "old_id": "ce12a4f53339e8dad110dd1e3a336627b3b1105e",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/MidiDeviceService.java",
      "new_id": "d897ad2cc6c021c07da46ee4ccd9814988851a49",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/MidiDeviceService.java"
    },
    {
      "type": "modify",
      "old_id": "d19cf3642e60414655d21c855145fe38df22306c",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/MidiManager.java",
      "new_id": "0beb9a48285783285ffd0e5a73a09fea7062e59a",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/MidiManager.java"
    },
    {
      "type": "modify",
      "old_id": "bd589a92a04577112c588d73640ae88039b2236f",
      "old_mode": 33188,
      "old_path": "media/java/android/media/midi/package.html",
      "new_id": "8b2bd1666a06868ff72be821e8724d0847a82715",
      "new_mode": 33188,
      "new_path": "media/java/android/media/midi/package.html"
    },
    {
      "type": "modify",
      "old_id": "15aa581074abe51422abfe460702a395612120dd",
      "old_mode": 33188,
      "old_path": "media/packages/BluetoothMidiService/AndroidManifest.xml",
      "new_id": "b0b389a59aa391481b92e52e0db46bb10da249c9",
      "new_mode": 33188,
      "new_path": "media/packages/BluetoothMidiService/AndroidManifest.xml"
    },
    {
      "type": "modify",
      "old_id": "60c6570f6d21d4016e0b3c41c13cbdf8627dc72a",
      "old_mode": 33188,
      "old_path": "media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothMidiDevice.java",
      "new_id": "e6d59e4fb14175f389ae75fdddfaebefefd3ec36",
      "new_mode": 33188,
      "new_path": "media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothMidiDevice.java"
    },
    {
      "type": "modify",
      "old_id": "370f1252cca3cc07ef16335f83cb30543795ea3d",
      "old_mode": 33188,
      "old_path": "services/midi/java/com/android/server/midi/MidiService.java",
      "new_id": "d1bbbfc8761e4934009c76e5c76f280e46658469",
      "new_mode": 33188,
      "new_path": "services/midi/java/com/android/server/midi/MidiService.java"
    }
  ]
}
