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

java.lang.Object
io.helidon.common.features.metadata.FeatureMetadata.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:
FeatureMetadata.Builder
Enclosing interface:
FeatureMetadata

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

    • BuilderBase

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

    • from

      public BUILDER from(FeatureMetadata 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(FeatureMetadata.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
    • module

      public BUILDER module(String module)
      Module name.
      Parameters:
      module - module name
      Returns:
      updated builder instance
      See Also:
    • name

      public BUILDER name(String name)
      Feature name.
      Parameters:
      name - feature name
      Returns:
      updated builder instance
      See Also:
    • clearDescription

      public BUILDER clearDescription()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • description

      public BUILDER description(String description)
      Feature description.
      Parameters:
      description - description
      Returns:
      updated builder instance
      See Also:
    • path

      public BUILDER path(List<String> path)
      Feature path.
      Parameters:
      path - path
      Returns:
      updated builder instance
      See Also:
    • addPath

      public BUILDER addPath(List<String> path)
      Feature path.
      Parameters:
      path - path
      Returns:
      updated builder instance
      See Also:
    • clearSince

      public BUILDER clearSince()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • since

      public BUILDER since(String since)
      First version of Helidon this feature was in.
      Parameters:
      since - since version
      Returns:
      updated builder instance
      See Also:
    • flavors

      public BUILDER flavors(List<? extends Flavor> flavors)
      Which flavor(s) should print this feature.
      Parameters:
      flavors - flavors
      Returns:
      updated builder instance
      See Also:
    • addFlavors

      public BUILDER addFlavors(List<? extends Flavor> flavors)
      Which flavor(s) should print this feature.
      Parameters:
      flavors - flavors
      Returns:
      updated builder instance
      See Also:
    • addFlavor

      public BUILDER addFlavor(Flavor flavor)
      Which flavor(s) should print this feature.
      Parameters:
      flavor - flavors
      Returns:
      updated builder instance
      See Also:
    • invalidFlavors

      public BUILDER invalidFlavors(List<? extends Flavor> invalidFlavors)
      In which flavor we should warn that this feature is present on classpath.
      Parameters:
      invalidFlavors - flavors
      Returns:
      updated builder instance
      See Also:
    • addInvalidFlavors

      public BUILDER addInvalidFlavors(List<? extends Flavor> invalidFlavors)
      In which flavor we should warn that this feature is present on classpath.
      Parameters:
      invalidFlavors - flavors
      Returns:
      updated builder instance
      See Also:
    • addInvalidFlavor

      public BUILDER addInvalidFlavor(Flavor invalidFlavor)
      In which flavor we should warn that this feature is present on classpath.
      Parameters:
      invalidFlavor - flavors
      Returns:
      updated builder instance
      See Also:
    • clearAot

      public BUILDER clearAot()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • aot

      public BUILDER aot(Aot aot)
      Ahead of time compilation information (native-image).
      Parameters:
      aot - AOT information
      Returns:
      updated builder instance
      See Also:
    • aot

      public BUILDER aot(Consumer<Aot.Builder> consumer)
      Ahead of time compilation information (native-image).
      Parameters:
      consumer - AOT information
      Returns:
      updated builder instance
      See Also:
    • clearDeprecation

      public BUILDER clearDeprecation()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • deprecation

      public BUILDER deprecation(Deprecation deprecation)
      Deprecation information.
      Parameters:
      deprecation - deprecation info
      Returns:
      updated builder instance
      See Also:
    • deprecation

      public BUILDER deprecation(Consumer<Deprecation.Builder> consumer)
      Deprecation information.
      Parameters:
      consumer - deprecation info
      Returns:
      updated builder instance
      See Also:
    • status

      public BUILDER status(FeatureStatus status)
      Feature status.
      Parameters:
      status - status
      Returns:
      updated builder instance
      See Also:
    • module

      public Optional<String> module()
      Module name.
      Returns:
      the module
    • name

      public Optional<String> name()
      Feature name.
      Returns:
      the name
    • description

      public Optional<String> description()
      Feature description.
      Returns:
      the description
    • path

      public List<String> path()
      Feature path.
      Returns:
      the path
    • since

      public Optional<String> since()
      First version of Helidon this feature was in.
      Returns:
      the since
    • flavors

      public List<Flavor> flavors()
      Which flavor(s) should print this feature.
      Returns:
      the flavors
    • invalidFlavors

      public List<Flavor> invalidFlavors()
      In which flavor we should warn that this feature is present on classpath.
      Returns:
      the invalid flavors
    • aot

      public Optional<Aot> aot()
      Ahead of time compilation information (native-image).
      Returns:
      the aot
    • deprecation

      public Optional<Deprecation> deprecation()
      Deprecation information.
      Returns:
      the deprecation
    • status

      public Optional<FeatureStatus> status()
      Feature status.
      Returns:
      the status
    • toString

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

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

      protected void validatePrototype()
      Validates required properties.