Java 类org.apache.camel.spi.EndpointRegistry 实例源码

项目:Camel    文件:ManagedRuntimeEndpointRegistry.java   
@Override
public TabularData endpointStatistics() {
    try {
        TabularData answer = new TabularDataSupport(CamelOpenMBeanTypes.listRuntimeEndpointsTabularType());

        EndpointRegistry staticRegistry = getContext().getEndpointRegistry();
        int index = 0;

        for (RuntimeEndpointRegistry.Statistic stat : registry.getEndpointStatistics()) {
            CompositeType ct = CamelOpenMBeanTypes.listRuntimeEndpointsCompositeType();

            String url = stat.getUri();
            Boolean isStatic = staticRegistry.isStatic(url);
            Boolean isDynamic = staticRegistry.isDynamic(url);
            if (sanitize) {
                url = URISupport.sanitizeUri(url);
            }
            String routeId = stat.getRouteId();
            String direction = stat.getDirection();
            long hits = stat.getHits();

            CompositeData data = new CompositeDataSupport(ct, new String[]{"index", "url", "routeId", "direction", "static", "dynamic", "hits"},
                    new Object[]{index, url, routeId, direction, isStatic, isDynamic, hits});
            answer.put(data);

            // use a counter as the single index in the TabularData as we do not want a multi-value index
            index++;
        }
        return answer;
    } catch (Exception e) {
        throw ObjectHelper.wrapRuntimeCamelException(e);
    }
}
项目:Camel    文件:AbstractLocalCamelController.java   
public List<Map<String, String>> getEndpointRuntimeStatistics(String camelContextName) throws Exception {
    List<Map<String, String>> answer = new ArrayList<Map<String, String>>();

    if (camelContextName != null) {
        CamelContext context = this.getLocalCamelContext(camelContextName);
        if (context != null) {
            EndpointRegistry staticRegistry = context.getEndpointRegistry();
            for (RuntimeEndpointRegistry.Statistic stat : context.getRuntimeEndpointRegistry().getEndpointStatistics()) {

                String url = stat.getUri();
                String routeId = stat.getRouteId();
                String direction = stat.getDirection();
                Boolean isStatic = staticRegistry.isStatic(url);
                Boolean isDynamic = staticRegistry.isDynamic(url);
                long hits = stat.getHits();

                Map<String, String> row = new LinkedHashMap<String, String>();
                row.put("camelContextName", context.getName());
                row.put("uri", url);
                row.put("routeId", routeId);
                row.put("direction", direction);
                row.put("static", isStatic.toString());
                row.put("dynamic", isDynamic.toString());
                row.put("hits", "" + 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;
}
项目:Camel    文件:ManagedEndpointRegistry.java   
public ManagedEndpointRegistry(CamelContext context, EndpointRegistry endpointRegistry) {
    super(context, endpointRegistry);
    this.endpointRegistry = endpointRegistry;
}
项目:Camel    文件:ManagedEndpointRegistry.java   
public EndpointRegistry getEndpointRegistry() {
    return endpointRegistry;
}
项目:Camel    文件:DefaultCamelContext.java   
public EndpointRegistry getEndpointRegistry() {
    return endpoints;
}
项目:microservice-bundle    文件:ManagedCamelContext.java   
@Override
public EndpointRegistry<String> getEndpointRegistry() {
  return context.getEndpointRegistry();
}
项目:dropwizard-camel    文件:ManagedCamelContext.java   
@Override
public EndpointRegistry<String> getEndpointRegistry() {
    return context.getEndpointRegistry();
}
项目:Camel    文件:CamelContext.java   
/**
 * Gets the {@link org.apache.camel.spi.EndpointRegistry}
 */
EndpointRegistry<String> getEndpointRegistry();