}
private GBeanInfo getConnectorGBeanInfo(Connector conn) {
String className = conn.getProtocolHandlerClassName();
AnnotationGBeanInfoFactory annotationGbeanInfoFactory=new AnnotationGBeanInfoFactory();
// BIO
if (className.equalsIgnoreCase("org.apache.coyote.http11.Http11Protocol")) {
if (conn.getScheme().equalsIgnoreCase("https"))
return annotationGbeanInfoFactory.getGBeanInfo(Https11ConnectorGBean.class);
else
return annotationGbeanInfoFactory.getGBeanInfo(Http11ConnectorGBean.class);
}
// NIO
if (className.equalsIgnoreCase("org.apache.coyote.http11.Http11NioProtocol")) {
if (conn.getScheme().equalsIgnoreCase("https"))
return annotationGbeanInfoFactory.getGBeanInfo(Https11NIOConnectorGBean.class);
else
return annotationGbeanInfoFactory.getGBeanInfo(Http11NIOConnectorGBean.class);
}
// AJP
if (className.equalsIgnoreCase("org.apache.coyote.ajp.AjpAprProtocol")) {
return annotationGbeanInfoFactory.getGBeanInfo(AJP13ConnectorGBean.class);
}
if (className.equalsIgnoreCase("org.apache.jk.server.JkCoyoteHandler")) {
return annotationGbeanInfoFactory.getGBeanInfo(AJP13ConnectorGBean.class);
}
// Apr
if (className.equalsIgnoreCase("org.apache.coyote.http11.Http11AprProtocol")) {
if (conn.getScheme().equalsIgnoreCase("https"))
return annotationGbeanInfoFactory.getGBeanInfo(Https11APRConnectorGBean.class);
else
return annotationGbeanInfoFactory.getGBeanInfo(Http11APRConnectorGBean.class);
}
return null;
}