Use VersionedConfigFile from core Refactor to remove the boilerplate for reading/writing the webhooks config file. Change-Id: I339c403876910f1c1d577562f2efc251c6c61019 Release-Notes: skip
diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/WebhooksConfig.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/WebhooksConfig.java index e46b308..c86e727 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/WebhooksConfig.java +++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/WebhooksConfig.java
@@ -25,44 +25,16 @@ import static com.googlesource.gerrit.plugins.webhooks.RemoteConfig.SOCKET_TIMEOUT; import static com.googlesource.gerrit.plugins.webhooks.RemoteConfig.SSL_VERIFY; -import com.google.common.base.Strings; import com.google.gerrit.entities.RefNames; -import com.google.gerrit.server.git.meta.VersionedMetaData; +import com.google.gerrit.server.git.meta.VersionedConfigFile; import com.google.inject.Inject; import com.googlesource.gerrit.plugins.webhooks.rest.UpsertRemote; -import java.io.IOException; import java.util.List; -import org.eclipse.jgit.errors.ConfigInvalidException; -import org.eclipse.jgit.lib.CommitBuilder; -import org.eclipse.jgit.lib.Config; -public class WebhooksConfig extends VersionedMetaData { - - private final String cfgFileName; - private Config cfg; - +public class WebhooksConfig extends VersionedConfigFile { @Inject WebhooksConfig(@WebhooksConfigFileName String cfgFileName) { - this.cfgFileName = cfgFileName; - } - - @Override - protected String getRefName() { - return RefNames.REFS_CONFIG; - } - - @Override - protected void onLoad() throws IOException, ConfigInvalidException { - cfg = readConfig(cfgFileName); - } - - @Override - protected boolean onSave(CommitBuilder commit) throws IOException, ConfigInvalidException { - if (Strings.isNullOrEmpty(commit.getMessage())) { - commit.setMessage("Updated webhooks\n"); - } - saveConfig(cfgFileName, cfg); - return true; + super(RefNames.REFS_CONFIG, cfgFileName, "Updated webhooks\n"); } public void upsertRemote(String name, UpsertRemote.Input in) {