Class ModelIO<T,V,A extends V,O extends V,AB,OB>

java.lang.Object
io.smallrye.openapi.runtime.io.ModelIO<T,V,A,O,AB,OB>
Direct Known Subclasses:
APIResponsesIO, ComponentsIO, ContactIO, ContentIO, DiscriminatorIO, ExternalDocumentationIO, InfoIO, LicenseIO, MapModelIO, MediaTypeIO, OAuthFlowIO, OAuthFlowsIO, OpenAPIDefinitionIO, OperationIO, PathItemIO, PathsIO, SecurityRequirementIO, SecurityRequirementsSetIO, ServerIO, TagIO

public abstract class ModelIO<T,V,A extends V,O extends V,AB,OB> extends Object
  • Field Details

    • annotationName

      protected final org.jboss.jandex.DotName annotationName
    • modelName

      protected final org.jboss.jandex.DotName modelName
  • Constructor Details

    • ModelIO

      protected ModelIO(IOContext<V,A,O,AB,OB> context, org.jboss.jandex.DotName annotationName, org.jboss.jandex.DotName modelName)
  • Method Details

    • ioContext

      public IOContext<V,A,O,AB,OB> ioContext()
    • jsonIO

      public JsonIO<V,A,O,AB,OB> jsonIO()
    • scannerContext

      public AnnotationScannerContext scannerContext()
    • setIfPresent

      protected void setIfPresent(OB object, String key, Optional<? extends V> valueSource)
    • setAllIfPresent

      protected void setAllIfPresent(OB object, Optional<? extends O> valueSource)
    • optionalJsonObject

      protected Optional<OB> optionalJsonObject(Object source)
    • optionalJsonArray

      protected Optional<AB> optionalJsonArray(Object source)
    • entry

      protected static <T> Map.Entry<String,T> entry(String key, T value)
    • value

      protected <P> P value(org.jboss.jandex.AnnotationInstance annotation, String propertyName)
    • value

      protected <P> P value(org.jboss.jandex.AnnotationInstance annotation, String propertyName, P defaultValue)
    • enumValue

      protected <P extends Enum<P>> P enumValue(org.jboss.jandex.AnnotationInstance annotation, String propertyName, Class<P> type)
    • enumValue

      protected <P extends Enum<P>> P enumValue(V value, Class<P> type)
    • getName

      protected Optional<String> getName(org.jboss.jandex.AnnotationInstance annotation, String nameProperty)
    • getName

      protected Optional<String> getName(org.jboss.jandex.AnnotationInstance annotation)
    • not

      protected static <T> Predicate<T> not(Predicate<? super T> predicate)
    • toLinkedMap

      protected static <T> Collector<Map.Entry<String,T>,?,Map<String,T>> toLinkedMap()
    • getAnnotation

      public org.jboss.jandex.AnnotationInstance getAnnotation(org.jboss.jandex.AnnotationTarget target)
    • getRepeatableAnnotations

      public List<org.jboss.jandex.AnnotationInstance> getRepeatableAnnotations(org.jboss.jandex.AnnotationTarget target)
    • hasRepeatableAnnotation

      public boolean hasRepeatableAnnotation(org.jboss.jandex.AnnotationTarget target)
    • read

      public T read(org.jboss.jandex.AnnotationTarget target)
    • read

      public T read(org.jboss.jandex.AnnotationValue annotation)
    • read

      public abstract T read(org.jboss.jandex.AnnotationInstance annotation)
    • readValue

      public T readValue(V node)
    • readObject

      public abstract T readObject(O node)
    • write

      public abstract Optional<O> write(T model)