Class Link


public class Link extends OpenApiElement
The Link object represents a possible design-time link for a response.

The Link Object represents a possible design-time link for a response. The presence of a link does not guarantee the caller's ability to successfully invoke it, rather it provides a known relationship and traversal mechanism between responses and other operations.

OpenAPI Specification:

The Link Object is composed of the following fields:

  • operationRef (string) - A relative or absolute reference to an OAS operation (mutually exclusive with operationId)
  • operationId (string) - The name of an existing, resolvable OAS operation (mutually exclusive with operationRef)
  • parameters (map of any) - A map representing parameters to pass to an operation as specified with operationId or identified via operationRef
  • requestBody (any) - A literal value or expression to use as a request body when calling the target operation
  • description (string) - A description of the link (CommonMark syntax may be used)
  • server (Server) - A server object to be used by the target operation
Example:

// Create a link to another operation Link link = new Link() .setOperationId("getUserById") .setParameters( JsonMap.of("userId", "$response.body#/id") ) .setDescription("The id value returned in the response can be used as userId parameter in GET /users/{userId}");

See Also:
  • Constructor Details

    • Link

      public Link()
      Default constructor.
    • Link

      public Link(Link copyFrom)
      Copy constructor.
      Parameters:
      copyFrom - The object to copy.
  • Method Details

    • copy

      public Link copy()
      Make a deep copy of this object.
      Returns:
      A deep copy of this object.
    • getOperationRef

      Bean property getter: operationRef.

      The identifying name of the contact person/organization.

      Returns:
      The property value, or null if it is not set.
    • setOperationRef

      public Link setOperationRef(String value)
      Bean property setter: operationRef.

      The identifying name of the contact person/organization.

      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getDescription

      Bean property getter: description.

      The URL pointing to the contact information.

      Returns:
      The property value, or null if it is not set.
    • setDescription

      public Link setDescription(String value)
      Bean property setter: description.
      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getOperationId

      Bean property getter: externalValue.

      The email address of the contact person/organization.

      Returns:
      The property value, or null if it is not set.
    • setOperationId

      public Link setOperationId(String value)
      Bean property setter: externalValue.

      The email address of the contact person/organization.

      Parameters:
      value - The new value for this property.
      MUST be in the format of an email address.
      Can be null to unset the property.
      Returns:
      This object
    • getRequestBody

      Bean property getter: default.

      Declares the value of the parameter that the server will use if none is provided, for example a "count" to control the number of results per page might default to 100 if not supplied by the client in the request. (Note: "value" has no meaning for required parameters.) Unlike JSON Schema this value MUST conform to the defined type for this parameter.

      Returns:
      The property value, or null if it is not set.
    • setRequestBody

      public Link setRequestBody(Object val)
      Bean property setter: value.

      Declares the value of the parameter that the server will use if none is provided, for example a "count" to control the number of results per page might default to 100 if not supplied by the client in the request. (Note: "default" has no meaning for required parameters.) Unlike JSON Schema this value MUST conform to the defined type for this parameter.

      Parameters:
      val - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getServer

      public Server getServer()
      Bean property getter: additionalProperties.
      Returns:
      The property value, or null if it is not set.
    • setServer

      public Link setServer(Server value)
      Bean property setter: additionalProperties.
      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getParameters

      Bean property getter: examples.

      An example of the response message.

      Returns:
      The property value, or null if it is not set.
    • setParameters

      public Link setParameters(Map<String,Object> value)
      Bean property setter: examples.

      An example of the response message.

      Parameters:
      value - The new value for this property.
      Keys must be MIME-type strings.
      Can be null to unset the property.
      Returns:
      This object
    • addParameter

      public Link addParameter(String mimeType, Object parameter)
      Adds a single value to the examples property.
      Parameters:
      mimeType - The mime-type string. Must not be null.
      parameter - The example. Must not be null.
      Returns:
      This object
    • get

      public <T> T get(String property, Class<T> type)
      Description copied from class: OpenApiElement
      Generic property getter.

      Can be used to retrieve non-standard Swagger fields such as "$ref".

      Overrides:
      get in class OpenApiElement
      Type Parameters:
      T - The datatype to cast the value to.
      Parameters:
      property - The property name to retrieve.
      type - The datatype to cast the value to.
      Returns:
      The property value, or null if the property does not exist or is not set.
    • set

      public Link set(String property, Object value)
      Description copied from class: OpenApiElement
      Generic property setter.

      Can be used to set non-standard Swagger fields such as "$ref".

      Overrides:
      set in class OpenApiElement
      Parameters:
      property - The property name to set. Must not be null.
      value - The new value for the property.
      Returns:
      This object
    • keySet

      public Set<String> keySet()
      Description copied from class: OpenApiElement
      Returns all the keys on this element.
      Overrides:
      keySet in class OpenApiElement
      Returns:
      All the keys on this element.
      Never null.
    • strict

      public Link strict()
      Description copied from class: OpenApiElement
      Sets strict mode on this bean.
      Overrides:
      strict in class OpenApiElement
      Returns:
      This object
    • strict

      public Link strict(Object value)
      Description copied from class: OpenApiElement
      Sets strict mode on this bean.
      Overrides:
      strict in class OpenApiElement
      Parameters:
      value - The new value for this property.
      Non-boolean values will be converted to boolean using Boolean.valueOf(value.toString()).
      Can be null (interpreted as false).
      Returns:
      This object