Module org.eclipse.microprofile.openapi
Package org.eclipse.microprofile.openapi.models

# Interface Components

All Superinterfaces:
  `Constructible`, `Extensible<Components>`

public interface Components extends Constructible, Extensible<Components>
Components

Holds a set of reusable objects for different aspects of the API specification. All objects defined within this object will have no effect on the API unless they are explicitly referenced from properties outside the components object.

All the fields are indexed by keys that must match the regular expression: `^[a-zA-Z0-9\.\-_]+$`.

Key Examples:

- User
- User_1
- User_Name
- user-name
- my.org.User

See Also:
  - OpenAPI Specification Components Object

## Method Summary

Modifier and Type
Method
Description
`Components`
`addCallback(String key, Callback callback)`
Adds the given callback to this Components' map of callbacks with the given string as its key.
`Components`
`addExample(String key, Example example)`
Adds the given example to this Components' map of examples with the given string as its key.
`Components`
`addHeader(String key, Header header)`
Adds the given header to this Components' map of headers with the given string as its key.
`Components`
`addLink(String key, Link link)`
Adds the given link to this Components' map of links with the given string as its key.
`Components`
`addParameter(String key, Parameter parameter)`
Adds the given parameter to this Components' map of parameters with the given string as its key.
`Components`
`addPathItem(String name, PathItem pathItem)`
Adds a path item.
`Components`
`addRequestBody(String key, RequestBody requestBody)`
Adds the given request body to this Components' map of request bodies with the given string as its key.
`Components`
`addResponse(String key, APIResponse response)`
Adds the given response to this Components' map of responses with the given string as its key.
`Components`
`addSchema(String key, Schema schema)`
Adds the given schema to this Components' list of schemas with the given string as its key.
`Components`
`addSecurityScheme(String key, SecurityScheme securityScheme)`
Adds the given security scheme to this Components' map of security schemes with the given string as its key.
`default Components`
`callbacks(Map<String,Callback> callbacks)`
Sets this Components' callbacks property to the given Map containing keys and reusable callback objects.
`default Components`
`examples(Map<String,Example> examples)`
Sets this Components' examples property to the given Map containing keys and reusable example objects.
`Map<String,Callback>`
`getCallbacks()`
Returns the callbacks property from a Components instance.
`Map<String,Example>`
`getExamples()`
Returns the examples property from a Components instance.
`Map<String,Header>`
`getHeaders()`
Returns the headers property from a Components instance.
`Map<String,Link>`
`getLinks()`
Returns the links property from a Components instance.
`Map<String,Parameter>`
`getParameters()`
Returns the parameters property from a Components instance.
`Map<String,PathItem>`
`getPathItems()`
Returns the pathItems property of this Components instance.
`Map<String,RequestBody>`
`getRequestBodies()`
Returns the requestBodies property from a Components instance.
`Map<String,APIResponse>`
`getResponses()`
Returns the responses property from a Components instance.
`Map<String,Schema>`
`getSchemas()`
Returns the schemas property from a Components instance.
`Map<String,SecurityScheme>`
`getSecuritySchemes()`
Returns the securitySchemes property from a Components instance.
`default Components`
`headers(Map<String,Header> headers)`
Sets this Components' headers property to the given Map containing keys and reusable header objects.
`default Components`
`links(Map<String,Link> links)`
Sets this Components' links property to the given Map containing keys and reusable link objects.
`default Components`
`parameters(Map<String,Parameter> parameters)`
Sets this Components' parameters property to the given Map containing keys and reusable parameter objects.
`default Components`
`pathItems(Map<String,PathItem> pathItems)`
Sets the pathItems property of this Components instance.
`void`
`removeCallback(String key)`
Removes the given callback to this Components' map of callbacks with the given string as its key.
`void`
`removeExample(String key)`
Removes the given example to this Components' map of examples with the given string as its key.
`void`
`removeHeader(String key)`
Removes the given header to this Components' map of headers with the given string as its key.
`void`
`removeLink(String key)`
Removes the given link to this Components' map of links with the given string as its key.
`void`
`removeParameter(String key)`
Removes the given parameter to this Components' map of parameters with the given string as its key.
`void`
`removePathItem(String name)`
Removes a path item.
`void`
`removeRequestBody(String key)`
Removes the given request body to this Components' map of request bodies with the given string as its key.
`void`
`removeResponse(String key)`
Removes the given response to this Components' map of responses with the given string as its key.
`void`
`removeSchema(String key)`
Removes the given schema to this Components' list of schemas with the given string as its key.
`void`
`removeSecurityScheme(String key)`
Removes the given security scheme to this Components' map of security schemes with the given string as its key.
`default Components`
`requestBodies(Map<String,RequestBody> requestBodies)`
Sets this Components' requestBodies property to the given Map containing keys and reusable request body objects.
`default Components`
`responses(Map<String,APIResponse> responses)`
Sets this Components' responses property to the given Map containing keys and reusable response objects.
`default Components`
`schemas(Map<String,Schema> schemas)`
Sets this Components' schemas property to the given Map containing keys and reusable schemas.
`default Components`
`securitySchemes(Map<String,SecurityScheme> securitySchemes)`
Sets this Components' securitySchemes property to the given Map containing keys and reusable security scheme objects.
`void`
`setCallbacks(Map<String,Callback> callbacks)`
Sets this Components' callbacks property to the given Map containing keys and reusable callback objects.
`void`
`setExamples(Map<String,Example> examples)`
Sets this Components' examples property to the given Map containing keys and reusable example objects.
`void`
`setHeaders(Map<String,Header> headers)`
Sets this Components' headers property to the given Map containing keys and reusable header objects.
`void`
`setLinks(Map<String,Link> links)`
Sets this Components' links property to the given Map containing keys and reusable link objects.
`void`
`setParameters(Map<String,Parameter> parameters)`
Sets this Components' parameters property to the given Map containing keys and reusable parameter objects.
`void`
`setPathItems(Map<String,PathItem> pathItems)`
Sets the pathItems property of this Components instance.
`void`
`setRequestBodies(Map<String,RequestBody> requestBodies)`
Sets this Components' requestBodies property to the given Map containing keys and reusable request body objects.
`void`
`setResponses(Map<String,APIResponse> responses)`
Sets this Components' responses property to the given Map containing keys and reusable response objects.
`void`
`setSchemas(Map<String,Schema> schemas)`
Sets this Components' schemas property to the given Map containing keys and reusable schema objects.
`void`
`setSecuritySchemes(Map<String,SecurityScheme> securitySchemes)`
Sets this Components' securitySchemes property to the given Map containing keys and reusable security scheme objects.

