public Response apply()

in src/main/java/com/googlesource/gerrit/plugins/verifystatus/server/PutConfig.java [58:113]


  public Response<?> apply(ConfigResource rsrc, Input input)
      throws IOException, ConfigInvalidException, UnprocessableEntityException {
    if (input == null) {
      input = new Input();
    }
    FileBasedConfig cfg = new FileBasedConfig(sitePaths.gerrit_config.toFile(), FS.DETECTED);
    cfg.load();

    if (input.showJobsPanel != null) {
      cfg.setBoolean("plugin", pluginName, "showJobsPanel", input.showJobsPanel);
    } else {
      cfg.unset("plugin", pluginName, "showJobsPanel");
    }
    if (input.showJobsDropDownPanel != null) {
      cfg.setBoolean("plugin", pluginName, "showJobsDropDownPanel", input.showJobsDropDownPanel);
    } else {
      cfg.unset("plugin", pluginName, "showJobsDropDownPanel");
    }
    if (input.showJobsSummaryPanel != null) {
      cfg.setBoolean("plugin", pluginName, "showJobsSummaryPanel", input.showJobsSummaryPanel);
    } else {
      cfg.unset("plugin", pluginName, "showJobsSummaryPanel");
    }
    if (input.showJobsBelowRelatedInfoBlock != null) {
      cfg.setBoolean(
          "plugin",
          pluginName,
          "showJobsBelowRelatedInfoBlock",
          input.showJobsBelowRelatedInfoBlock);
    } else {
      cfg.unset("plugin", pluginName, "showJobsBelowRelatedInfoBlock");
    }
    if (input.enableInProgressStatus != null) {
      cfg.setBoolean("plugin", pluginName, "enableInProgressStatus", input.enableInProgressStatus);
    } else {
      cfg.unset("plugin", pluginName, "enableInProgressStatus");
    }
    if (input.sortJobsPanel != null) {
      cfg.setEnum("plugin", pluginName, "sortJobsPanel", JobsSorting.valueOf(input.sortJobsPanel));
    } else {
      cfg.unset("plugin", pluginName, "sortJobsPanel");
    }
    if (input.sortJobsDropDownPanel != null) {
      cfg.setEnum(
          "plugin",
          pluginName,
          "sortJobsDropDownPanel",
          JobsSorting.valueOf(input.sortJobsDropDownPanel));
    } else {
      cfg.unset("plugin", pluginName, "sortJobsDropDownPanel");
    }

    cfg.save();
    cfgFactory.getFromGerritConfig(pluginName, true);
    return Response.none();
  }