)]}'
{
  "commit": "0d995b7178f936d25b99b0d8c092efd193b2c1a1",
  "tree": "1df6c72f812c722cb56f9b82835ea4096c723beb",
  "parents": [
    "f3ee7e0796bdee9f2a4868417b933712aa7b7d41"
  ],
  "author": {
    "name": "Inderjot Kaur Ratol",
    "email": "inderjot.kaur.ratol@ericsson.com",
    "time": "Mon Dec 11 11:43:43 2017 -0500"
  },
  "committer": {
    "name": "Hector Oswaldo Caballero",
    "email": "hector.caballero@ericsson.com",
    "time": "Mon Jun 11 07:39:37 2018 -0400"
  },
  "message": "Support connection to multiple its-servers\n\nSo far, its-base derived plugins were able to connect only to a single\nserver whose configuration was defined in gerrit_site/etc/gerrit.config.\nIn enterprise environments, it is not unusual to have multiple instances\nof the same ITS serving different clients. In case of its-* plugins, the\nonly way to achieve the integration of different clients with Gerrit was\nto deploy multiple copies of the its plugin with different names.\n\nThis change is an attempt to bring a more flexible way of supporting the\ndescribed use case, i.e., multiple instances of the same ITS. Given the\ninformation about the project name is handled by its-base and not passed\ndirectly to the derivative plugins, a new interface, \u0027ItsFacadeFactory\u0027,\nfacilitates the tunnelling of information to and from its-base.\n\nThe child its-plugins can implement both single or multiple servers as\nper requirements.\n\nIn the first case, child its-plugins need to bind the \u0027ItsFacadeFactory\u0027\ninterface to the \u0027SingleItsServer\u0027 implementation and no further code\nchange is required.\n\nIn the multiple servers case, child its-plugins need to implement the\n\u0027ItsFacade\u0027 interface in such a way that it captures the project name\npassed by its-base to the its-child plugin and the latter will send back\nthe \u0027ItsFacade\u0027 object to its-base. An example of such mechanism is in\nthe its-jira plugin.\n\nChange-Id: I4d3a1710caa0817faf610f191c4d798a9a43d5ff\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4e2f03519cd8b858fdaa9cd9382941167d5fb6c8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/its/ItsFacadeFactory.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "08bfe6271571dfc11f03a65ef0dc1b7246437e6d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/its/SingleItsServer.java"
    },
    {
      "type": "modify",
      "old_id": "d45d0a6c15d5b697f78079514a214ee6adc62cab",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/validation/ItsValidateComment.java",
      "new_id": "f02050b27618ff8580893edfde72c060718da523",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/validation/ItsValidateComment.java"
    },
    {
      "type": "modify",
      "old_id": "10f362a98455bf08ee30af719b2286074335dc6e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/Action.java",
      "new_id": "0f46ce64b95ec6453e79b7cd012b9a5adc1deb07",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/Action.java"
    },
    {
      "type": "modify",
      "old_id": "726efac3dd84d88cc5f0058f4bc1308d7a99b6be",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionExecutor.java",
      "new_id": "26ae4e726d223f5ad5fec9dcd12c63f961dd8a96",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionExecutor.java"
    },
    {
      "type": "modify",
      "old_id": "3f376f2567d6860d071ce7f7069fd074dca35fa7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddComment.java",
      "new_id": "82d170147af30e4cef59ced2957d2ea3054bd900",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddComment.java"
    },
    {
      "type": "modify",
      "old_id": "f1c19620183d524653b0d29e0d63be11b18fe5ff",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddSoyComment.java",
      "new_id": "035a6da9ca754993cbe29dc2cf1d4a92f3aa63b4",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddSoyComment.java"
    },
    {
      "type": "modify",
      "old_id": "95b9c5e31c58db1e4208b6222b6f9df488a1c671",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddStandardComment.java",
      "new_id": "c2b95a632507f726db374d7b1bce21422a303132",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/AddStandardComment.java"
    },
    {
      "type": "modify",
      "old_id": "5df562e100be48aceede60ae41d0bb069fddbdfc",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/LogEvent.java",
      "new_id": "1f12f195eedc1b6fff81355ca426e93daf568dd7",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/its/base/workflow/LogEvent.java"
    },
    {
      "type": "modify",
      "old_id": "14744c42730eccd0a633ae93477e2c98e9d0e90c",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/validation/ItsValidateCommentTest.java",
      "new_id": "d247a7c207af6aa947e67a2b7d20bafdf1b344ff",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/validation/ItsValidateCommentTest.java"
    },
    {
      "type": "modify",
      "old_id": "4f8b4ef84be15036134377d6671c3e372b937e72",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionControllerTest.java",
      "new_id": "8c8a7de14814e344b00acd26dd82506ba8cc2313",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionControllerTest.java"
    },
    {
      "type": "modify",
      "old_id": "be0c33a1c031d727db22aee5671e2be9b5b666e6",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionExecutorTest.java",
      "new_id": "69c9be987fa3ee07705900cac0e45d611ebc8c31",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/ActionExecutorTest.java"
    },
    {
      "type": "modify",
      "old_id": "e11f8f268976464905a9141496630426bb2b2e41",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/AddCommentTest.java",
      "new_id": "149dfca24ca1e9a4ff4ef2d1f1cd33b8767c86b9",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/AddCommentTest.java"
    },
    {
      "type": "modify",
      "old_id": "8b21c1d321414b69f47fe5d3ca8b9e0e3d9d0c3e",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/AddStandardCommentTest.java",
      "new_id": "044e6a16d2b82d27d832ef75e60bcaea0f626858",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/AddStandardCommentTest.java"
    },
    {
      "type": "modify",
      "old_id": "c97c5925f14ec2f1efd16b3410905b45606dbd0c",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/LogEventTest.java",
      "new_id": "0a26db82b91d616ca856815bc5835287fcf3a86c",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/its/base/workflow/LogEventTest.java"
    }
  ]
}