### Methods inherited from interface org.eclipse.microprofile.openapi.models.Extensible

`addExtension, extensions, getExtension, getExtensions, hasExtension, removeExtension, setExtensions`

## Method Details

### getSchemas

Map<String,Schema> getSchemas()
Returns the schemas property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable schemas for this OpenAPI document

### setSchemas

void setSchemas(Map<String,Schema> schemas)
Sets this Components' schemas property to the given Map containing keys and reusable schema objects.

Parameters:
  `schemas` - a Map containing keys and reusable schema objects

### schemas

default Components schemas(Map<String,Schema> schemas)
Sets this Components' schemas property to the given Map containing keys and reusable schemas.

Parameters:
  `schemas` - a Map containing keys and reusable schemas
Returns:
  the current Components object

### addSchema

Components addSchema(String key, Schema schema)
Adds the given schema to this Components' list of schemas with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `schema` - a reusable schema object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeSchema

void removeSchema(String key)
Removes the given schema to this Components' list of schemas with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getResponses

Map<String,APIResponse> getResponses()
Returns the responses property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable responses from API operations for this OpenAPI document

### setResponses

void setResponses(Map<String,APIResponse> responses)
Sets this Components' responses property to the given Map containing keys and reusable response objects.

Parameters:
  `responses` - a Map containing keys and reusable response objects

