PublishEventListener: Don't hard-code "All-Projects"
"All-Projects" is the default root project name, but it may be
configured to something else [1]. Instead of hard-coding the
name, use the AllProjectsName provider.
[1] http://gerrit-documentation.storage.googleapis.com/Documentation/2.14/config-gerrit.html#gerrit.allProjects
Change-Id: I8b7ed226885fcd50b0b147fa8b280e61afda3cb1
diff --git a/src/main/java/com/cisco/gerrit/plugins/slack/PublishEventListener.java b/src/main/java/com/cisco/gerrit/plugins/slack/PublishEventListener.java
index 6fa6007..6f862f5 100644
--- a/src/main/java/com/cisco/gerrit/plugins/slack/PublishEventListener.java
+++ b/src/main/java/com/cisco/gerrit/plugins/slack/PublishEventListener.java
@@ -23,6 +23,7 @@
import com.cisco.gerrit.plugins.slack.message.MessageGeneratorFactory;
import com.google.gerrit.common.EventListener;
import com.google.gerrit.extensions.annotations.Listen;
+import com.google.gerrit.server.config.AllProjectsName;
import com.google.gerrit.server.config.PluginConfigFactory;
import com.google.gerrit.server.events.ChangeMergedEvent;
import com.google.gerrit.server.events.CommentAddedEvent;
@@ -40,13 +41,13 @@
public class PublishEventListener implements EventListener {
private static final Logger LOGGER = LoggerFactory.getLogger(PublishEventListener.class);
- private static final String ALL_PROJECTS = "All-Projects";
-
private final PluginConfigFactory configFactory;
+ private final AllProjectsName allProjectsName;
@Inject
- PublishEventListener(PluginConfigFactory configFactory) {
+ PublishEventListener(PluginConfigFactory configFactory, AllProjectsName allProjectsName) {
this.configFactory = configFactory;
+ this.allProjectsName = allProjectsName;
}
@Override
@@ -86,7 +87,7 @@
} else {
LOGGER.debug("Event " + event + " not currently supported");
- config = new ProjectConfig(configFactory, ALL_PROJECTS);
+ config = new ProjectConfig(configFactory, allProjectsName.get());
messageGenerator = MessageGeneratorFactory.newInstance(event);
}
diff --git a/src/test/java/com/cisco/gerrit/plugins/slack/PublishEventListenerTest.java b/src/test/java/com/cisco/gerrit/plugins/slack/PublishEventListenerTest.java
index 229f3ef..d672922 100644
--- a/src/test/java/com/cisco/gerrit/plugins/slack/PublishEventListenerTest.java
+++ b/src/test/java/com/cisco/gerrit/plugins/slack/PublishEventListenerTest.java
@@ -20,6 +20,7 @@
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
+import com.google.gerrit.server.config.AllProjectsName;
import com.google.gerrit.server.config.PluginConfigFactory;
import com.google.gerrit.server.events.ChangeMergedEvent;
import com.google.gerrit.server.events.PatchSetCreatedEvent;
@@ -30,12 +31,13 @@
private PatchSetCreatedEvent mockPatchSetCreatedEvent = mock(PatchSetCreatedEvent.class);
private ChangeMergedEvent mockChangeMergedEvent = mock(ChangeMergedEvent.class);
private PluginConfigFactory mockConfigFactory = mock(PluginConfigFactory.class);
+ private AllProjectsName mockAllProjectsName = mock(AllProjectsName.class);
private PublishEventListener publishEventListener;
@Before
public void setup() throws Exception {
- publishEventListener = new PublishEventListener(mockConfigFactory);
+ publishEventListener = new PublishEventListener(mockConfigFactory, mockAllProjectsName);
}
@Test