class GraphiteWithStormQuerier extends AbstractTimeSeriesQuerier {

    @Override
    public Map<String, Map<Long, Double>> getRawMetrics(String metricName, String parameters, long from, long to) {
        Map<String, String> queryParams = parseParameters(parameters);
        URI targetUri = composeRawQueryParameters(metricName, queryParams, from, to);

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

        List<Map<String, ?>> responseList = JsonClientUtil.getEntity(client.target(targetUri), List.class);
        if (responseList.size() > 0) {
            Map<String, Map<Long, Double>> ret = new HashMap<>(responseList.size());
            for (Map<String, ?> metric : responseList) {
                String target = (String) metric.get("target");
                List<List<Number>> dataPoints = (List<List<Number>>) metric.get("datapoints");
                Map<Long, Double> pointsForOutput = formatDataPointsFromGraphiteToMap(dataPoints);
                ret.put(target, pointsForOutput);
            }

            return ret;
        } else {
            return Collections.emptyMap();
        }
    }

    public  GraphiteWithStormQuerier();

}