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();
}