class GraphiteWithStormQuerier extends AbstractTimeSeriesQuerier {

    @Override
    public Map<Long, Double> getMetrics(String topologyName, String componentId, String metricName, AggregateFunction aggrFunction,
                                        long from, long to) {
        URI targetUri = composeQueryParameters(topologyName, componentId, metricName, aggrFunction, from, to);

        log.debug("Calling {} for querying metric", targetUri.toString());

        List<Map<String, ?>> responseList = JsonClientUtil.getEntity(client.target(targetUri), List.class);
        if (responseList.isEmpty()) {
            return Collections.emptyMap();
        }

        Map<String, ?> metrics = responseList.get(0);
        List<List<Number>> dataPoints = (List<List<Number>>) metrics.get("datapoints");
        return formatDataPointsFromGraphiteToMap(dataPoints);
    }

    public  GraphiteWithStormQuerier();

}