public DetailsPage()

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));
            }
        });
    }