Browse Source

SONAR-6374 ensure CEQueueStatus is initialized before MBean is registered

tags/5.2-RC1
Sébastien Lesaint 9 years ago
parent
commit
80f689bdea

+ 6
- 1
server/sonar-server/src/main/java/org/sonar/server/computation/monitoring/ComputeEngineQueueMonitor.java View File

@@ -20,12 +20,17 @@
package org.sonar.server.computation.monitoring;

import java.util.LinkedHashMap;
import org.sonar.server.computation.ReportQueue;
import org.sonar.server.platform.monitoring.BaseMonitorMBean;

public class ComputeEngineQueueMonitor extends BaseMonitorMBean implements ComputeEngineQueueMonitorMBean {
private final CEQueueStatus queueStatus;

public ComputeEngineQueueMonitor(CEQueueStatus queueStatus) {
public ComputeEngineQueueMonitor(CEQueueStatus queueStatus,
// ReportQueue initializes CEQueueStatus and is therefor a dependency of
// ComputeEngineQueueMonitor.
// Do not remove this parameter, it ensures start order of components
ReportQueue reportQueue) {
this.queueStatus = queueStatus;
}


+ 3
- 1
server/sonar-server/src/test/java/org/sonar/server/computation/monitoring/ComputeEngineQueueMonitorTest.java View File

@@ -20,9 +20,11 @@
package org.sonar.server.computation.monitoring;

import org.junit.Test;
import org.sonar.server.computation.ReportQueue;

import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.entry;
import static org.mockito.Mockito.mock;

public class ComputeEngineQueueMonitorTest {
private static final long RECEIVED_COUNT = 30;
@@ -31,7 +33,7 @@ public class ComputeEngineQueueMonitorTest {
private static final long ERROR_COUNT = 10;
private static final long SUCCESS_COUNT = 13;

private ComputeEngineQueueMonitor underTest = new ComputeEngineQueueMonitor(new DumbCEQueueStatus());
private ComputeEngineQueueMonitor underTest = new ComputeEngineQueueMonitor(new DumbCEQueueStatus(), mock(ReportQueue.class));

@Test
public void name_is_ComputeEngineQueue() {

Loading…
Cancel
Save