in cxf/src/main/java/org/apache/karaf/webconsole/cxf/internal/services/DetailsPage.java [56:148]
public DetailsPage(PageParameters params) {
String busId = params.get("busId").toString();
final BusModel model = new BusModel(buses, busId);
Bus object = model.getObject();
add(new Link("traceOn") {
@Override
public void onClick() {
Bus bus = model.getObject();
Session.get().info("Trace enabled");
bus.getInInterceptors().add(traceIn);
bus.getOutInterceptors().add(traceOut);
}
});
add(new Link("traceOff") {
@Override
public void onClick() {
Bus bus = model.getObject();
Session.get().info("Trace disabled");
bus.getInInterceptors().remove(traceIn);
bus.getOutInterceptors().remove(traceOut);
}
});
ServerRegistry extension = object.getExtension(ServerRegistry.class);
LoadableDetachableModel<List<Server>> serverModel = new LoadableDetachableModel<List<Server>>(extension.getServers()) {
@Override
protected List<Server> load() {
return model.getObject().getExtension(ServerRegistry.class).getServers();
}
};
add(new ListView<Server>("servers", serverModel) {
@Override
protected void populateItem(ListItem<Server> item) {
Server server = item.getModelObject();
item.add(new Label("class", server.getClass().getName()));
item.add(new Link("stop") {
@Override
public void onClick() {
//server.stop();
}
});
item.add(new Link("start") {
@Override
public void onClick() {
//server.start();
}
});
ServiceInfo service = server.getEndpoint().getEndpointInfo().getService();
item.add(new ListView<EndpointInfo>("endpoints", new ArrayList<EndpointInfo>(service.getEndpoints())) {
@Override
protected void populateItem(ListItem<EndpointInfo> item) {
EndpointInfo endpointInfo = item.getModelObject();
item.add(new Label("namespace", endpointInfo.getName().getNamespaceURI()));
item.add(new Label("element", endpointInfo.getName().getLocalPart()));
item.add(new Label("transport", endpointInfo.getTransportId()));
item.add(new ListView<OperationInfo>("operations", new ArrayList<OperationInfo>(endpointInfo.getInterface().getOperations())) {
@Override
protected void populateItem(ListItem<OperationInfo> item) {
OperationInfo operation = item.getModelObject();
item.add(new Label("input", "" + operation.getInput().getName()));
item.add(new Label("output", "" + operation.getOutput().getName()));
item.add(new Label("faults", "" + operation.getFaults()));
}
});
}
});
Endpoint endpoint = server.getEndpoint();
List<Interceptor<?>> inInterceptors = (List) endpoint.getInInterceptors();
List<Interceptor<?>> outInterceptors = (List) endpoint.getOutInterceptors();
List<Interceptor<?>> faultInterceptors = (List) endpoint.getInFaultInterceptors();
item.add(new InterceptorView("in-interceptors", inInterceptors));
item.add(new InterceptorView("out-interceptors", outInterceptors));
item.add(new InterceptorView("fault-interceptors", faultInterceptors));
}
});
}