Class SmallRyeOpenApiProcessor
java.lang.Object
io.quarkus.smallrye.openapi.deployment.SmallRyeOpenApiProcessor
The main OpenAPI Processor. This will scan for JAX-RS, Spring and Vert.x Annotations, and, if any, add supplied schemas.
The result is added to the deployable unit to be loaded at runtime.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voidaddAutoFilters(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> addToOpenAPIDefinitionProducer, List<io.quarkus.vertx.http.deployment.SecurityInformationBuildItem> securityInformationBuildItems, OpenApiFilteredIndexViewBuildItem apiFilteredIndexViewBuildItem, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config, io.quarkus.deployment.builditem.LaunchModeBuildItem launchModeBuildItem, io.quarkus.vertx.http.runtime.management.ManagementInterfaceBuildTimeConfig managementBuildTimeConfig, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem) (package private) voidaddAutoOpenApiEndpointFilter(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> addToOpenAPIDefinitionProducer, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config) (package private) voidadditionalBean(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer) (package private) voidaddMethodImplementationClassNames(org.jboss.jandex.MethodInfo method, org.jboss.jandex.Type[] params, Collection<org.jboss.jandex.ClassInfo> classes, Map<String, ClassAndMethod> classNames) voidbuild(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedResourceBuildItem> resourceBuildItemBuildProducer, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.NativeImageResourceBuildItem> nativeImageResources, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.OpenApiDocumentBuildItem> openApiDocumentProducer, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.deployment.Capabilities capabilities, List<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> openAPIBuildItems, io.quarkus.vertx.http.deployment.HttpRootPathBuildItem httpRootPathBuildItem, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig smallRyeOpenApiConfig, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTargetBuildItem, List<io.quarkus.smallrye.openapi.deployment.spi.IgnoreStaticDocumentBuildItem> ignoreStaticDocumentBuildItems) (package private) voidconfigFiles(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.HotDeploymentWatchedFileBuildItem> watchedFiles, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, io.quarkus.deployment.builditem.LaunchModeBuildItem launchMode, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTargetBuildItem) (package private) voidcontributeClassesToIndex(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.AdditionalIndexedClassesBuildItem> additionalIndexedClasses) static StringcreateUniqueMethodReference(org.jboss.jandex.ClassInfo classInfo, org.jboss.jandex.MethodInfo methodInfo) (package private) io.quarkus.deployment.builditem.FeatureBuildItemfeature()(package private) voidhandler(io.quarkus.deployment.builditem.LaunchModeBuildItem launch, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.devmode.NotFoundPageDisplayableEndpointBuildItem> displayableEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.spi.RouteBuildItem> routes, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SystemPropertyBuildItem> systemProperties, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder, io.quarkus.vertx.http.deployment.NonApplicationRootPathBuildItem nonApplicationRootPathBuildItem, io.quarkus.deployment.builditem.ShutdownContextBuildItem shutdownContext, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, List<io.quarkus.vertx.http.deployment.FilterBuildItem> filterBuildItems, io.quarkus.vertx.http.runtime.management.ManagementInterfaceBuildTimeConfig managementBuildTimeConfig) (package private) io.quarkus.deployment.logging.LogCleanupFilterBuildItem(package private) voidprepareDocuments(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, OpenApiFilteredIndexViewBuildItem apiFilteredIndexViewBuildItem, List<io.quarkus.vertx.http.deployment.SecurityInformationBuildItem> securityInformationBuildItems, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, io.quarkus.deployment.builditem.LaunchModeBuildItem launch, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem) (package private) voidregisterAnnotatedUserDefinedRuntimeFilters(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.UnremovableBeanBuildItem> unremovableBeans, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder) List<io.quarkus.resteasy.server.common.spi.AllowedJaxRsAnnotationPrefixBuildItem> (package private) voidregisterNativeImageResources(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ServiceProviderBuildItem> serviceProvider) voidregisterOpenApiSchemaClassesForReflection(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem> reflectiveHierarchy, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.deployment.Capabilities capabilities) (package private) OpenApiFilteredIndexViewBuildItemsmallryeOpenApiIndex(io.quarkus.deployment.builditem.CombinedIndexBuildItem combinedIndexBuildItem, io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndexBuildItem, io.quarkus.arc.deployment.BuildExclusionsBuildItem buildExclusionsBuildItem) (package private) io.smallrye.openapi.api.OpenApiDocumenttoOpenApiDocument(io.smallrye.openapi.api.SmallRyeOpenAPI finalOpenAPI) We need to use the deprecated OpenApiDocument as long as OpenApiDocumentBuildItem needs to be produced.(package private) voidvalidateOpenApiFilterDocumentNames(io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem)
-
Constructor Details
-
SmallRyeOpenApiProcessor
public SmallRyeOpenApiProcessor()
-
-
Method Details
-
feature
io.quarkus.deployment.builditem.FeatureBuildItem feature() -
contributeClassesToIndex
void contributeClassesToIndex(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.AdditionalIndexedClassesBuildItem> additionalIndexedClasses) -
registerNativeImageResources
void registerNativeImageResources(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ServiceProviderBuildItem> serviceProvider) -
configFiles
void configFiles(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.HotDeploymentWatchedFileBuildItem> watchedFiles, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, io.quarkus.deployment.builditem.LaunchModeBuildItem launchMode, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTargetBuildItem) -
prepareDocuments
void prepareDocuments(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, OpenApiFilteredIndexViewBuildItem apiFilteredIndexViewBuildItem, List<io.quarkus.vertx.http.deployment.SecurityInformationBuildItem> securityInformationBuildItems, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, io.quarkus.deployment.builditem.LaunchModeBuildItem launch, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem) -
registerAnnotatedUserDefinedRuntimeFilters
void registerAnnotatedUserDefinedRuntimeFilters(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.UnremovableBeanBuildItem> unremovableBeans, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder) -
validateOpenApiFilterDocumentNames
void validateOpenApiFilterDocumentNames(io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem) -
handler
void handler(io.quarkus.deployment.builditem.LaunchModeBuildItem launch, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.devmode.NotFoundPageDisplayableEndpointBuildItem> displayableEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.spi.RouteBuildItem> routes, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SystemPropertyBuildItem> systemProperties, io.quarkus.smallrye.openapi.runtime.OpenApiRecorder recorder, io.quarkus.vertx.http.deployment.NonApplicationRootPathBuildItem nonApplicationRootPathBuildItem, io.quarkus.deployment.builditem.ShutdownContextBuildItem shutdownContext, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig openApiConfig, List<io.quarkus.vertx.http.deployment.FilterBuildItem> filterBuildItems, io.quarkus.vertx.http.runtime.management.ManagementInterfaceBuildTimeConfig managementBuildTimeConfig) -
additionalBean
void additionalBean(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer) -
smallryeOpenApiIndex
OpenApiFilteredIndexViewBuildItem smallryeOpenApiIndex(io.quarkus.deployment.builditem.CombinedIndexBuildItem combinedIndexBuildItem, io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndexBuildItem, io.quarkus.arc.deployment.BuildExclusionsBuildItem buildExclusionsBuildItem) -
addAutoOpenApiEndpointFilter
void addAutoOpenApiEndpointFilter(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> addToOpenAPIDefinitionProducer, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config) -
addAutoFilters
void addAutoFilters(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> addToOpenAPIDefinitionProducer, List<io.quarkus.vertx.http.deployment.SecurityInformationBuildItem> securityInformationBuildItems, OpenApiFilteredIndexViewBuildItem apiFilteredIndexViewBuildItem, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig config, io.quarkus.deployment.builditem.LaunchModeBuildItem launchModeBuildItem, io.quarkus.vertx.http.runtime.management.ManagementInterfaceBuildTimeConfig managementBuildTimeConfig, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem) -
addMethodImplementationClassNames
void addMethodImplementationClassNames(org.jboss.jandex.MethodInfo method, org.jboss.jandex.Type[] params, Collection<org.jboss.jandex.ClassInfo> classes, Map<String, ClassAndMethod> classNames) -
createUniqueMethodReference
public static String createUniqueMethodReference(org.jboss.jandex.ClassInfo classInfo, org.jboss.jandex.MethodInfo methodInfo) -
registerJaxRsSupportedAnnotation
public List<io.quarkus.resteasy.server.common.spi.AllowedJaxRsAnnotationPrefixBuildItem> registerJaxRsSupportedAnnotation() -
registerOpenApiSchemaClassesForReflection
public void registerOpenApiSchemaClassesForReflection(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClass, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem> reflectiveHierarchy, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.deployment.Capabilities capabilities) -
build
public void build(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedResourceBuildItem> resourceBuildItemBuildProducer, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.NativeImageResourceBuildItem> nativeImageResources, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.smallrye.openapi.deployment.spi.OpenApiDocumentBuildItem> openApiDocumentProducer, OpenApiFilteredIndexViewBuildItem openApiFilteredIndexViewBuildItem, io.quarkus.deployment.Capabilities capabilities, List<io.quarkus.smallrye.openapi.deployment.spi.AddToOpenAPIDefinitionBuildItem> openAPIBuildItems, io.quarkus.vertx.http.deployment.HttpRootPathBuildItem httpRootPathBuildItem, io.quarkus.smallrye.openapi.common.deployment.SmallRyeOpenApiConfig smallRyeOpenApiConfig, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTargetBuildItem, List<io.quarkus.smallrye.openapi.deployment.spi.IgnoreStaticDocumentBuildItem> ignoreStaticDocumentBuildItems) -
toOpenApiDocument
io.smallrye.openapi.api.OpenApiDocument toOpenApiDocument(io.smallrye.openapi.api.SmallRyeOpenAPI finalOpenAPI) We need to use the deprecated OpenApiDocument as long as OpenApiDocumentBuildItem needs to be produced. -
logCleanup
io.quarkus.deployment.logging.LogCleanupFilterBuildItem logCleanup()
-