Search in sources :

Example 6 with TopologyResponse

use of org.apache.metron.rest.model.TopologyResponse in project metron by apache.

the class StormStatusServiceImplTest method deactivateTopologyShouldReturnErrorTopologyResponse.

@Test
public void deactivateTopologyShouldReturnErrorTopologyResponse() throws Exception {
    final TopologyStatus topologyStatus = new TopologyStatus();
    topologyStatus.setName("bro");
    topologyStatus.setId("bro_id");
    final TopologySummary topologySummary = new TopologySummary();
    topologySummary.setTopologies(new TopologyStatus[] { topologyStatus });
    when(environment.getProperty(STORM_UI_SPRING_PROPERTY)).thenReturn(HTTP_STORM_UI);
    when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_SUMMARY_URL, TopologySummary.class)).thenReturn(topologySummary);
    when(restTemplate.postForObject(HTTP_STORM_UI + TOPOLOGY_URL + "/bro_id/deactivate", null, Map.class)).thenReturn(new HashMap() {

        {
            put("status", "error message");
        }
    });
    TopologyResponse expected = new TopologyResponse();
    expected.setErrorMessage("error message");
    assertEquals(expected, stormStatusService.deactivateTopology("bro"));
}
Also used : HashMap(java.util.HashMap) TopologyResponse(org.apache.metron.rest.model.TopologyResponse) TopologySummary(org.apache.metron.rest.model.TopologySummary) TopologyStatus(org.apache.metron.rest.model.TopologyStatus) Test(org.junit.jupiter.api.Test)

Example 7 with TopologyResponse

use of org.apache.metron.rest.model.TopologyResponse in project metron by apache.

the class StormStatusServiceImplTest method activateTopologyShouldReturnErrorTopologyResponse.

@Test
public void activateTopologyShouldReturnErrorTopologyResponse() throws Exception {
    final TopologyStatus topologyStatus = new TopologyStatus();
    topologyStatus.setName("bro");
    topologyStatus.setId("bro_id");
    final TopologySummary topologySummary = new TopologySummary();
    topologySummary.setTopologies(new TopologyStatus[] { topologyStatus });
    when(environment.getProperty(STORM_UI_SPRING_PROPERTY)).thenReturn(HTTP_STORM_UI);
    when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_SUMMARY_URL, TopologySummary.class)).thenReturn(topologySummary);
    when(restTemplate.postForObject(HTTP_STORM_UI + TOPOLOGY_URL + "/bro_id/activate", null, Map.class)).thenReturn(new HashMap() {

        {
            put("status", "error message");
        }
    });
    TopologyResponse expected = new TopologyResponse();
    expected.setErrorMessage("error message");
    assertEquals(expected, stormStatusService.activateTopology("bro"));
}
Also used : HashMap(java.util.HashMap) TopologyResponse(org.apache.metron.rest.model.TopologyResponse) TopologySummary(org.apache.metron.rest.model.TopologySummary) TopologyStatus(org.apache.metron.rest.model.TopologyStatus) Test(org.junit.jupiter.api.Test)

Example 8 with TopologyResponse

use of org.apache.metron.rest.model.TopologyResponse in project metron by apache.

the class StormStatusServiceImplTest method deactivateTopologyShouldReturnTopologyNotFoundTopologyResponse.

@Test
public void deactivateTopologyShouldReturnTopologyNotFoundTopologyResponse() throws Exception {
    when(environment.getProperty(STORM_UI_SPRING_PROPERTY)).thenReturn(HTTP_STORM_UI);
    when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_SUMMARY_URL, TopologySummary.class)).thenReturn(new TopologySummary());
    TopologyResponse expected = new TopologyResponse();
    expected.setErrorMessage(TopologyStatusCode.TOPOLOGY_NOT_FOUND.toString());
    assertEquals(expected, stormStatusService.deactivateTopology("bro"));
}
Also used : TopologyResponse(org.apache.metron.rest.model.TopologyResponse) TopologySummary(org.apache.metron.rest.model.TopologySummary) Test(org.junit.jupiter.api.Test)

Example 9 with TopologyResponse

use of org.apache.metron.rest.model.TopologyResponse in project metron by apache.

the class StormStatusServiceImplTest method deactivateTopologyShouldReturnActiveTopologyResponse.

@Test
public void deactivateTopologyShouldReturnActiveTopologyResponse() throws Exception {
    final TopologyStatus topologyStatus = new TopologyStatus();
    topologyStatus.setName("bro");
    topologyStatus.setId("bro_id");
    final TopologySummary topologySummary = new TopologySummary();
    topologySummary.setTopologies(new TopologyStatus[] { topologyStatus });
    when(environment.getProperty(STORM_UI_SPRING_PROPERTY)).thenReturn(HTTP_STORM_UI);
    when(restTemplate.getForObject(HTTP_STORM_UI + TOPOLOGY_SUMMARY_URL, TopologySummary.class)).thenReturn(topologySummary);
    when(restTemplate.postForObject(HTTP_STORM_UI + TOPOLOGY_URL + "/bro_id/deactivate", null, Map.class)).thenReturn(new HashMap() {

        {
            put("status", "success");
        }
    });
    TopologyResponse expected = new TopologyResponse();
    expected.setSuccessMessage(TopologyStatusCode.INACTIVE.toString());
    assertEquals(expected, stormStatusService.deactivateTopology("bro"));
}
Also used : HashMap(java.util.HashMap) TopologyResponse(org.apache.metron.rest.model.TopologyResponse) TopologySummary(org.apache.metron.rest.model.TopologySummary) TopologyStatus(org.apache.metron.rest.model.TopologyStatus) Test(org.junit.jupiter.api.Test)

Example 10 with TopologyResponse

use of org.apache.metron.rest.model.TopologyResponse in project metron by apache.

the class StormStatusServiceImpl method activateTopology.

@Override
public TopologyResponse activateTopology(String name) {
    TopologyResponse topologyResponse = new TopologyResponse();
    String id = getTopologyId(name);
    if (id != null) {
        Map result = restTemplate.postForObject(getStormUiProperty() + TOPOLOGY_URL + "/" + id + "/activate", null, Map.class);
        if ("success".equals(result.get("status"))) {
            topologyResponse.setSuccessMessage(TopologyStatusCode.ACTIVE.toString());
        } else {
            topologyResponse.setErrorMessage((String) result.get("status"));
        }
    } else {
        topologyResponse.setErrorMessage(TopologyStatusCode.TOPOLOGY_NOT_FOUND.toString());
    }
    return topologyResponse;
}
Also used : TopologyResponse(org.apache.metron.rest.model.TopologyResponse) Map(java.util.Map)

Aggregations

TopologyResponse (org.apache.metron.rest.model.TopologyResponse)18 Test (org.junit.jupiter.api.Test)15 TopologySummary (org.apache.metron.rest.model.TopologySummary)6 TopologyStatus (org.apache.metron.rest.model.TopologyStatus)5 HashMap (java.util.HashMap)4 Map (java.util.Map)2 SensorParserConfig (org.apache.metron.common.configuration.SensorParserConfig)2 SensorParserGroup (org.apache.metron.common.configuration.SensorParserGroup)2