[grizzly] Expose `start` argument while providing `parentContext` (#5101)
diff --git a/containers/grizzly2-http/src/main/java/org/glassfish/jersey/grizzly2/httpserver/GrizzlyHttpServerFactory.java b/containers/grizzly2-http/src/main/java/org/glassfish/jersey/grizzly2/httpserver/GrizzlyHttpServerFactory.java index ee2a583..4164e3a 100644 --- a/containers/grizzly2-http/src/main/java/org/glassfish/jersey/grizzly2/httpserver/GrizzlyHttpServerFactory.java +++ b/containers/grizzly2-http/src/main/java/org/glassfish/jersey/grizzly2/httpserver/GrizzlyHttpServerFactory.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2022 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -194,6 +194,31 @@ /** * Create new {@link HttpServer} instance. * + * @param uri uri on which the {@link ApplicationHandler} will be deployed. Only first path + * segment will be used as context path, the rest will be ignored. + * @param config web application configuration. + * @param secure used for call {@link NetworkListener#setSecure(boolean)}. + * @param sslEngineConfigurator Ssl settings to be passed to {@link NetworkListener#setSSLEngineConfig}. + * @param parentContext DI provider specific context with application's registered bindings. + * @param start if set to false, server will not get started, this allows end users to set + * additional properties on the underlying listener. + * @return newly created {@code HttpServer}. + * @throws ProcessingException in case of any failure when creating a new {@code HttpServer} instance. + * @see GrizzlyHttpContainer + * @since 2.37 + */ + public static HttpServer createHttpServer(final URI uri, + final ResourceConfig config, + final boolean secure, + final SSLEngineConfigurator sslEngineConfigurator, + final Object parentContext, + final boolean start) { + return createHttpServer(uri, new GrizzlyHttpContainer(config, parentContext), secure, sslEngineConfigurator, start); + } + + /** + * Create new {@link HttpServer} instance. + * * @param uri uri on which the {@link ApplicationHandler} will be deployed. Only first path * segment will be used as context path, the rest will be ignored. * @param config web application configuration. @@ -212,6 +237,27 @@ /** * Create new {@link HttpServer} instance. * + * @param uri uri on which the {@link ApplicationHandler} will be deployed. Only first path + * segment will be used as context path, the rest will be ignored. + * @param config web application configuration. + * @param parentContext DI provider specific context with application's registered bindings. + * @param start if set to false, server will not get started, this allows end users to set + * additional properties on the underlying listener. + * @return newly created {@code HttpServer}. + * @throws ProcessingException in case of any failure when creating a new {@code HttpServer} instance. + * @see GrizzlyHttpContainer + * @since 2.37 + */ + public static HttpServer createHttpServer(final URI uri, + final ResourceConfig config, + final Object parentContext, + final boolean start) { + return createHttpServer(uri, new GrizzlyHttpContainer(config, parentContext), false, null, start); + } + + /** + * Create new {@link HttpServer} instance. + * * @param uri uri on which the {@link ApplicationHandler} will be deployed. Only first path * segment will be used as context path, the rest will be ignored. * @param handler {@link HttpHandler} instance.