)]}'
{
  "commit": "37e87c8f6688939d5e583aefa3dbeab358b30732",
  "tree": "7f6ea378bb9525bfcc0798e36e32c29f3664c3a5",
  "parents": [
    "8cc0fc3a366f5bdb2c294ed0e3ad6899b77c3e7d"
  ],
  "author": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Fri Nov 25 12:28:09 2022 +0100"
  },
  "committer": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Wed Dec 21 10:09:05 2022 +0100"
  },
  "message": "Initial implementation of events-nats plugin\n\n- use NATS JetStream [1] to enable persistent streams to avoid loosing\nmessages if e.g. a Gerrit instance is restarted\n- support synchronous and asynchronous publishing\n- use durable push subscription [2] per Gerrit instanceId, in a cluster\nsetup we want messages to be delivered to each Gerrit instance\n\n[1] https://docs.nats.io/nats-concepts/jetstream\n[2] https://docs.nats.io/nats-concepts/jetstream/consumers\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "36693c4607c435f43d4e8eab5e0639829522a7df",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cd69ebd4f20e61ea5f7e301a23fe80f1747d758f",
      "new_mode": 33188,
      "new_path": "BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2e375832bedb945930b4ad9a56406f3ad1d0999f",
      "new_mode": 33188,
      "new_path": "Jenkinsfile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "11069edd79019f7dafbe3138841cf289209270dd",
      "new_mode": 33188,
      "new_path": "LICENSE"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dd570dd4363594657084b141c7210fce0f4641b9",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e52d5bc5a434d6c50d4a1bff1fe34ca18d4122a6",
      "new_mode": 33188,
      "new_path": "external_plugin_deps.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b05ecddaeef4177b78cf194eadfcafc7bade76cc",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/Configuration.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2e0fbc01d1a1592c0b9f1533c97d1a0431fc111f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/InitConfig.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2d7dd959c2f926a832676fa1509340158f02c9ea",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/JetStreamManagementProvider.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bc2329fe4267547d4bb89ea5c105f98c494630d6",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/Module.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "39b6400febb8e15dbe839608c36d632e00eb2b55",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsBrokerApi.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7c286e08d30bd138d50a2b13278fc7171654109c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsBrokerLifeCycleManager.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e0e01e10833d469d2d9b1f32476288d8f1f0184a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsClientProvider.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9d45d67cac80887dbfa3d0b23ed14482f28c8689",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsConsumer.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "351ba1f819fe3cd675c8f4588bb2d74304777fb5",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsJetStreamProvider.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "607f1037561dffd5db68789ee9b26b67a5bad2ee",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/NatsPublisher.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "677baf42a9178bc4f2298bb822cf446778991ad3",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/PublishCallbackExecutor.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7f74d269e273ab0f7a4a7c19e3c3ab0b95cd3abe",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/nats/PublishCallbackExecutorProvider.java"
    }
  ]
}
