Interface ParserTypeCombined

All Superinterfaces:
Type

@Immutable public interface ParserTypeCombined extends Type
Type representing a synthetic combined class during parsing. This comes from properties that may have oneof-references to multiple DTOs but no discriminator. Solve by (inelegantly) combining all properties from referenced DTOs into a synthetic DTO. May be able to merge with ParserTypeComposite.
  • Method Details

    • of

      static ParserTypeCombined of(TypeName typeName, List<ParserTypeRef> combinesTypes)
      Creates a type for a combined class.
      Parameters:
      typeName - the class type name
      combinesTypes - the parser references combined in this type
      Returns:
      a combined type
    • combinesTypes

      List<ParserTypeRef> combinesTypes()
      Returns the parser references to the DTOs combined by this type.
      Returns:
      the parser references to the DTOs combined by this type
    • internalDtos

      default List<Dto> internalDtos()
      Returns a list of the referenced DTOs in this combined DTO. This can be called during parsing.
      Returns:
      a list of the referenced DTOs in this combined DTO
    • externalDtoReferences

      default List<TypeName> externalDtoReferences()
      Returns a list of the externally referenced type names.
      Returns:
      a list of the externally referenced type names