Interface PatternComponent

All Known Subinterfaces:
CountOnCustomLineItemUnits, CountOnLineItemUnits

public interface PatternComponent

The pattern component it used to define a set of units based on some criteria. The criteria depends on the type of component used.


Example to create a subtype instance using the builder pattern

     PatternComponent patternComponent = PatternComponent.countOnCustomLineItemUnitsBuilder()
             predicate("{predicate}")
             .build()
 
  • Method Details

    • getType

      @NotNull @NotNull String getType()
      Returns:
      type
    • deepCopy

      factory method to create a deep copy of PatternComponent
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • countOnCustomLineItemUnitsBuilder

      static CountOnCustomLineItemUnitsBuilder countOnCustomLineItemUnitsBuilder()
      builder for countOnCustomLineItemUnits subtype
      Returns:
      builder
    • countOnLineItemUnitsBuilder

      static CountOnLineItemUnitsBuilder countOnLineItemUnitsBuilder()
      builder for countOnLineItemUnits subtype
      Returns:
      builder
    • withPatternComponent

      default <T> T withPatternComponent(Function<PatternComponent,T> helper)
      accessor map function
      Type Parameters:
      T - mapped type
      Parameters:
      helper - function to map the object
      Returns:
      mapped value
    • typeReference

      static com.fasterxml.jackson.core.type.TypeReference<PatternComponent> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference