You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by sebb <se...@gmail.com> on 2014/06/25 17:00:57 UTC

Re: svn commit: r1605335 - /httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java

On 25 June 2014 12:15,  <ol...@apache.org> wrote:
> Author: olegk
> Date: Wed Jun 25 11:15:06 2014
> New Revision: 1605335
>
> URL: http://svn.apache.org/r1605335
> Log:
> Option to provide a custom server socket factory
>
> Modified:
>     httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java
>
> Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java
> URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java?rev=1605335&r1=1605334&r2=1605335&view=diff
> ==============================================================================
> --- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java (original)
> +++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java Wed Jun 25 11:15:06 2014
> @@ -78,6 +78,7 @@ public class ServerBootstrap {
>      private HttpRequestHandlerMapper handlerMapper;
>      private Map<String, HttpRequestHandler> handlerMap;
>      private HttpExpectationVerifier expectationVerifier;
> +    private ServerSocketFactory serverSocketFactory;
>      private SSLContext sslContext;
>      private HttpConnectionFactory<? extends DefaultBHttpServerConnection> connectionFactory;
>      private ExceptionLogger exceptionLogger;
> @@ -274,7 +275,18 @@ public class ServerBootstrap {
>      }
>
>      /**
> +     * Assigns {@link javax.net.ServerSocketFactory} instance.

@since marker?

> +     */
> +    public final ServerBootstrap setServerSocketFactory(final ServerSocketFactory serverSocketFactory) {
> +        this.serverSocketFactory = serverSocketFactory;
> +        return this;
> +    }
> +
> +    /**
>       * Assigns {@link javax.net.ssl.SSLContext} instance.
> +     * <p/>
> +     * Please note this value can be overridden by the {@link #setServerSocketFactory(
> +     *   javax.net.ServerSocketFactory)} method.
>       */
>      public final ServerBootstrap setSslContext(final SSLContext sslContext) {
>          this.sslContext = sslContext;
> @@ -354,11 +366,13 @@ public class ServerBootstrap {
>                  httpProcessorCopy, connStrategyCopy, responseFactoryCopy, handlerMapperCopy,
>                  this.expectationVerifier);
>
> -        final ServerSocketFactory serverSocketFactory;
> -        if (this.sslContext != null) {
> -            serverSocketFactory = this.sslContext.getServerSocketFactory();
> -        } else {
> -            serverSocketFactory = ServerSocketFactory.getDefault();
> +        ServerSocketFactory serverSocketFactoryCopy = this.serverSocketFactory;
> +        if (serverSocketFactoryCopy == null) {
> +            if (this.sslContext != null) {
> +                serverSocketFactoryCopy = this.sslContext.getServerSocketFactory();
> +            } else {
> +                serverSocketFactoryCopy = ServerSocketFactory.getDefault();
> +            }
>          }
>
>          HttpConnectionFactory<? extends DefaultBHttpServerConnection> connectionFactoryCopy = this.connectionFactory;
> @@ -379,7 +393,7 @@ public class ServerBootstrap {
>                  this.listenerPort > 0 ? this.listenerPort : 0,
>                  this.localAddress,
>                  this.socketConfig != null ? this.socketConfig : SocketConfig.DEFAULT,
> -                serverSocketFactory,
> +                serverSocketFactoryCopy,
>                  httpService,
>                  connectionFactoryCopy,
>                  exceptionLoggerCopy);
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Re: svn commit: r1605335

Posted by Oleg Kalnichevski <ol...@apache.org>.
On Wed, 2014-06-25 at 16:00 +0100, sebb wrote:
> On 25 June 2014 12:15,  <ol...@apache.org> wrote:
> > Author: olegk
> > Date: Wed Jun 25 11:15:06 2014
> > New Revision: 1605335
> >
> > URL: http://svn.apache.org/r1605335
> > Log:
> > Option to provide a custom server socket factory
> >
> > Modified:
> >     httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java
> >
> > Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java
> > URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java?rev=1605335&r1=1605334&r2=1605335&view=diff
> > ==============================================================================
> > --- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java (original)
> > +++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/bootstrap/ServerBootstrap.java Wed Jun 25 11:15:06 2014
> > @@ -78,6 +78,7 @@ public class ServerBootstrap {
> >      private HttpRequestHandlerMapper handlerMapper;
> >      private Map<String, HttpRequestHandler> handlerMap;
> >      private HttpExpectationVerifier expectationVerifier;
> > +    private ServerSocketFactory serverSocketFactory;
> >      private SSLContext sslContext;
> >      private HttpConnectionFactory<? extends DefaultBHttpServerConnection> connectionFactory;
> >      private ExceptionLogger exceptionLogger;
> > @@ -274,7 +275,18 @@ public class ServerBootstrap {
> >      }
> >
> >      /**
> > +     * Assigns {@link javax.net.ServerSocketFactory} instance.
> 
> @since marker?
> 

It is a completely new class added in 4.4. See line 62. 

Oleg


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org