| | |
| | |
|
| | | // conditionally configure the http connector
|
| | | if (params.port > 0) {
|
| | | Connector httpConnector = createConnector(params.useNIO, params.port);
|
| | | Connector httpConnector = createConnector(params.useNIO, params.port, settings.getInteger(Keys.server.threadPoolSize, 50));
|
| | | 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, params.securePort, params.requireClientCertificates);
|
| | | caRevocationList, params.useNIO, params.securePort, settings.getInteger(Keys.server.threadPoolSize, 50), params.requireClientCertificates);
|
| | | String bindInterface = settings.getString(Keys.server.httpsBindInterface, null);
|
| | | if (!StringUtils.isEmpty(bindInterface)) {
|
| | | logger.warn(MessageFormat.format(
|
| | |
| | | // Override settings from the command-line
|
| | | settings.overrideSetting(Keys.realm.userService, params.userService);
|
| | | settings.overrideSetting(Keys.git.repositoriesFolder, params.repositoriesFolder);
|
| | | settings.overrideSetting(Keys.git.daemonPort, params.gitPort);
|
| | |
|
| | | // Start up an in-memory LDAP server, if configured
|
| | | try {
|
| | |
| | | *
|
| | | * @param useNIO
|
| | | * @param port
|
| | | * @param threadPoolSize
|
| | | * @return an http connector
|
| | | */
|
| | | private Connector createConnector(boolean useNIO, int port) {
|
| | | private Connector createConnector(boolean useNIO, int port, int threadPoolSize) {
|
| | | Connector connector;
|
| | | if (useNIO) {
|
| | | logger.info("Setting up NIO SelectChannelConnector on port " + port);
|
| | | SelectChannelConnector nioconn = new SelectChannelConnector();
|
| | | nioconn.setSoLingerTime(-1);
|
| | | nioconn.setThreadPool(new QueuedThreadPool(20));
|
| | | if (threadPoolSize > 0) {
|
| | | nioconn.setThreadPool(new QueuedThreadPool(threadPoolSize));
|
| | | }
|
| | | connector = nioconn;
|
| | | } else {
|
| | | logger.info("Setting up SocketConnector on port " + port);
|
| | | SocketConnector sockconn = new SocketConnector();
|
| | | if (threadPoolSize > 0) {
|
| | | sockconn.setThreadPool(new QueuedThreadPool(threadPoolSize));
|
| | | }
|
| | | connector = sockconn;
|
| | | }
|
| | |
|
| | |
| | | * @param caRevocationList
|
| | | * @param useNIO
|
| | | * @param port
|
| | | * @param threadPoolSize
|
| | | * @param requireClientCertificates
|
| | | * @return an https connector
|
| | | */
|
| | | private Connector createSSLConnector(String certAlias, File keyStore, File clientTrustStore,
|
| | | String storePassword, File caRevocationList, boolean useNIO, int port, |
| | | String storePassword, File caRevocationList, boolean useNIO, int port, int threadPoolSize, |
| | | boolean requireClientCertificates) {
|
| | | GitblitSslContextFactory factory = new GitblitSslContextFactory(certAlias,
|
| | | keyStore, clientTrustStore, storePassword, caRevocationList);
|
| | |
| | | } else {
|
| | | factory.setWantClientAuth(true);
|
| | | }
|
| | | ssl.setThreadPool(new QueuedThreadPool(20));
|
| | | if (threadPoolSize > 0) {
|
| | | ssl.setThreadPool(new QueuedThreadPool(threadPoolSize));
|
| | | }
|
| | | connector = ssl;
|
| | | } else {
|
| | | logger.info("Setting up NIO SslSocketConnector on port " + port);
|
| | | SslSocketConnector ssl = new SslSocketConnector(factory);
|
| | | if (threadPoolSize > 0) {
|
| | | ssl.setThreadPool(new QueuedThreadPool(threadPoolSize));
|
| | | }
|
| | | connector = ssl;
|
| | | }
|
| | | connector.setPort(port);
|
| | |
| | | @Parameter(names = "--ajpPort", description = "AJP port to serve. (port <= 0 will disable this connector)")
|
| | | public Integer ajpPort = FILESETTINGS.getInteger(Keys.server.ajpPort, 0);
|
| | |
|
| | | @Parameter(names = "--gitPort", description = "Git Daemon port to serve. (port <= 0 will disable this connector)")
|
| | | public Integer gitPort = FILESETTINGS.getInteger(Keys.git.daemonPort, 9418);
|
| | |
|
| | | @Parameter(names = "--alias", description = "Alias of SSL certificate in keystore for serving https.")
|
| | | public String alias = FILESETTINGS.getString(Keys.server.certificateAlias, "");
|
| | |
|