### responses

default Components responses(Map<String,APIResponse> responses)
Sets this Components' responses property to the given Map containing keys and reusable response objects.

Parameters:
  `responses` - a Map containing keys and reusable response objects
Returns:
  the current Components object

### addResponse

Components addResponse(String key, APIResponse response)
Adds the given response to this Components' map of responses with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `response` - a reusable response object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeResponse

void removeResponse(String key)
Removes the given response to this Components' map of responses with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getParameters

Map<String,Parameter> getParameters()
Returns the parameters property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable parameters of API operations for this OpenAPI document

### setParameters

void setParameters(Map<String,Parameter> parameters)
Sets this Components' parameters property to the given Map containing keys and reusable parameter objects.

Parameters:
  `parameters` - a Map containing keys and reusable parameter objects

### parameters

default Components parameters(Map<String,Parameter> parameters)
Sets this Components' parameters property to the given Map containing keys and reusable parameter objects.

Parameters:
  `parameters` - a Map containing keys and reusable parameter objects
Returns:
  the current Components object

### addParameter

Components addParameter(String key, Parameter parameter)
Adds the given parameter to this Components' map of parameters with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `parameter` - a reusable parameter object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeParameter

void removeParameter(String key)
Removes the given parameter to this Components' map of parameters with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getExamples

Map<String,Example> getExamples()
Returns the examples property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable examples for this OpenAPI document

### setExamples

void setExamples(Map<String,Example> examples)
Sets this Components' examples property to the given Map containing keys and reusable example objects.

Parameters:
  `examples` - a Map containing keys and reusable example objects

### examples

default Components examples(Map<String,Example> examples)
Sets this Components' examples property to the given Map containing keys and reusable example objects.

Parameters:
  `examples` - a Map containing keys and reusable example objects
Returns:
  the current Components object

### addExample

Components addExample(String key, Example example)
Adds the given example to this Components' map of examples with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `example` - a reusable example object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeExample

void removeExample(String key)
Removes the given example to this Components' map of examples with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getRequestBodies

Map<String,RequestBody> getRequestBodies()
Returns the requestBodies property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable request bodies for this OpenAPI document

### setRequestBodies

void setRequestBodies(Map<String,RequestBody> requestBodies)
Sets this Components' requestBodies property to the given Map containing keys and reusable request body objects.

Parameters:
  `requestBodies` - a Map containing the keys and reusable request body objects

### requestBodies

default Components requestBodies(Map<String,RequestBody> requestBodies)
Sets this Components' requestBodies property to the given Map containing keys and reusable request body objects.

Parameters:
  `requestBodies` - a Map containing the keys and reusable request body objects
Returns:
  the current Components object

### addRequestBody

Components addRequestBody(String key, RequestBody requestBody)
Adds the given request body to this Components' map of request bodies with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `requestBody` - a reusable request body object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeRequestBody

void removeRequestBody(String key)
Removes the given request body to this Components' map of request bodies with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getHeaders

Map<String,Header> getHeaders()
Returns the headers property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable headers for this OpenAPI document

### setHeaders

void setHeaders(Map<String,Header> headers)
Sets this Components' headers property to the given Map containing keys and reusable header objects.

Parameters:
  `headers` - a Map containing the keys and reusable header objects

### headers

default Components headers(Map<String,Header> headers)
Sets this Components' headers property to the given Map containing keys and reusable header objects.

Parameters:
  `headers` - a Map containing the keys and reusable header objects
Returns:
  the current Components object

### addHeader

Components addHeader(String key, Header header)
Adds the given header to this Components' map of headers with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `header` - a reusable header object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeHeader

void removeHeader(String key)
Removes the given header to this Components' map of headers with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getSecuritySchemes

