)]}'
{
  "commit": "79674d9e00f8458a2f4f6d3a91bd032579c3f25c",
  "tree": "7827534424dbf5b4e89b952391795513626460f9",
  "parents": [
    "ae4ee2acf4a72c508d079ccd9666a64e8bcf6dae"
  ],
  "author": {
    "name": "Christoforos Miliotis",
    "email": "christoforos.miliotis.dev@gmail.com",
    "time": "Thu Apr 27 17:57:35 2023 +0100"
  },
  "committer": {
    "name": "Christoforos Miliotis",
    "email": "christoforos.miliotis.dev@gmail.com",
    "time": "Wed May 03 14:43:12 2023 +0100"
  },
  "message": "Extract the repository deletion logic so it becomes reusable\n\nThe code that deletes a repository is generally quite robust and\nas such it will be very useful for the pull-replication plugin.\nHowever, the logic is heavily baked into the plugin itself;\nit requires archiving settings read from the plugin config, and\ndeletion listeners to notify downstream systems - both are not\nrelevant to the pull-replication plugin (or anything else that\nmight want to just delete a repo).\n\nExtract the repo deletion logic into a `RepositoryDelete` class,\nfree from any nuances of the delete-project plugin itself, so it\ncan be reused. The `FilesystemDeleteHandler` is now essentially\ndelegating everything into that class. I\u0027ve also taken the\nliberty to add a couple of missing tests for the notifying of\ndownstream systems through the deletion listeners.\n\nBug: Issue 16730\nChange-Id: Ib28dbed344ef8a419cf7c318d0e87aadd7dadd5e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "053b2fcfccf57c824b7d0e77c11f051d4f4feb90",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java",
      "new_id": "80d4eeaf1a8c816a37890987732276d038c2b46c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandler.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "661ac7c26e0f00e915d163a75800a3fa6e3215d0",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/deleteproject/fs/RepositoryDelete.java"
    },
    {
      "type": "modify",
      "old_id": "9cffd141cb216588c92301c85ee0947e52e0a406",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandlerTest.java",
      "new_id": "317de9b0164453e3e57aa82feb09d23540ab880b",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/deleteproject/fs/FilesystemDeleteHandlerTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "00799d756a12d427afb919f5c00467f5ac2e5728",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/deleteproject/fs/RepositoryDeleteTest.java"
    }
  ]
}
