use of org.jolokia.client.request.J4pExecResponse in project camel by apache.
the class DefaultJolokiaCamelController method getRouteModelAsXml.
@Override
public String getRouteModelAsXml(String routeId, String camelContextName) throws Exception {
if (jolokia == null) {
throw new IllegalStateException("Need to connect to remote jolokia first");
}
ObjectName found = lookupCamelContext(camelContextName);
if (found != null) {
String pattern = String.format("%s:context=%s,type=routes,name=\"%s\"", found.getDomain(), found.getKeyProperty("context"), routeId);
ObjectName on = ObjectName.getInstance(pattern);
J4pExecResponse response = jolokia.execute(new J4pExecRequest(on, "dumpRouteAsXml()"));
if (response != null) {
String xml = response.getValue();
return xml;
}
}
return null;
}
use of org.jolokia.client.request.J4pExecResponse in project camel by apache.
the class DefaultJolokiaCamelController method getEndpointRuntimeStatistics.
@Override
public List<Map<String, String>> getEndpointRuntimeStatistics(String camelContextName) throws Exception {
if (jolokia == null) {
throw new IllegalStateException("Need to connect to remote jolokia first");
}
List<Map<String, String>> answer = new ArrayList<Map<String, String>>();
ObjectName found = lookupCamelContext(camelContextName);
if (found != null) {
String pattern = String.format("%s:context=%s,type=services,name=DefaultRuntimeEndpointRegistry", found.getDomain(), found.getKeyProperty("context"));
ObjectName on = ObjectName.getInstance(pattern);
J4pExecResponse response = jolokia.execute(new J4pExecRequest(on, "endpointStatistics()"));
if (response != null) {
JSONObject data = response.getValue();
for (Object obj : data.values()) {
JSONObject data2 = (JSONObject) obj;
JSONObject service = (JSONObject) data2.values().iterator().next();
Map<String, String> row = new LinkedHashMap<String, String>();
row.put("index", asString(service.get("index")));
row.put("url", asString(service.get("url")));
row.put("routeId", asString(service.get("routeId")));
row.put("direction", asString(service.get("direction")));
row.put("static", asString(service.get("static")));
row.put("dynamic", asString(service.get("dynamic")));
row.put("hits", asString(service.get("hits")));
answer.add(row);
}
}
// sort the list
Collections.sort(answer, new Comparator<Map<String, String>>() {
@Override
public int compare(Map<String, String> endpoint1, Map<String, String> endpoint2) {
// sort by route id
String route1 = endpoint1.get("routeId");
String route2 = endpoint2.get("routeId");
int num = route1.compareTo(route2);
if (num == 0) {
// we want in before out
String dir1 = endpoint1.get("direction");
String dir2 = endpoint2.get("direction");
num = dir1.compareTo(dir2);
}
return num;
}
});
}
return answer;
}
use of org.jolokia.client.request.J4pExecResponse in project camel by apache.
the class DefaultJolokiaCamelController method getValidators.
@Override
public List<Map<String, String>> getValidators(String camelContextName) throws Exception {
if (jolokia == null) {
throw new IllegalStateException("Need to connect to remote jolokia first");
}
List<Map<String, String>> answer = new ArrayList<Map<String, String>>();
ObjectName found = lookupCamelContext(camelContextName);
if (found != null) {
String pattern = String.format("%s:context=%s,type=services,name=DefaultValidatorRegistry", found.getDomain(), found.getKeyProperty("context"));
ObjectName on = ObjectName.getInstance(pattern);
J4pExecResponse response = jolokia.execute(new J4pExecRequest(on, "listValidators()"));
if (response != null) {
JSONObject data = response.getValue();
if (data != null) {
for (Object obj : data.values()) {
JSONObject data2 = (JSONObject) obj;
JSONObject service = (JSONObject) data2.values().iterator().next();
Map<String, String> row = new LinkedHashMap<String, String>();
row.put("type", asString(service.get("type")));
row.put("static", asString(service.get("static")));
row.put("dynamic", asString(service.get("dynamic")));
row.put("description", asString(service.get("description")));
answer.add(row);
}
}
}
// sort the list
Collections.sort(answer, new Comparator<Map<String, String>>() {
@Override
public int compare(Map<String, String> service1, Map<String, String> service2) {
String type1 = service1.get("type");
String type2 = service2.get("type");
return type1.compareTo(type2);
}
});
}
return answer;
}
use of org.jolokia.client.request.J4pExecResponse in project camel by apache.
the class DefaultJolokiaCamelController method listComponents.
@Override
public List<Map<String, String>> listComponents(String camelContextName) throws Exception {
if (jolokia == null) {
throw new IllegalStateException("Need to connect to remote jolokia first");
}
List<Map<String, String>> answer = new ArrayList<Map<String, String>>();
ObjectName found = lookupCamelContext(camelContextName);
if (found != null) {
J4pExecResponse response = jolokia.execute(new J4pExecRequest(found, "listComponents()"));
if (response != null) {
JSONObject data = response.getValue();
for (Object obj : data.values()) {
JSONObject component = (JSONObject) obj;
Map<String, String> row = new LinkedHashMap<String, String>();
row.put("artifactId", asString(component.get("artifactId")));
row.put("title", asString(component.get("title")));
row.put("description", asString(component.get("description")));
row.put("groupId", asString(component.get("groupId")));
row.put("label", asString(component.get("label")));
row.put("name", asString(component.get("name")));
row.put("status", asString(component.get("status")));
row.put("type", asString(component.get("type")));
row.put("version", asString(component.get("version")));
answer.add(row);
}
}
// sort the list
Collections.sort(answer, new Comparator<Map<String, String>>() {
@Override
public int compare(Map<String, String> component1, Map<String, String> component2) {
String name1 = component1.get("name");
String name2 = component2.get("name");
return name1.compareTo(name2);
}
});
}
return answer;
}
use of org.jolokia.client.request.J4pExecResponse in project camel by apache.
the class DefaultJolokiaCamelController method getRestServices.
@Override
public List<Map<String, String>> getRestServices(String camelContextName) throws Exception {
if (jolokia == null) {
throw new IllegalStateException("Need to connect to remote jolokia first");
}
List<Map<String, String>> answer = new ArrayList<Map<String, String>>();
ObjectName found = lookupCamelContext(camelContextName);
if (found != null) {
String pattern = String.format("%s:context=%s,type=services,name=DefaultRestRegistry", found.getDomain(), found.getKeyProperty("context"));
ObjectName on = ObjectName.getInstance(pattern);
J4pExecResponse response = jolokia.execute(new J4pExecRequest(on, "listRestServices()"));
if (response != null) {
JSONObject data = response.getValue();
if (data != null) {
for (Object obj : data.values()) {
JSONObject data2 = (JSONObject) obj;
JSONObject service = (JSONObject) data2.values().iterator().next();
Map<String, String> row = new LinkedHashMap<String, String>();
row.put("basePath", asString(service.get("basePath")));
row.put("baseUrl", asString(service.get("baseUrl")));
row.put("consumes", asString(service.get("consumes")));
row.put("description", asString(service.get("description")));
row.put("inType", asString(service.get("inType")));
row.put("method", asString(service.get("method")));
row.put("outType", asString(service.get("outType")));
row.put("produces", asString(service.get("produces")));
row.put("routeId", asString(service.get("routeId")));
row.put("state", asString(service.get("state")));
row.put("uriTemplate", asString(service.get("uriTemplate")));
row.put("url", asString(service.get("url")));
answer.add(row);
}
}
}
// sort the list
Collections.sort(answer, new Comparator<Map<String, String>>() {
@Override
public int compare(Map<String, String> service1, Map<String, String> service2) {
String url1 = service1.get("url");
String url2 = service2.get("url");
return url1.compareTo(url2);
}
});
}
return answer;
}
Aggregations