Interface FieldType

All Known Subinterfaces:
CustomFieldBooleanType, CustomFieldDateTimeType, CustomFieldDateType, CustomFieldEnumType, CustomFieldLocalizedEnumType, CustomFieldLocalizedStringType, CustomFieldMoneyType, CustomFieldNumberType, CustomFieldReferenceType, CustomFieldSetType, CustomFieldStringType, CustomFieldTimeType

public interface FieldType

Defines the data type of a Custom Field. Maps to Type.FieldDefinition.type. The discriminator is used to determine the type of the field.


Example to create a subtype instance using the builder pattern

     FieldType fieldType = FieldType.booleanBuilder()
             .build()
 
  • Method Details

    • getName

      @NotNull @NotNull String getName()

      Name of the field type. Must be unique for a given ResourceTypeId. In case there is a FieldDefinition with the same name in another Type, both FieldDefinitions must have the same type. This value cannot be changed after the Type is imported.

      Returns:
      name
    • copyDeep

      FieldType copyDeep()
    • deepCopy

      @Nullable static FieldType deepCopy(@Nullable FieldType template)
      factory method to create a deep copy of FieldType
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • booleanBuilder

      static CustomFieldBooleanTypeBuilder booleanBuilder()
      builder for boolean subtype
      Returns:
      builder
    • dateTimeBuilder

      static CustomFieldDateTimeTypeBuilder dateTimeBuilder()
      builder for dateTime subtype
      Returns:
      builder
    • dateBuilder

      static CustomFieldDateTypeBuilder dateBuilder()
      builder for date subtype
      Returns:
      builder
    • enumBuilder

      static CustomFieldEnumTypeBuilder enumBuilder()
      builder for enum subtype
      Returns:
      builder
    • localizedEnumBuilder

      static CustomFieldLocalizedEnumTypeBuilder localizedEnumBuilder()
      builder for localizedEnum subtype
      Returns:
      builder
    • localizedStringBuilder

      static CustomFieldLocalizedStringTypeBuilder localizedStringBuilder()
      builder for localizedString subtype
      Returns:
      builder
    • moneyBuilder

      static CustomFieldMoneyTypeBuilder moneyBuilder()
      builder for money subtype
      Returns:
      builder
    • numberBuilder

      static CustomFieldNumberTypeBuilder numberBuilder()
      builder for number subtype
      Returns:
      builder
    • referenceBuilder

      static CustomFieldReferenceTypeBuilder referenceBuilder()
      builder for reference subtype
      Returns:
      builder
    • setBuilder

      static CustomFieldSetTypeBuilder setBuilder()
      builder for set subtype
      Returns:
      builder
    • stringBuilder

      static CustomFieldStringTypeBuilder stringBuilder()
      builder for string subtype
      Returns:
      builder
    • timeBuilder

      static CustomFieldTimeTypeBuilder timeBuilder()
      builder for time subtype
      Returns:
      builder
    • withFieldType

      default <T> T withFieldType(Function<FieldType,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<FieldType> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference