Interface GlueApplication.Builder<B extends GlueApplication.Builder<B,A>,A extends GlueApplication>

Type Parameters:
B - type of this builder
A - type of the application
All Known Subinterfaces:
Glue.Builder
All Known Implementing Classes:
Tick42Glue.Builder
Enclosing interface:
GlueApplication

public static interface GlueApplication.Builder<B extends GlueApplication.Builder<B,A>,A extends GlueApplication>
Helper to build a GlueApplication instance.
  • Method Details

    • withConfigLoader

      B withConfigLoader(Supplier<GlueConfig> configLoader)
      Set the configuration loader to use.
      Parameters:
      configLoader - configuration loader to use, not null
      Returns:
      this builder, never null
    • withApplicationName

      B withApplicationName(String applicationName)
      Set the desired application name.
      Parameters:
      applicationName - name to use, not null
      Returns:
      this builder, never null
      Since:
      1.3
    • withShutdownRequestListener

      @Deprecated B withShutdownRequestListener(Consumer<Glue> shutDownRequestListener)
      Set shutdown listener.
      Parameters:
      shutDownRequestListener - the listener to use, not null
      Returns:
      this builder, never null
      Since:
      1.3.8
    • withClickStreamMetrics

      <C, D> Glue.Builder withClickStreamMetrics(BiFunction<C,D,String> componentTextExtractor)
      Enables click-stream metrics and optionally passes a function to get text value from the clicked component.
      Type Parameters:
      C - type of the component
      D - type of additional parameter, required to extract the text from the component
      Parameters:
      componentTextExtractor - the extractor function to use, may be null
      Returns:
      this builder, never null
      Since:
      1.5.2
    • buildAsync

      CompletionStage<? extends A> buildAsync()
      Creates the Glue application with the options specified by this builder.
      Returns:
      a stage that completes when the Glue application is fully initialized, never null
    • build

      default A build()
      Convenience method to call buildAsync() and block on the result.
      Returns:
      Glue application instance, never null
      Throws:
      GlueException - if cannot build the instance