类com.alibaba.dubbo.rpc.protocol.dubbo.filter.TraceFilter源码实例Demo

下面列出了怎么用com.alibaba.dubbo.rpc.protocol.dubbo.filter.TraceFilter的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: dubbo-2.6.5   文件: TraceTelnetHandler.java
@Override
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (!StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (!found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
源代码2 项目: dubbox   文件: TraceTelnetHandler.java
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (! StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (! found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
源代码3 项目: dubbox-hystrix   文件: TraceTelnetHandler.java
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (! StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (! found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
源代码4 项目: dubbo3   文件: TraceTelnetHandler.java
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (! StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (! found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
源代码5 项目: dubbox   文件: TraceTelnetHandler.java
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (! StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (! found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
源代码6 项目: dubbox   文件: TraceTelnetHandler.java
public String telnet(Channel channel, String message) {
    String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
    if ((service == null || service.length() == 0)
            && (message == null || message.length() == 0)) {
        return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
    }
    String[] parts = message.split("\\s+");
    String method;
    String times;
    if (service == null || service.length() == 0) {
        service = parts.length > 0 ? parts[0] : null;
        method = parts.length > 1 ? parts[1] : null;
    } else {
        method = parts.length > 0 ? parts[0] : null;
    }
    if (StringUtils.isInteger(method)) {
        times = method;
        method = null;
    } else {
        times = parts.length > 2 ? parts[2] : "1";
    }
    if (! StringUtils.isInteger(times)) {
        return "Illegal times " + times + ", must be integer.";
    }
    Invoker<?> invoker = null;
    for (Exporter<?> exporter : DubboProtocol.getDubboProtocol().getExporters()) {
        if (service.equals(exporter.getInvoker().getInterface().getSimpleName())
                || service.equals(exporter.getInvoker().getInterface().getName())
                || service.equals(exporter.getInvoker().getUrl().getPath())) {
            invoker = exporter.getInvoker();
            break;
        }
    }
    if (invoker != null) {
        if (method != null && method.length() > 0) {
            boolean found = false;
            for (Method m : invoker.getInterface().getMethods()) {
                if (m.getName().equals(method)) {
                    found = true;
                    break;
                }
            }
            if (! found) {
                return "No such method " + method + " in class " + invoker.getInterface().getName();
            }
        }
        TraceFilter.addTracer(invoker.getInterface(), method, channel, Integer.parseInt(times));
    } else {
        return "No such service " + service;
    }
    return null;
}
 
 类所在包
 类方法
 同包方法