This commit is contained in:
DOHA
2015-03-27 00:22:33 +02:00
parent 052f2feb78
commit 60f029855a
7 changed files with 65 additions and 41 deletions
@@ -5,7 +5,7 @@ import java.net.URI;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.baeldung.web.metric.MetricService;
import org.baeldung.web.metric.IMetricService;
import org.baeldung.web.util.LinkUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@@ -20,7 +20,7 @@ import org.springframework.web.util.UriTemplate;
public class RootController {
@Autowired
private MetricService metricService;
private IMetricService metricService;
public RootController() {
super();
@@ -0,0 +1,12 @@
package org.baeldung.web.metric;
public interface IMetricService {
void increaseCount(final String request, final int status);
String getFullMetric();
String getStatusMetric();
Object[][] getGraphData();
}
@@ -10,7 +10,7 @@ import java.util.Set;
import org.springframework.stereotype.Service;
@Service
public class MetricService {
public class MetricService implements IMetricService {
private Map<String, HashMap<Integer, Integer>> metricMap;
private Map<Integer, Integer> statusMetric;
@@ -26,20 +26,24 @@ public class MetricService {
// API
@Override
public void increaseCount(final String request, final int status) {
increaseMainMetric(request, status);
increaseStatusMetric(status);
updateTimeMap(status);
}
@Override
public String getFullMetric() {
return metricMap.entrySet().toString();
}
@Override
public String getStatusMetric() {
return statusMetric.entrySet().toString();
}
@Override
public Object[][] getGraphData() {
final int colCount = statusMetric.keySet().size() + 1;
final Set<Integer> allStatus = statusMetric.keySet();
@@ -54,7 +58,7 @@ public class MetricService {
j++;
}
int i = 1;
HashMap<Integer, Integer> tempMap;
Map<Integer, Integer> tempMap;
for (final Entry<String, HashMap<Integer, Integer>> entry : timeMap.entrySet()) {
result[i][0] = entry.getKey();
tempMap = entry.getValue();