CreateProjectTask.java: use interface instead of implementation
ReplicationDestinations interface should be used in CreateProjectTask
so that specific implementation can be materialized by Guice (DI).
Change-Id: If7cb21adff5c3feeeea7568c504e8e37d5c08f9e
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/CreateProjectTask.java b/src/main/java/com/googlesource/gerrit/plugins/replication/CreateProjectTask.java
index 424648e..2599b9b 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/CreateProjectTask.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/CreateProjectTask.java
@@ -31,7 +31,7 @@
}
private final RemoteConfig config;
- private final DestinationsCollection destinations;
+ private final ReplicationDestinations destinations;
private final DynamicItem<AdminApiFactory> adminApiFactory;
private final Project.NameKey project;
private final String head;
@@ -39,7 +39,7 @@
@Inject
CreateProjectTask(
RemoteConfig config,
- DestinationsCollection destinations,
+ ReplicationDestinations destinations,
DynamicItem<AdminApiFactory> adminApiFactory,
@Assisted Project.NameKey project,
@Assisted String head) {
@@ -51,8 +51,10 @@
}
public boolean create() {
- return destinations.getURIs(Optional.of(config.getName()), project, FilterType.PROJECT_CREATION)
- .values().stream()
+ return destinations
+ .getURIs(Optional.of(config.getName()), project, FilterType.PROJECT_CREATION)
+ .values()
+ .stream()
.map(u -> createProject(u, project, head))
.reduce(true, (a, b) -> a && b);
}