Map<String,SecurityScheme> getSecuritySchemes()
Returns the securitySchemes property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable security schemes for this OpenAPI document

### setSecuritySchemes

void setSecuritySchemes(Map<String,SecurityScheme> securitySchemes)
Sets this Components' securitySchemes property to the given Map containing keys and reusable security scheme objects.

Parameters:
  `securitySchemes` - a Map containing the keys and reusable security scheme objects

### securitySchemes

default Components securitySchemes(Map<String,SecurityScheme> securitySchemes)
Sets this Components' securitySchemes property to the given Map containing keys and reusable security scheme objects.

Parameters:
  `securitySchemes` - a Map containing the keys and reusable security scheme objects
Returns:
  the current Components object

### addSecurityScheme

Components addSecurityScheme(String key, SecurityScheme securityScheme)
Adds the given security scheme to this Components' map of security schemes with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `securityScheme` - a reusable security scheme object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeSecurityScheme

void removeSecurityScheme(String key)
Removes the given security scheme to this Components' map of security schemes with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getLinks

Map<String,Link> getLinks()
Returns the links property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable links for this OpenAPI document

### setLinks

void setLinks(Map<String,Link> links)
Sets this Components' links property to the given Map containing keys and reusable link objects.

Parameters:
  `links` - a Map containing the keys and reusable link objects

### links

default Components links(Map<String,Link> links)
Sets this Components' links property to the given Map containing keys and reusable link objects.

Parameters:
  `links` - a Map containing the keys and reusable link objects
Returns:
  the current Components object

### addLink

Components addLink(String key, Link link)
Adds the given link to this Components' map of links with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `link` - a reusable link object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeLink

void removeLink(String key)
Removes the given link to this Components' map of links with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getCallbacks

Map<String,Callback> getCallbacks()
Returns the callbacks property from a Components instance.

Returns:
  a copy Map (potentially immutable) containing the keys and the reusable callbacks for this OpenAPI document

### setCallbacks

void setCallbacks(Map<String,Callback> callbacks)
Sets this Components' callbacks property to the given Map containing keys and reusable callback objects.

Parameters:
  `callbacks` - a Map containing the keys and reusable callback objects

### callbacks

default Components callbacks(Map<String,Callback> callbacks)
Sets this Components' callbacks property to the given Map containing keys and reusable callback objects.

Parameters:
  `callbacks` - a Map containing the keys and reusable callback objects
Returns:
  the current Components object

### addCallback

Components addCallback(String key, Callback callback)
Adds the given callback to this Components' map of callbacks with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object
  `callback` - a reusable callback object. null values will be rejected (implementation will throw an exception) or ignored.
Returns:
  the current Components object

### removeCallback

void removeCallback(String key)
Removes the given callback to this Components' map of callbacks with the given string as its key.

Parameters:
  `key` - a key conforming to the format required for this object

### getPathItems

Map<String,PathItem> getPathItems()
Returns the pathItems property of this Components instance. Path items listed here can be referenced from elsewhere in the OpenAPI document.

Returns:
  a copy Map (potentially immutable) of path items
Since:
  4.0

### setPathItems

void setPathItems(Map<String,PathItem> pathItems)
Sets the pathItems property of this Components instance. Path items listed here can be referenced from elsewhere in the OpenAPI document.

Parameters:
  `pathItems` - a map of path items
Since:
  4.0

### pathItems

default Components pathItems(Map<String,PathItem> pathItems)
Sets the pathItems property of this Components instance. Path items listed here can be referenced from elsewhere in the OpenAPI document.

Parameters:
  `pathItems` - a map of path items
Returns:
  the current Schema instance
Since:
  4.0

### addPathItem

Components addPathItem(String name, PathItem pathItem)
Adds a path item.

Parameters:
  `name` - name of the path item to add
  `pathItem` - the path item to add
Returns:
  the current Schema instance

### removePathItem

void removePathItem(String name)
Removes a path item.

Parameters:
  `name` - name of the path item to remove