Package io.micronaut.openapi.visitor
Class AbstractOpenApiEndpointVisitor
java.lang.Object
io.micronaut.openapi.visitor.AbstractOpenApiEndpointVisitor
- Direct Known Subclasses:
OpenApiControllerVisitor,OpenApiEndpointVisitor
A
TypeElementVisitor the builds the Swagger model from Micronaut controllers at compile time.- Since:
- 1.0
- Author:
- graemerocher
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected io.swagger.v3.oas.models.ExternalDocumentationprotected List<io.swagger.v3.oas.models.tags.Tag> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract List<io.micronaut.http.MediaType>consumesMediaTypes(io.micronaut.inject.ast.MethodElement element) Returns the consumes media types.protected abstract StringgetClassDescription(io.micronaut.inject.visitor.VisitorContext context) Returns the description for the class.protected abstract StringgetMethodDescription(io.micronaut.inject.visitor.VisitorContext context) Returns the description for the method.protected abstract List<io.swagger.v3.oas.models.tags.Tag>getUserDefinedClassTags(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the class tags.protected abstract io.micronaut.http.HttpMethodhttpMethod(io.micronaut.inject.ast.MethodElement element) Returns the HttpMethod of the element.protected abstract booleanignore(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Returns true if the specified element should not be processed.protected abstract booleanignore(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns true if the specified element should not be processed.protected abstract List<io.swagger.v3.oas.models.security.SecurityRequirement>methodSecurityRequirements(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the security requirements at method level.protected abstract List<io.swagger.v3.oas.models.servers.Server>methodServers(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the servers at method level.operationExtensions(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the extensions at method level.protected abstract List<io.micronaut.http.MediaType>producesMediaTypes(io.micronaut.inject.ast.MethodElement element) Returns the produces media types.protected abstract List<io.micronaut.http.uri.UriMatchTemplate>uriMatchTemplates(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the uri paths of the element.voidvisitClass(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Executed when a class is encountered that matches the generic class.voidvisitMethod(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Executed when a method is encountered that matches the generic element.
-
Field Details
-
classTags
-
classExternalDocs
protected io.swagger.v3.oas.models.ExternalDocumentation classExternalDocs
-
-
Constructor Details
-
AbstractOpenApiEndpointVisitor
public AbstractOpenApiEndpointVisitor()
-
-
Method Details
-
visitClass
public void visitClass(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Executed when a class is encountered that matches the generic class.- Parameters:
element- The elementcontext- The visitor context
-
methodSecurityRequirements
protected abstract List<io.swagger.v3.oas.models.security.SecurityRequirement> methodSecurityRequirements(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the security requirements at method level.- Parameters:
element- The MethodElement.context- The context.- Returns:
- The security requirements.
-
methodServers
protected abstract List<io.swagger.v3.oas.models.servers.Server> methodServers(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the servers at method level.- Parameters:
element- The MethodElement.context- The context.- Returns:
- The servers.
-
operationExtensions
protected abstract Map<String,Object> operationExtensions(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the extensions at method level.- Parameters:
element- The MethodElement.context- The context.- Returns:
- The extensions.
-
getUserDefinedClassTags
protected abstract List<io.swagger.v3.oas.models.tags.Tag> getUserDefinedClassTags(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the class tags.- Parameters:
element- The ClassElement.context- The context.- Returns:
- The class tags.
-
ignore
protected abstract boolean ignore(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context) Returns true if the specified element should not be processed.- Parameters:
element- The ClassElement.context- The context.- Returns:
- true if the specified element should not be processed.
-
ignore
protected abstract boolean ignore(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns true if the specified element should not be processed.- Parameters:
element- The ClassElement.context- The context.- Returns:
- true if the specified element should not be processed.
-
httpMethod
protected abstract io.micronaut.http.HttpMethod httpMethod(io.micronaut.inject.ast.MethodElement element) Returns the HttpMethod of the element.- Parameters:
element- The MethodElement.- Returns:
- The HttpMethod of the element.
-
uriMatchTemplates
protected abstract List<io.micronaut.http.uri.UriMatchTemplate> uriMatchTemplates(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Returns the uri paths of the element.- Parameters:
element- The MethodElement.context- The context- Returns:
- The uri paths of the element.
-
consumesMediaTypes
protected abstract List<io.micronaut.http.MediaType> consumesMediaTypes(io.micronaut.inject.ast.MethodElement element) Returns the consumes media types.- Parameters:
element- The MethodElement.- Returns:
- The consumes media types.
-
producesMediaTypes
protected abstract List<io.micronaut.http.MediaType> producesMediaTypes(io.micronaut.inject.ast.MethodElement element) Returns the produces media types.- Parameters:
element- The MethodElement.- Returns:
- The produces media types.
-
getClassDescription
Returns the description for the class.- Parameters:
context- the visitor context- Returns:
- The description for the class.
-
getMethodDescription
Returns the description for the method.- Parameters:
context- the visitor context- Returns:
- The description for the method.
-
visitMethod
public void visitMethod(io.micronaut.inject.ast.MethodElement element, io.micronaut.inject.visitor.VisitorContext context) Executed when a method is encountered that matches the generic element.- Parameters:
element- The elementcontext- The visitor context
-