Class MapBasedModelImpl

java.lang.Object
io.smallrye.openapi.api.models.MapBasedModelImpl
All Implemented Interfaces:
ModelImpl
Direct Known Subclasses:
SchemaImpl

public abstract class MapBasedModelImpl extends Object implements ModelImpl
Base implementation for extensible model objects which wrap a map of properties
  • Field Details

  • Constructor Details

    • MapBasedModelImpl

      protected MapBasedModelImpl()
  • Method Details

    • mergeFrom

      public MapBasedModelImpl mergeFrom(MapBasedModelImpl other)
      Merge all properties from another map-based model object into this one

      Usually this method will return this, but it may return other or a new object.

      Parameters:
      other - the other map-based model object
      Returns:
      the merged object
    • getDataMap

      public Map<String,Object> getDataMap()
    • setProperty

      protected <T> void setProperty(String propertyName, T value)
    • getProperty

      protected <T> T getProperty(String propertyName, Class<T> type)
    • getListProperty

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

      protected <T> void setListProperty(String propertyName, List<T> value)
    • addToListProperty

      protected <T> void addToListProperty(String propertyName, T value)
    • removeFromListProperty

      protected <T> void removeFromListProperty(String propertyName, T toRemove)
    • setMapProperty

      protected <T> void setMapProperty(String propertyName, Map<String,T> value)
    • getMapProperty

      protected <T> Map<String,T> getMapProperty(String propertyName)
    • addToMapProperty

      protected <T> void addToMapProperty(String propertyName, String key, T value)
    • removeFromMapProperty

      protected <T> void removeFromMapProperty(String propertyName, String key)
    • getNonMergableCollections

      protected Set<String> getNonMergableCollections()
      Return a list of properties whose values should not be merged even if they're collections
      Returns:
      a list of properties which should be overwritten rather than merged