All Superinterfaces:
Constructible, Extensible<Callback>, Map<String,PathItem>, Reference<Callback>

public interface Callback extends Constructible, Extensible<Callback>, Reference<Callback>, Map<String,PathItem>
Callback

A map of possible out-of-band callbacks related to the parent operation. Each value in the map is a Path Item Object that describes a set of requests that may be initiated by the API provider and the expected responses. The key value used to identify the callback object is an expression, evaluated at runtime, that identifies a URL to use for the callback operation.

See Also:
  • Method Details

    • addPathItem

      Callback addPathItem(String name, PathItem pathItem)
      Adds the given PathItem to this Callback's list of PathItems using the string as its key. The key that identifies the Path Item Object is a runtime expression that can be evaluated in the context of a runtime HTTP request/response to identify the URL to be used for the callback request. A simple example might be $request.body#/url. However, using a runtime expression the complete HTTP message can be accessed. This includes accessing any part of a body that a JSON Pointer RFC6901 can reference.
      Parameters:
      name - a runtime expression that can be evaluated in the context of a runtime HTTP request/response
      pathItem - a path to add to this Callback's list of PathItems. null values will be rejected (implementation will throw an exception) or ignored.
      Returns:
      the current Callback instance
    • removePathItem

      void removePathItem(String name)
      Removes the given path item of the Callback PathItems.
      Parameters:
      name - a path name that will be removed.
    • getPathItems

      Map<String,PathItem> getPathItems()
      Returns a copy map (potentially immutable) of the path items.
      Returns:
      all items
    • setPathItems

      void setPathItems(Map<String,PathItem> items)
      Set the path items map to this Callback.
      Parameters:
      items - a map containing the list of paths.
    • hasPathItem

      default boolean hasPathItem(String name)
      Check whether a path item is present to the map. This is a convenience method for getPathItems().containsKey(name)
      Parameters:
      name - a path name in the format valid for a Paths object.
      Returns:
      a boolean to indicate if the path item is present or not.
    • getPathItem

      default PathItem getPathItem(String name)
      Returns a path item for a given name. This is a convenience method for getPathItems().get(name)
      Parameters:
      name - a path name in the format valid for a Paths object.
      Returns:
      the corresponding path item or null.
    • get

      Deprecated.
      since 1.1
      In the next version, Callback will no longer extends Map, this method will no longer be present. Use getPathItem(String) instead.
      Specified by:
      get in interface Map<String,PathItem>
    • containsKey

      @Deprecated boolean containsKey(Object key)
      Deprecated.
      since 1.1
      In the next version, Callback will no longer extends Map, this method will no longer be present. Use hasPathItem(String) instead.
      Specified by:
      containsKey in interface Map<String,PathItem>
    • put

      @Deprecated PathItem put(String key, PathItem value)
      Deprecated.
      since 1.1
      In the next version, Callback will no longer extends Map, this method will no longer be present. Use addPathItem(String, PathItem) instead.
      Specified by:
      put in interface Map<String,PathItem>
    • putAll

      @Deprecated void putAll(Map<? extends String,? extends PathItem> m)
      Deprecated.
      since 1.1
      In the next version, Callback will no longer extends Map, this method will no longer be present. Use setPathItems(Map) instead.
      Specified by:
      putAll in interface Map<String,PathItem>
    • remove

      Deprecated.
      since 1.1
      In the next version, Callback will no longer extends Map, this method will no longer be present. Use removePathItem(String) instead.
      Specified by:
      remove in interface Map<String,PathItem>