)]}'
{
  "commit": "94660a06c968540f847512b78c3399e023a5537b",
  "tree": "29720b4ae266b12e240bb5f4fdece433b8c3974d",
  "parents": [
    "57e270f5c89efa1f49913eced39c47d38e8f881b"
  ],
  "author": {
    "name": "Daniele Moro",
    "email": "daniele@opennetworking.org",
    "time": "Mon Dec 02 12:02:07 2019 -0800"
  },
  "committer": {
    "name": "Daniele Moro",
    "email": "daniele@opennetworking.org",
    "time": "Mon Dec 16 18:22:54 2019 -0800"
  },
  "message": "First implementation of BNG application\n\nThe application offers network level APIs for the BNG data plane.\n\nAn attachment (BngAttachment) at network level is identified by an arbitrary string.\nThe exposed APIs are key-value like APIs.\n\nChange-Id: If0e484f487ea16dd8c7dd99642f75686e1dbc29a\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "54e28c7322085ace8e53253e3e1ff545394a3545",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8fdf902f7fd2184d60a62e2c7fdea1eed116c076",
      "new_mode": 33188,
      "new_path": ".gitreview"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e65e80e10268f0d8c0229e9763d1e243145647a6",
      "new_mode": 33188,
      "new_path": "LICENSE.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6ebbe6740e59d78f37b7d4ad4c5af593d33b9c6e",
      "new_mode": 33188,
      "new_path": "api/pom.xml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3fce9803282bbc31609aa6f6db1a1535a440af89",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngAttachment.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c9936ae4be6a2223babe5da40f72182222daa4f1",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngService.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2622b41cc8c17eddc4997ca40dfe0d2a66395c18",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngStatsEvent.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "623242891bbb7dba08a7e8a40a4a5bfd2e5d6b02",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngStatsEventListener.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "05ae43a3b44cd98070d2fbb728a2e475fc20e4e3",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngStatsEventSubject.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "45ab29b040c0c03574ef28b91caa48712270600a",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/BngStatsService.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7d6c8eda916f206d97fa47eb7ca87ca6f4b47ad2",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/PppoeBngAttachment.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4338da474107fc4dbcfa98602585e30a64f87752",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/PppoeBngControlHandler.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7bccabf9120db20dfbb1686362e5dc151810e827",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/PppoeEvent.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "40d5ab17e44787b9dc57052778be70eafbe548ed",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/PppoeEventListener.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "734ac37669983d3f52af3bf96ed2705c7e98ef84",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/PppoeEventSubject.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "170eb9cf4ed1fe47c04b1ca4d6a8d65c04e2c1ea",
      "new_mode": 33188,
      "new_path": "api/src/main/java/org/opencord/bng/package-info.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9bf4f15a9a415f25ab9164590ea2e21cdfc8ee50",
      "new_mode": 33188,
      "new_path": "app/pom.xml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4cdd5583749f20d63f3650e23082ec8a86856d1b",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/BngManager.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "827b5522be9e8bb7276341a7aedc4fd34e58b31e",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/BngStatsManager.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c4cbe64d972c1c94717a33866724db4efdbfb2b0",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/BngUtils.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "962d1e103399365ad165c0fb7397cb9c19dd7ef3",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/OsgiPropertyConstants.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e01db20d3e0f9d87a83ca81310816cc4d4ef8334",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/PppoeHandlerRelay.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "eb4ecd6a3359683433e07777a93969caabea4711",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/SimpleAttachmentEventHandler.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bea0c1fd20b07ebb4ee0b9b68f6dcf54f2bf6e4a",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/AddAttachment.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4a6cdff9e016f7f9a1c56bd15647ad45df3cda54",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/AttachmentKeyCompleter.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "346f5546261c0c3e610290461b8a13d3df0b37bc",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/AttachmentStats.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "52203d46d78c123671f5a1d918f2ff668579e196",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/Attachments.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3776117bc896b2154e009019fe89f17ee6e34afc",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/BngCliUtils.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a552fc4a2f7a6d0f64d699babf54c9dcb86e3182",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/ControlPacketsStats.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d209c760ac2af2aba80bd0af2289f4b94002f225",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/EnableAttachment.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6f87a3d69115a77063e684f157f5a53de4cb2428",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/OnuSerialCompleter.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "00f052737261a05a98e0a3ddc2432d0f3318d5b5",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/RemoveAttachment.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "68bbf804531237acd10b3c2f9a4e6e20927f7ffd",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/cli/package-info.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "472343ad604ab8d58de4cfe89897afe2f4f07b70",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/config/BngConfig.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c094f7f83df6c817a016d2e2b13cfa77340ae118",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/config/PppoeRelayConfig.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c33fbf17cb3024b4a742975f31b7a8865c592ebe",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/config/netcfg.json"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b9f42c7f3f600bd5154182827552bad5f8ed915c",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/config/package-info.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "170eb9cf4ed1fe47c04b1ca4d6a8d65c04e2c1ea",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/package-info.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "464bf2d7c9ea8f31f7a8cce7207ad22b330f5b7e",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/GenericPpp.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d55000519415714dbee7d816f93ced4fbf768b57",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/Ipcp.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3785d510e5ee01ba6fa3d5feef363ba1e3ec9749",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/Ppp.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b3f102dae4224f5b97a5671dd50985493203e2e4",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/PppProtocolType.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "366ef7befbcc418660e21e7713f340a77733e24f",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/PppTlv.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "01945c8ec70f89f8018962be020d43d8895d9727",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/Pppoe.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d315e7f086831425d73f697614c4ae1c054fb5ce",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/PppoeTlvTag.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "accf4a2c1d6f1eb2ccb691f76cc0eceeea665d11",
      "new_mode": 33188,
      "new_path": "app/src/main/java/org/opencord/bng/packets/package-info.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "42d0193ef11a7c0804886b4cf42a1429cec428cc",
      "new_mode": 33188,
      "new_path": "app/src/test/java/org/opencord/bng/packets/GenericPppTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "eeaa341613362a621e5fb9d5d8f83c3c4f7e051f",
      "new_mode": 33188,
      "new_path": "app/src/test/java/org/opencord/bng/packets/IpcpTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "aa1e24a0e9da0c6ade6d69d4837115475d8cddb9",
      "new_mode": 33188,
      "new_path": "app/src/test/java/org/opencord/bng/packets/PppoeTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f5e604f8fef289c0c4839c40b561a528585c3902",
      "new_mode": 33188,
      "new_path": "pom.xml"
    }
  ]
}
