| | |
| | |
|
| | | // conditionally configure the http connector
|
| | | if (params.port > 0) {
|
| | | Connector httpConnector = createConnector(params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.port); |
| | | Connector httpConnector = createConnector(params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.port);
|
| | | String bindInterface = settings.getString(Keys.server.httpBindInterface, null);
|
| | | if (!StringUtils.isEmpty(bindInterface)) {
|
| | | logger.warn(MessageFormat.format("Binding connector on port {0,number,0} to {1}",
|
| | |
| | |
|
| | | if (serverKeyStore.exists()) {
|
| | | Connector secureConnector = createSSLConnector(params.alias, serverKeyStore, serverTrustStore, params.storePassword,
|
| | | caRevocationList, params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.securePort, params.requireClientCertificates); |
| | | caRevocationList, params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.securePort, params.requireClientCertificates);
|
| | | String bindInterface = settings.getString(Keys.server.httpsBindInterface, null);
|
| | | if (!StringUtils.isEmpty(bindInterface)) {
|
| | | logger.warn(MessageFormat.format(
|
| | |
| | | *
|
| | | * @param useNIO
|
| | | * @param port
|
| | | * @param maxThreads |
| | | * @param maxThreads
|
| | | * @return an http connector
|
| | | */
|
| | | private Connector createConnector(boolean useNIO, int port, int maxThreads) { |
| | | private Connector createConnector(boolean useNIO, int port, int maxThreads) {
|
| | | Connector connector;
|
| | | if (useNIO) {
|
| | | logger.info("Setting up NIO SelectChannelConnector on port " + port);
|
| | | SelectChannelConnector nioconn = new SelectChannelConnector();
|
| | | nioconn.setSoLingerTime(-1);
|
| | | nioconn.setThreadPool(new QueuedThreadPool(maxThreads)); |
| | | nioconn.setThreadPool(new QueuedThreadPool(maxThreads));
|
| | | connector = nioconn;
|
| | | } else {
|
| | | logger.info("Setting up SocketConnector on port " + port);
|
| | |
| | | * @param storePassword
|
| | | * @param caRevocationList
|
| | | * @param useNIO
|
| | | * @param nioThreadPoolSize |
| | | * @param nioThreadPoolSize
|
| | | * @param port
|
| | | * @param requireClientCertificates
|
| | | * @return an https connector
|
| | | */
|
| | | private Connector createSSLConnector(String certAlias, File keyStore, File clientTrustStore,
|
| | | String storePassword, File caRevocationList, boolean useNIO, int nioThreadPoolSize, int port, |
| | | String storePassword, File caRevocationList, boolean useNIO, int nioThreadPoolSize, int port,
|
| | | boolean requireClientCertificates) {
|
| | | GitblitSslContextFactory factory = new GitblitSslContextFactory(certAlias,
|
| | | keyStore, clientTrustStore, storePassword, caRevocationList);
|
| | |
| | | } else {
|
| | | factory.setWantClientAuth(true);
|
| | | }
|
| | | ssl.setThreadPool(new QueuedThreadPool(nioThreadPoolSize)); |
| | | ssl.setThreadPool(new QueuedThreadPool(nioThreadPoolSize));
|
| | | connector = ssl;
|
| | | } else {
|
| | | logger.info("Setting up NIO SslSocketConnector on port " + port);
|