summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDariusz Luksza <dariusz.luksza@gmail.com>2023-12-07 17:39:34 +0000
committerDariusz Luksza <dariusz.luksza@gmail.com>2024-01-05 14:03:20 +0000
commit07407ad4d0517946d0e6d4a8508a287869c9d4bf (patch)
tree159716d0e809db1b1ac6ad719f34693f6d9c9fdd
parentcf1908ab78dfc00fdf11bdd9a680832569c67055 (diff)
Convert `FanoutReplicationConfig` to `FanoutConfigResource`
With the introduction of `ConfigResource` we can simplify how the "fanout" configuration works and reduce the code complexity. The "fanout" replication configuration moves the `remote` sections from the `replication.config` file into the `replication/` directory with one-remote-per-file approach. What this effectively means, is the final config object provided by the "fanout" approach, is built not from a single file, but potentially from multiple files. This is one of the purposes of `ConfigResource`, to get the configuration object regardless of how or where it's stored. That's why, converting the `FanoutReplicationConfig` into `FanoutConfigResource` makes sense. It also simplifies the code, as `@MainReplicationConfig` is no longer needed. Change-Id: Ic6a5c5b8ab502a5e53d52a146d73b219563ee759
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecorator.java2
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnable.java4
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/Destination.java2
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/DestinationsCollection.java2
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResource.java (renamed from src/main/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfig.java)82
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/FileConfigResource.java2
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/FileReplicationConfig.java (renamed from src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfig.java)10
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/MainReplicationConfig.java23
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigModule.java16
-rw-r--r--src/test/java/com/googlesource/gerrit/plugins/replication/AbstractConfigTest.java10
-rw-r--r--src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecoratorTest.java24
-rw-r--r--src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnableTest.java6
-rw-r--r--src/test/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResourceTest.java (renamed from src/test/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfigTest.java)39
-rw-r--r--src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigImplTest.java (renamed from src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfigTest.java)4
14 files changed, 77 insertions, 149 deletions
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecorator.java b/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecorator.java
index a0d9624..b6532d9 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecorator.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecorator.java
@@ -42,7 +42,7 @@ public class AutoReloadConfigDecorator implements ReplicationConfig, LifecycleLi
public AutoReloadConfigDecorator(
@PluginName String pluginName,
WorkQueue workQueue,
- @MainReplicationConfig ReplicationConfig replicationConfig,
+ FileReplicationConfig replicationConfig,
AutoReloadRunnable reloadRunner,
EventBus eventBus) {
this.currentConfig = replicationConfig;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnable.java b/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnable.java
index 71f7c67..9ed43fe 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnable.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnable.java
@@ -27,14 +27,14 @@ public class AutoReloadRunnable implements Runnable {
private final Provider<ObservableQueue> queueObserverProvider;
private final ConfigParser configParser;
private ReplicationConfig loadedConfig;
- private Provider<ReplicationConfig> replicationConfigProvider;
+ private Provider<FileReplicationConfig> replicationConfigProvider;
private String loadedConfigVersion;
private String lastFailedConfigVersion;
@Inject
public AutoReloadRunnable(
ConfigParser configParser,
- @MainReplicationConfig Provider<ReplicationConfig> replicationConfigProvider,
+ Provider<FileReplicationConfig> replicationConfigProvider,
EventBus eventBus,
Provider<ObservableQueue> queueObserverProvider) {
this.replicationConfigProvider = replicationConfigProvider;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/Destination.java b/src/main/java/com/googlesource/gerrit/plugins/replication/Destination.java
index 04af9db..9c70aa6 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/Destination.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/Destination.java
@@ -15,7 +15,7 @@
package com.googlesource.gerrit.plugins.replication;
import static com.google.gerrit.server.project.ProjectCache.noSuchProject;
-import static com.googlesource.gerrit.plugins.replication.ReplicationFileBasedConfig.replaceName;
+import static com.googlesource.gerrit.plugins.replication.FileReplicationConfig.replaceName;
import static org.eclipse.jgit.transport.RemoteRefUpdate.Status.NON_EXISTING;
import static org.eclipse.jgit.transport.RemoteRefUpdate.Status.REJECTED_OTHER_REASON;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/DestinationsCollection.java b/src/main/java/com/googlesource/gerrit/plugins/replication/DestinationsCollection.java
index 79a0683..1d471fe 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/DestinationsCollection.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/DestinationsCollection.java
@@ -17,7 +17,7 @@ package com.googlesource.gerrit.plugins.replication;
import static com.googlesource.gerrit.plugins.replication.AdminApiFactory.isGerrit;
import static com.googlesource.gerrit.plugins.replication.AdminApiFactory.isGerritHttp;
import static com.googlesource.gerrit.plugins.replication.AdminApiFactory.isSSH;
-import static com.googlesource.gerrit.plugins.replication.ReplicationFileBasedConfig.replaceName;
+import static com.googlesource.gerrit.plugins.replication.FileReplicationConfig.replaceName;
import static com.googlesource.gerrit.plugins.replication.ReplicationQueue.repLog;
import static java.util.stream.Collectors.toList;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfig.java b/src/main/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResource.java
index 80d8b9d..4220ddb 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResource.java
@@ -17,12 +17,10 @@ package com.googlesource.gerrit.plugins.replication;
import static com.google.common.io.Files.getNameWithoutExtension;
import static java.nio.charset.StandardCharsets.UTF_8;
-import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Lists;
import com.google.common.flogger.FluentLogger;
import com.google.common.hash.Hasher;
import com.google.common.hash.Hashing;
-import com.google.gerrit.extensions.annotations.PluginData;
import com.google.gerrit.server.config.SitePaths;
import com.google.inject.Inject;
import java.io.IOException;
@@ -37,38 +35,26 @@ import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.util.FS;
-public class FanoutReplicationConfig implements ReplicationConfig {
+public class FanoutConfigResource extends FileConfigResource {
+ public static String CONFIG_DIR = "replication";
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
- private final ReplicationFileBasedConfig replicationConfig;
- private final Config config;
private final Path remoteConfigsDirPath;
- @VisibleForTesting
- public FanoutReplicationConfig(SitePaths sitePaths, @PluginData Path pluginDataDir)
- throws IOException, ConfigInvalidException {
- this(
- new ReplicationFileBasedConfig(new FileConfigResource(sitePaths), sitePaths, pluginDataDir),
- sitePaths);
- }
-
@Inject
- FanoutReplicationConfig(ReplicationFileBasedConfig replicationConfig, SitePaths site)
- throws IOException, ConfigInvalidException {
-
- remoteConfigsDirPath = site.etc_dir.resolve("replication");
- this.replicationConfig = replicationConfig;
- config = replicationConfig.getConfig();
+ FanoutConfigResource(SitePaths site) throws IOException, ConfigInvalidException {
+ super(site);
+ this.remoteConfigsDirPath = site.etc_dir.resolve(CONFIG_DIR);
removeRemotes(config);
try (Stream<Path> files = Files.list(remoteConfigsDirPath)) {
files
.filter(Files::isRegularFile)
- .filter(FanoutReplicationConfig::isConfig)
- .map(FanoutReplicationConfig::loadConfig)
+ .filter(FanoutConfigResource::isConfig)
+ .map(FanoutConfigResource::loadConfig)
.filter(Optional::isPresent)
.map(Optional::get)
- .filter(FanoutReplicationConfig::isValid)
+ .filter(FanoutConfigResource::isValid)
.forEach(cfg -> addRemoteConfig(cfg, config));
} catch (IllegalStateException e) {
throw new ConfigInvalidException(e.getMessage());
@@ -131,53 +117,14 @@ public class FanoutReplicationConfig implements ReplicationConfig {
}
@Override
- public boolean isReplicateAllOnPluginStart() {
- return replicationConfig.isReplicateAllOnPluginStart();
- }
-
- @Override
- public boolean isDefaultForceUpdate() {
- return replicationConfig.isDefaultForceUpdate();
- }
-
- @Override
- public int getMaxRefsToLog() {
- return replicationConfig.getMaxRefsToLog();
- }
-
- @Override
- public int getMaxRefsToShow() {
- return replicationConfig.getMaxRefsToShow();
- }
-
- @Override
- public Path getEventsDirectory() {
- return replicationConfig.getEventsDirectory();
- }
-
- @Override
- public int getSshConnectionTimeout() {
- return replicationConfig.getSshConnectionTimeout();
- }
-
- @Override
- public int getSshCommandTimeout() {
- return replicationConfig.getSshCommandTimeout();
- }
-
- @Override
- public int getDistributionInterval() {
- return replicationConfig.getDistributionInterval();
- }
-
- @Override
public String getVersion() {
+ String parentVersion = super.getVersion();
Hasher hasher = Hashing.murmur3_128().newHasher();
- hasher.putString(replicationConfig.getVersion(), UTF_8);
+ hasher.putString(parentVersion, UTF_8);
try (Stream<Path> files = Files.list(remoteConfigsDirPath)) {
files
.filter(Files::isRegularFile)
- .filter(FanoutReplicationConfig::isConfig)
+ .filter(FanoutConfigResource::isConfig)
.sorted()
.map(Path::toFile)
.map(FileSnapshot::save)
@@ -190,12 +137,7 @@ public class FanoutReplicationConfig implements ReplicationConfig {
logger.atSevere().withCause(e).log(
"Cannot list remote configuration files from %s. Returning replication.config file version",
remoteConfigsDirPath);
- return replicationConfig.getVersion();
+ return parentVersion;
}
}
-
- @Override
- public Config getConfig() {
- return config;
- }
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/FileConfigResource.java b/src/main/java/com/googlesource/gerrit/plugins/replication/FileConfigResource.java
index aad4666..d220b24 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/FileConfigResource.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/FileConfigResource.java
@@ -27,7 +27,7 @@ import org.eclipse.jgit.util.FS;
public class FileConfigResource implements ConfigResource {
public static final String CONFIG_NAME = "replication.config";
- private final FileBasedConfig config;
+ protected final FileBasedConfig config;
@Inject
FileConfigResource(SitePaths site) {
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfig.java b/src/main/java/com/googlesource/gerrit/plugins/replication/FileReplicationConfig.java
index 9f45702..b34ea54 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/FileReplicationConfig.java
@@ -22,7 +22,7 @@ import com.google.inject.Inject;
import java.nio.file.Path;
import org.eclipse.jgit.lib.Config;
-public class ReplicationFileBasedConfig implements ReplicationConfig {
+public class FileReplicationConfig implements ReplicationConfig {
private static final int DEFAULT_SSH_CONNECTION_TIMEOUT_MS = 2 * 60 * 1000; // 2 minutes
private final SitePaths site;
@@ -35,14 +35,16 @@ public class ReplicationFileBasedConfig implements ReplicationConfig {
private final ConfigResource configResource;
private final Path pluginDataDir;
+ // TODO: remove in follow-up change, as this was added to reduce the diff size
+ // for change Ic6a5c5b8ab5
@VisibleForTesting
- public ReplicationFileBasedConfig(SitePaths paths, @PluginData Path pluginDataDir) {
+ public FileReplicationConfig(SitePaths paths, @PluginData Path pluginDataDir) {
this(new FileConfigResource(paths), paths, pluginDataDir);
}
@Inject
- public ReplicationFileBasedConfig(
- FileConfigResource configResource, SitePaths site, @PluginData Path pluginDataDir) {
+ public FileReplicationConfig(
+ ConfigResource configResource, SitePaths site, @PluginData Path pluginDataDir) {
this.site = site;
this.configResource = configResource;
Config config = configResource.getConfig();
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/MainReplicationConfig.java b/src/main/java/com/googlesource/gerrit/plugins/replication/MainReplicationConfig.java
deleted file mode 100644
index e8d95ec..0000000
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/MainReplicationConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright (C) 2020 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.googlesource.gerrit.plugins.replication;
-
-import com.google.inject.BindingAnnotation;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-@BindingAnnotation
-@Retention(RetentionPolicy.RUNTIME)
-public @interface MainReplicationConfig {}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigModule.java b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigModule.java
index 2cc3982..220ec50 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigModule.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigModule.java
@@ -14,6 +14,7 @@
package com.googlesource.gerrit.plugins.replication;
+import static com.googlesource.gerrit.plugins.replication.FanoutConfigResource.CONFIG_DIR;
import static com.googlesource.gerrit.plugins.replication.FileConfigResource.CONFIG_NAME;
import com.google.gerrit.extensions.events.LifecycleListener;
@@ -44,16 +45,15 @@ public class ReplicationConfigModule extends AbstractModule {
@Override
protected void configure() {
+ bind(ConfigResource.class).to(getConfigResourceClass());
+
if (getReplicationConfig().getBoolean("gerrit", "autoReload", false)) {
- bind(ReplicationConfig.class)
- .annotatedWith(MainReplicationConfig.class)
- .to(getReplicationConfigClass());
bind(ReplicationConfig.class).to(AutoReloadConfigDecorator.class).in(Scopes.SINGLETON);
bind(LifecycleListener.class)
.annotatedWith(UniqueAnnotations.create())
.to(AutoReloadConfigDecorator.class);
} else {
- bind(ReplicationConfig.class).to(getReplicationConfigClass()).in(Scopes.SINGLETON);
+ bind(ReplicationConfig.class).to(FileReplicationConfig.class).in(Scopes.SINGLETON);
}
}
@@ -68,10 +68,10 @@ public class ReplicationConfigModule extends AbstractModule {
return config;
}
- private Class<? extends ReplicationConfig> getReplicationConfigClass() {
- if (Files.exists(site.etc_dir.resolve("replication"))) {
- return FanoutReplicationConfig.class;
+ private Class<? extends ConfigResource> getConfigResourceClass() {
+ if (Files.exists(site.etc_dir.resolve(CONFIG_DIR))) {
+ return FanoutConfigResource.class;
}
- return ReplicationFileBasedConfig.class;
+ return FileConfigResource.class;
}
}
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/AbstractConfigTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/AbstractConfigTest.java
index 2b6a8c4..4c43cb0 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/AbstractConfigTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/AbstractConfigTest.java
@@ -128,6 +128,12 @@ public abstract class AbstractConfigTest {
assertThatIsDestination(matchingDestinations.get(0), remoteName, remoteUrls);
}
+ protected DestinationsCollection newDestinationsCollections(ConfigResource configResource)
+ throws ConfigInvalidException {
+ return newDestinationsCollections(
+ new FileReplicationConfig(configResource, sitePaths, pluginDataPath));
+ }
+
protected DestinationsCollection newDestinationsCollections(ReplicationConfig replicationConfig)
throws ConfigInvalidException {
return new DestinationsCollection(
@@ -138,7 +144,7 @@ public abstract class AbstractConfigTest {
eventBus);
}
- protected ReplicationConfig newReplicationFileBasedConfig() {
- return new ReplicationFileBasedConfig(sitePaths, pluginDataPath);
+ protected FileReplicationConfig newReplicationFileBasedConfig() {
+ return new FileReplicationConfig(sitePaths, pluginDataPath);
}
}
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecoratorTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecoratorTest.java
index b1b9453..bb08830 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecoratorTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadConfigDecoratorTest.java
@@ -75,12 +75,14 @@ public class AutoReloadConfigDecoratorTest extends AbstractConfigTest {
remoteConfig.setString("remote", null, "url", remoteUrl1);
remoteConfig.save();
- replicationConfig = new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ replicationConfig =
+ new FileReplicationConfig(new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
newAutoReloadConfig(
() -> {
try {
- return new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ return new FileReplicationConfig(
+ new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
} catch (IOException | ConfigInvalidException e) {
throw new RuntimeException(e);
}
@@ -122,12 +124,14 @@ public class AutoReloadConfigDecoratorTest extends AbstractConfigTest {
remoteConfig.setString("remote", null, "url", remoteUrl2);
remoteConfig.save();
- replicationConfig = new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ replicationConfig =
+ new FileReplicationConfig(new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
newAutoReloadConfig(
() -> {
try {
- return new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ return new FileReplicationConfig(
+ new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
} catch (IOException | ConfigInvalidException e) {
throw new RuntimeException(e);
}
@@ -168,12 +172,14 @@ public class AutoReloadConfigDecoratorTest extends AbstractConfigTest {
remoteConfig.setString("remote", null, "url", remoteUrl2);
remoteConfig.save();
- replicationConfig = new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ replicationConfig =
+ new FileReplicationConfig(new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
newAutoReloadConfig(
() -> {
try {
- return new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ return new FileReplicationConfig(
+ new FanoutConfigResource(sitePaths), sitePaths, pluginDataPath);
} catch (IOException | ConfigInvalidException e) {
throw new RuntimeException(e);
}
@@ -228,14 +234,14 @@ public class AutoReloadConfigDecoratorTest extends AbstractConfigTest {
}
private AutoReloadConfigDecorator newAutoReloadConfig(
- Supplier<ReplicationConfig> configSupplier) {
+ Supplier<FileReplicationConfig> configSupplier) {
AutoReloadRunnable autoReloadRunnable =
new AutoReloadRunnable(
configParser,
- new Provider<ReplicationConfig>() {
+ new Provider<FileReplicationConfig>() {
@Override
- public ReplicationConfig get() {
+ public FileReplicationConfig get() {
return configSupplier.get();
}
},
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnableTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnableTest.java
index 725052c..14307f8 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnableTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/AutoReloadRunnableTest.java
@@ -81,11 +81,11 @@ public class AutoReloadRunnableTest {
autoReloadRunnable.run();
}
- private Provider<ReplicationConfig> newVersionConfigProvider() {
+ private Provider<FileReplicationConfig> newVersionConfigProvider() {
return new Provider<>() {
@Override
- public ReplicationConfig get() {
- return new ReplicationFileBasedConfig(sitePaths, sitePaths.data_dir) {
+ public FileReplicationConfig get() {
+ return new FileReplicationConfig(sitePaths, sitePaths.data_dir) {
@Override
public String getVersion() {
return String.format("%s", System.nanoTime());
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfigTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResourceTest.java
index 8cba4bb..34712a7 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/FanoutReplicationConfigTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/FanoutConfigResourceTest.java
@@ -27,9 +27,9 @@ import org.eclipse.jgit.util.FS;
import org.junit.Before;
import org.junit.Test;
-public class FanoutReplicationConfigTest extends AbstractConfigTest {
+public class FanoutConfigResourceTest extends AbstractConfigTest {
- public FanoutReplicationConfigTest() throws IOException {
+ public FanoutConfigResourceTest() throws IOException {
super();
}
@@ -62,7 +62,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(1);
@@ -81,7 +81,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(2);
@@ -101,7 +101,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(1);
@@ -123,7 +123,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(1);
@@ -136,7 +136,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", "ssh://git@git.elsewhere.com/name");
config.save();
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
}
@Test
@@ -145,7 +145,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(0);
}
@@ -158,7 +158,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(0);
}
@@ -170,7 +170,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.save();
DestinationsCollection destinationsCollections =
- newDestinationsCollections(new FanoutReplicationConfig(sitePaths, pluginDataPath));
+ newDestinationsCollections(new FanoutConfigResource(sitePaths));
List<Destination> destinations = destinationsCollections.getAll(FilterType.ALL);
assertThat(destinations).hasSize(0);
}
@@ -186,12 +186,11 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", remoteUrl2);
config.save();
- FanoutReplicationConfig objectUnderTest =
- new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ FanoutConfigResource objectUnderTest = new FanoutConfigResource(sitePaths);
String version = objectUnderTest.getVersion();
- objectUnderTest = new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ objectUnderTest = new FanoutConfigResource(sitePaths);
assertThat(objectUnderTest.getVersion()).isEqualTo(version);
}
@@ -203,8 +202,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", remoteUrl1);
config.save();
- FanoutReplicationConfig objectUnderTest =
- new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ FanoutConfigResource objectUnderTest = new FanoutConfigResource(sitePaths);
String version = objectUnderTest.getVersion();
@@ -222,8 +220,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", remoteUrl1);
config.save();
- FanoutReplicationConfig objectUnderTest =
- new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ FanoutConfigResource objectUnderTest = new FanoutConfigResource(sitePaths);
String version = objectUnderTest.getVersion();
@@ -244,8 +241,7 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", remoteUrl2);
config.save();
- FanoutReplicationConfig objectUnderTest =
- new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ FanoutConfigResource objectUnderTest = new FanoutConfigResource(sitePaths);
String version = objectUnderTest.getVersion();
assertThat(
@@ -267,11 +263,10 @@ public class FanoutReplicationConfigTest extends AbstractConfigTest {
config.setString("remote", null, "url", remoteUrl2);
config.save();
- FanoutReplicationConfig objectUnderTest =
- new FanoutReplicationConfig(sitePaths, pluginDataPath);
+ FanoutConfigResource objectUnderTest = new FanoutConfigResource(sitePaths);
String replicationConfigVersion =
- new ReplicationFileBasedConfig(sitePaths, pluginDataPath).getVersion();
+ new FileReplicationConfig(sitePaths, pluginDataPath).getVersion();
MoreFiles.deleteRecursively(sitePaths.etc_dir.resolve("replication"), ALLOW_INSECURE);
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfigTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigImplTest.java
index 79b05cc..068e5ff 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationFileBasedConfigTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationConfigImplTest.java
@@ -22,9 +22,9 @@ import java.util.List;
import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.junit.Test;
-public class ReplicationFileBasedConfigTest extends AbstractConfigTest {
+public class ReplicationConfigImplTest extends AbstractConfigTest {
- public ReplicationFileBasedConfigTest() throws IOException {
+ public ReplicationConfigImplTest() throws IOException {
super();
}