Class ApplicationProcessor
- java.lang.Object
-
- fish.payara.microprofile.openapi.impl.processor.ApplicationProcessor
-
- All Implemented Interfaces:
OASProcessor
,ApiVisitor
public class ApplicationProcessor extends Object implements OASProcessor, ApiVisitor
A processor to parse the application for annotations, to add to the OpenAPI model.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface fish.payara.microprofile.openapi.api.visitor.ApiVisitor
ApiVisitor.VisitorFunction<AnnotationModel,E extends org.glassfish.hk2.classmodel.reflect.AnnotatedElement>
-
-
Constructor Summary
Constructors Constructor Description ApplicationProcessor(org.glassfish.hk2.classmodel.reflect.Types allTypes, Set<org.glassfish.hk2.classmodel.reflect.Type> allowedTypes, ClassLoader appClassLoader)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.eclipse.microprofile.openapi.models.OpenAPI
process(org.eclipse.microprofile.openapi.models.OpenAPI api, OpenApiConfiguration config)
Processes a model.void
visitAPIResponse(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitAPIResponses(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitAPIResponseSchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel apiResponseSchema, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitCallback(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitCallbacks(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitConsumes(org.glassfish.hk2.classmodel.reflect.AnnotationModel consumes, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitCookieParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitDELETE(org.glassfish.hk2.classmodel.reflect.AnnotationModel delete, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitExtension(org.glassfish.hk2.classmodel.reflect.AnnotationModel extension, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitExtensions(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitExternalDocumentation(org.glassfish.hk2.classmodel.reflect.AnnotationModel externalDocs, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitFormParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitGET(org.glassfish.hk2.classmodel.reflect.AnnotationModel get, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitHEAD(org.glassfish.hk2.classmodel.reflect.AnnotationModel head, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitHeaderParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitOpenAPI(org.glassfish.hk2.classmodel.reflect.AnnotationModel definition, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitOperation(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitOPTIONS(org.glassfish.hk2.classmodel.reflect.AnnotationModel options, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitParameter(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitParameters(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitPATCH(org.glassfish.hk2.classmodel.reflect.AnnotationModel patch, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitPathParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitPOST(org.glassfish.hk2.classmodel.reflect.AnnotationModel post, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitProduces(org.glassfish.hk2.classmodel.reflect.AnnotationModel produces, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitPUT(org.glassfish.hk2.classmodel.reflect.AnnotationModel put, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
void
visitQueryParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitRequestBody(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitRequestBodySchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel requestBodySchema, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitSchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitSecurityRequirement(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitSecurityRequirements(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitSecurityScheme(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitSecuritySchemes(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitServer(org.glassfish.hk2.classmodel.reflect.AnnotationModel server, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitServers(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitTag(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
void
visitTags(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
-
-
-
Constructor Detail
-
ApplicationProcessor
public ApplicationProcessor(org.glassfish.hk2.classmodel.reflect.Types allTypes, Set<org.glassfish.hk2.classmodel.reflect.Type> allowedTypes, ClassLoader appClassLoader)
- Parameters:
allTypes
- parsed application classesallowedTypes
- filtered application classes for OpenAPI metadata processingappClassLoader
- the class loader for the application.
-
-
Method Detail
-
process
public org.eclipse.microprofile.openapi.models.OpenAPI process(org.eclipse.microprofile.openapi.models.OpenAPI api, OpenApiConfiguration config)
Description copied from interface:OASProcessor
Processes a model.- Specified by:
process
in interfaceOASProcessor
- Parameters:
api
- the OpenAPI model to process.config
- the configuration to use.- Returns:
- a processed model.
-
visitGET
public void visitGET(org.glassfish.hk2.classmodel.reflect.AnnotationModel get, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitGET
in interfaceApiVisitor
-
visitPOST
public void visitPOST(org.glassfish.hk2.classmodel.reflect.AnnotationModel post, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitPOST
in interfaceApiVisitor
-
visitPUT
public void visitPUT(org.glassfish.hk2.classmodel.reflect.AnnotationModel put, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitPUT
in interfaceApiVisitor
-
visitDELETE
public void visitDELETE(org.glassfish.hk2.classmodel.reflect.AnnotationModel delete, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitDELETE
in interfaceApiVisitor
-
visitHEAD
public void visitHEAD(org.glassfish.hk2.classmodel.reflect.AnnotationModel head, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitHEAD
in interfaceApiVisitor
-
visitOPTIONS
public void visitOPTIONS(org.glassfish.hk2.classmodel.reflect.AnnotationModel options, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitOPTIONS
in interfaceApiVisitor
-
visitPATCH
public void visitPATCH(org.glassfish.hk2.classmodel.reflect.AnnotationModel patch, org.glassfish.hk2.classmodel.reflect.MethodModel element, ApiContext context)
- Specified by:
visitPATCH
in interfaceApiVisitor
-
visitProduces
public void visitProduces(org.glassfish.hk2.classmodel.reflect.AnnotationModel produces, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitProduces
in interfaceApiVisitor
-
visitConsumes
public void visitConsumes(org.glassfish.hk2.classmodel.reflect.AnnotationModel consumes, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitConsumes
in interfaceApiVisitor
-
visitQueryParam
public void visitQueryParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitQueryParam
in interfaceApiVisitor
-
visitPathParam
public void visitPathParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitPathParam
in interfaceApiVisitor
-
visitFormParam
public void visitFormParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitFormParam
in interfaceApiVisitor
-
visitHeaderParam
public void visitHeaderParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitHeaderParam
in interfaceApiVisitor
-
visitCookieParam
public void visitCookieParam(org.glassfish.hk2.classmodel.reflect.AnnotationModel param, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitCookieParam
in interfaceApiVisitor
-
visitOpenAPI
public void visitOpenAPI(org.glassfish.hk2.classmodel.reflect.AnnotationModel definition, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitOpenAPI
in interfaceApiVisitor
-
visitSchema
public void visitSchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitSchema
in interfaceApiVisitor
-
visitExtension
public void visitExtension(org.glassfish.hk2.classmodel.reflect.AnnotationModel extension, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitExtension
in interfaceApiVisitor
-
visitExtensions
public void visitExtensions(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitExtensions
in interfaceApiVisitor
-
visitOperation
public void visitOperation(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitOperation
in interfaceApiVisitor
-
visitCallback
public void visitCallback(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitCallback
in interfaceApiVisitor
-
visitCallbacks
public void visitCallbacks(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitCallbacks
in interfaceApiVisitor
-
visitRequestBody
public void visitRequestBody(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitRequestBody
in interfaceApiVisitor
-
visitRequestBodySchema
public void visitRequestBodySchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel requestBodySchema, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitRequestBodySchema
in interfaceApiVisitor
-
visitAPIResponse
public void visitAPIResponse(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitAPIResponse
in interfaceApiVisitor
-
visitAPIResponses
public void visitAPIResponses(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitAPIResponses
in interfaceApiVisitor
-
visitAPIResponseSchema
public void visitAPIResponseSchema(org.glassfish.hk2.classmodel.reflect.AnnotationModel apiResponseSchema, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitAPIResponseSchema
in interfaceApiVisitor
-
visitParameters
public void visitParameters(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitParameters
in interfaceApiVisitor
-
visitParameter
public void visitParameter(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitParameter
in interfaceApiVisitor
-
visitExternalDocumentation
public void visitExternalDocumentation(org.glassfish.hk2.classmodel.reflect.AnnotationModel externalDocs, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitExternalDocumentation
in interfaceApiVisitor
-
visitServer
public void visitServer(org.glassfish.hk2.classmodel.reflect.AnnotationModel server, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitServer
in interfaceApiVisitor
-
visitServers
public void visitServers(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitServers
in interfaceApiVisitor
-
visitTag
public void visitTag(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitTag
in interfaceApiVisitor
-
visitTags
public void visitTags(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitTags
in interfaceApiVisitor
-
visitSecurityScheme
public void visitSecurityScheme(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitSecurityScheme
in interfaceApiVisitor
-
visitSecuritySchemes
public void visitSecuritySchemes(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitSecuritySchemes
in interfaceApiVisitor
-
visitSecurityRequirement
public void visitSecurityRequirement(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitSecurityRequirement
in interfaceApiVisitor
-
visitSecurityRequirements
public void visitSecurityRequirements(org.glassfish.hk2.classmodel.reflect.AnnotationModel annotation, org.glassfish.hk2.classmodel.reflect.AnnotatedElement element, ApiContext context)
- Specified by:
visitSecurityRequirements
in interfaceApiVisitor
-
-