Class BaseModel<C extends org.eclipse.microprofile.openapi.models.Constructible>

java.lang.Object
io.smallrye.openapi.model.BaseModel<C>
Direct Known Subclasses:
BaseExtensibleModel

public abstract class BaseModel<C extends org.eclipse.microprofile.openapi.models.Constructible> extends Object
  • Field Details

  • Constructor Details

    • BaseModel

      protected BaseModel()
  • Method Details

    • deepCopy

      public static <O extends org.eclipse.microprofile.openapi.models.Constructible> O deepCopy(O other, Class<O> type)
    • merge

      public static <C extends org.eclipse.microprofile.openapi.models.Constructible, T extends BaseModel<C>> T merge(T object1, T object2)
    • incrementModCount

      protected void incrementModCount()
    • getModCount

      public int getModCount()
    • toString

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

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • constructible

      public C constructible()
      Access a BaseModel as its standard interface C
    • getPropertyMetadata

      public abstract PropertyMetadata getPropertyMetadata()
    • filter

      public C filter(org.eclipse.microprofile.openapi.OASFilter filter, Map<Object,Object> stack)
    • filter

      protected C filter(org.eclipse.microprofile.openapi.OASFilter filter)
      Apply the provided filter to this instance. This should be overridden by subclasses that have a relevant filter method defined in OASFilter. Note, this method may return a different instance or null, depending on the return from the filter.
      Parameters:
      filter - the OASFilter filter to apply to the instance
      Returns:
    • isExtension

      protected boolean isExtension(String name)
    • merge

      public <T extends BaseModel<C>> void merge(T other)
      Merge all properties from another BaseModel object into this one.
      Parameters:
      other - the other BaseModel object
    • mergeDirective

      protected BaseModel.MergeDirective mergeDirective(String name)
      Determine how the property indicated by name should be merged.
      Parameters:
      name - property name
    • getAllProperties

      public Map<String,Object> getAllProperties()
      Returns a read-only view of all properties.
    • setAllProperties

      public void setAllProperties(Map<String,?> allProperties)
    • getProperties

      protected <T> Map<String,T> getProperties(Class<T> type)
      Returns a read-only copy of all properties having type T, excluding extensions.
    • getProperty

      protected <T> T getProperty(String name)
    • getProperty

      protected <T> T getProperty(String name, Class<T> type)
    • setProperty

      public <T> void setProperty(String name, T value)
    • getListProperty

      protected <T> List<T> getListProperty(String name)
    • setListProperty

      protected <T> void setListProperty(String name, List<T> value)
    • addListPropertyEntry

      protected <T> void addListPropertyEntry(String name, T value)
    • removeListPropertyEntry

      protected <T> void removeListPropertyEntry(String name, T value)
    • getMapProperty

      protected <T> Map<String,T> getMapProperty(String name)
    • setMapProperty

      protected <T> void setMapProperty(String name, Map<String,T> value)
    • putMapPropertyEntry

      protected <V> void putMapPropertyEntry(String name, String key, V value)
    • removeMapPropertyEntry

      protected <V> void removeMapPropertyEntry(String name, String key)
    • getRef

      public String getRef()
    • setRef

      public void setRef(String ref)
    • getName

      public String getName()
    • setName

      public void setName(String newValue)
    • getSummary

      public String getSummary()
    • setSummary

      public void setSummary(String summary)
    • getDescription

      public String getDescription()
    • setDescription

      public void setDescription(String description)
    • getExternalDocs

      public org.eclipse.microprofile.openapi.models.ExternalDocumentation getExternalDocs()
    • setExternalDocs

      public void setExternalDocs(org.eclipse.microprofile.openapi.models.ExternalDocumentation newValue)