本人目前在学习Jetty7的源码,多方查找没有找到可以直接复制的。没办法只有到官网去看咯。
http://download.eclipse.org/jetty/stable-7/xref/
但是在通过一些方法copy了部分的时候,发现有错误。是他故意做的吗?
我先举一个例子给大家看看。
比如很多代码都用到了一个类 Request ,这个类是Jetty自己实现的。他如何实现的呢?如下:
public class LocalConnector extends AbstractConnector
{
。。。。。。
private class Request implements Runnable
{
。。。
}
}
大家可以看到他用的是 private 关键字修饰的。而且其他使用这个类的Java文件中都没有Import这个类,而且也不可能Import到这个类。更有甚者,在HttpConnection类中有这么一个属性:protected final Request _request;
类的导入是这么写的:import org.eclipse.jetty.server.LocalConnector.Request;
大家在看看下面他是怎么使用的:
而这些方法在org.eclipse.jetty.server.LocalConnector.Request里面是根本就不存在的
这就让我非常非常的不明白了 现在郁闷中。。。
难道是我错了?谁也看了源代码的,进来看看。解释一下看看
http://download.eclipse.org/jetty/stable-7/xref/
但是在通过一些方法copy了部分的时候,发现有错误。是他故意做的吗?
我先举一个例子给大家看看。
比如很多代码都用到了一个类 Request ,这个类是Jetty自己实现的。他如何实现的呢?如下:
public class LocalConnector extends AbstractConnector
{
。。。。。。
private class Request implements Runnable
{
。。。
}
}
大家可以看到他用的是 private 关键字修饰的。而且其他使用这个类的Java文件中都没有Import这个类,而且也不可能Import到这个类。更有甚者,在HttpConnection类中有这么一个属性:protected final Request _request;
类的导入是这么写的:import org.eclipse.jetty.server.LocalConnector.Request;
大家在看看下面他是怎么使用的:
if (_request._async.isInitial()) {
_request.setDispatcherType(DispatcherType.REQUEST);
_connector.customize(_endp, _request);
server.handle(this);
} else {
_request.setDispatcherType(DispatcherType.ASYNC);
server.handleAsync(this);
}
而这些方法在org.eclipse.jetty.server.LocalConnector.Request里面是根本就不存在的
这就让我非常非常的不明白了 现在郁闷中。。。
难道是我错了?谁也看了源代码的,进来看看。解释一下看看