Class SmileConfig.BuilderBase<BUILDER extends SmileConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends SmileConfig>

java.lang.Object
io.helidon.json.smile.SmileConfig.BuilderBase<BUILDER,PROTOTYPE>
Type Parameters:
BUILDER - type of the builder extending this abstract builder
PROTOTYPE - type of the prototype interface that would be built by Prototype.Builder.buildPrototype()
All Implemented Interfaces:
Prototype.Builder<BUILDER,PROTOTYPE>
Direct Known Subclasses:
SmileConfig.Builder
Enclosing interface:
SmileConfig

public abstract static class SmileConfig.BuilderBase<BUILDER extends SmileConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends SmileConfig> extends Object implements Prototype.Builder<BUILDER,PROTOTYPE>
Fluent API builder base for SmileConfig.
  • Constructor Details

    • BuilderBase

      protected BuilderBase()
      Protected to support extensibility.
  • Method Details

    • from

      public BUILDER from(SmileConfig prototype)
      Update this builder from an existing prototype instance. This method disables automatic service discovery.
      Parameters:
      prototype - existing prototype to update this builder from
      Returns:
      updated builder instance
    • from

      public BUILDER from(SmileConfig.BuilderBase<?,?> builder)
      Update this builder from an existing prototype builder instance.
      Parameters:
      builder - existing builder prototype to update this builder from
      Returns:
      updated builder instance
    • sharedKeyStrings

      public BUILDER sharedKeyStrings(boolean sharedKeyStrings)
      Whether to enable shared key string references.
      Parameters:
      sharedKeyStrings - true to enable shared key string references, defaults to true
      Returns:
      updated builder instance
      See Also:
    • sharedValueStrings

      public BUILDER sharedValueStrings(boolean sharedValueStrings)
      Whether to enable shared value string references.
      Parameters:
      sharedValueStrings - true to enable shared value string references
      Returns:
      updated builder instance
      See Also:
    • rawBinaryEnabled

      public BUILDER rawBinaryEnabled(boolean rawBinaryEnabled)
      Whether to allow raw binary values in Smile content.
      Parameters:
      rawBinaryEnabled - true to allow raw binary values
      Returns:
      updated builder instance
      See Also:
    • emitEndMark

      public BUILDER emitEndMark(boolean emitEndMark)
      Whether to emit the optional Smile end marker when closing a generator.
      Parameters:
      emitEndMark - true to emit the end marker
      Returns:
      updated builder instance
      See Also:
    • sharedKeyStrings

      public boolean sharedKeyStrings()
      Whether to enable shared key string references.
      Returns:
      true to enable shared key string references, defaults to true
    • sharedValueStrings

      public boolean sharedValueStrings()
      Whether to enable shared value string references.
      Returns:
      true to enable shared value string references
    • rawBinaryEnabled

      public boolean rawBinaryEnabled()
      Whether to allow raw binary values in Smile content.
      Returns:
      true to allow raw binary values
    • emitEndMark

      public boolean emitEndMark()
      Whether to emit the optional Smile end marker when closing a generator.
      Returns:
      true to emit the end marker
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • preBuildPrototype

      protected void preBuildPrototype()
      Handles providers and decorators.
    • validatePrototype

      protected void validatePrototype()
      Validates required properties.