Class ContextFeature

java.lang.Object
io.helidon.webserver.context.ContextFeature
All Implemented Interfaces:
RuntimeType.Api<io.helidon.webserver.context.ContextFeatureConfig>, NamedService, ServerFeature

public class ContextFeature extends Object implements ServerFeature, RuntimeType.Api<io.helidon.webserver.context.ContextFeatureConfig>
Adds Context support to Helidon WebServer. When added to the processing, further processing will be executed in a request specific context.
  • Field Details

    • WEIGHT

      public static final double WEIGHT
      Default weight of the feature. It is quite high, as context is used by a lot of other features.
      See Also:
  • Method Details

    • builder

      public static io.helidon.webserver.context.ContextFeatureConfig.Builder builder()
      Fluent API builder to set up an instance.
      Returns:
      a new builder
    • create

      public static ContextFeature create(io.helidon.webserver.context.ContextFeatureConfig config)
      Create a new instance from its configuration.
      Parameters:
      config - configuration
      Returns:
      a new feature
    • create

      public static ContextFeature create(Consumer<io.helidon.webserver.context.ContextFeatureConfig.Builder> builderConsumer)
      Create a new instance customizing its configuration.
      Parameters:
      builderConsumer - consumer of configuration
      Returns:
      a new feature
    • create

      public static ContextFeature create()
      Create a new context feature with default setup.
      Returns:
      a new feature
    • create

      public static ContextFeature create(Config config)
      Create a new context feature with custom setup.
      Parameters:
      config - configuration
      Returns:
      a new configured feature
    • setup

      public void setup(ServerFeature.ServerFeatureContext featureContext)
      Description copied from interface: ServerFeature
      Set up a server feature. Server features can modify server configuration, right before the server is created. To access listener configuration, or routing, a list of all listeners is provided.
      Specified by:
      setup in interface ServerFeature
      Parameters:
      featureContext - to access builders of webserver, listeners, and routing
    • name

      public String name()
      Description copied from interface: NamedService
      Name of this implementation, as provided in ConfiguredProvider.create(Config, String).
      Specified by:
      name in interface NamedService
      Returns:
      name of this service
    • type

      public String type()
      Description copied from interface: NamedService
      Type of this implementation, to distinguish instances of same type, with different NamedService.name(). Use for example ConfiguredProvider.configKey() to define the type.
      Specified by:
      type in interface NamedService
      Returns:
      type of this service
    • prototype

      public io.helidon.webserver.context.ContextFeatureConfig prototype()
      Description copied from interface: RuntimeType.Api
      The prototype as it was received when creating this runtime object instance.
      Specified by:
      prototype in interface RuntimeType.Api<io.helidon.webserver.context.ContextFeatureConfig>
      Returns:
      prototype object used to create this instance