Interface JaxrsClientReactiveEnricher
public interface JaxrsClientReactiveEnricher
Alter jaxrs client proxy generation
-
Method Summary
Modifier and TypeMethodDescriptionvoidforClass(io.quarkus.gizmo.MethodCreator ctor, io.quarkus.gizmo.AssignableResultHandle globalTarget, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.IndexView index) Class-level alterations Used by MicroProfile Rest Client implementation (quarkus-rest-client-reactive) to supportProvider,@ClientHeadersFactory, etc Please note that this won't be invoked for sub-resourcesvoidforMethod(io.quarkus.gizmo.ClassCreator classCreator, io.quarkus.gizmo.MethodCreator constructor, io.quarkus.gizmo.MethodCreator clinit, io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.gizmo.AssignableResultHandle invocationBuilder, org.jboss.jandex.IndexView index, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, int methodIndex, io.quarkus.gizmo.FieldDescriptor javaMethodField) Method-level alterationsvoidforSubResourceMethod(io.quarkus.gizmo.ClassCreator subClassCreator, io.quarkus.gizmo.MethodCreator subConstructor, io.quarkus.gizmo.MethodCreator subClinit, io.quarkus.gizmo.MethodCreator subMethodCreator, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo subMethod, org.jboss.jandex.MethodInfo rootMethod, io.quarkus.gizmo.AssignableResultHandle invocationBuilder, org.jboss.jandex.IndexView index, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, int methodIndex, int subMethodIndex, io.quarkus.gizmo.FieldDescriptor javaMethodField) Method-level alterations for methods of sub-resourcesvoidforSubResourceWebTarget(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo rootMethod, org.jboss.jandex.MethodInfo subMethod, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses) Called when aWebTargethas been populated for a sub ClientvoidforWebTarget(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses) Called when aWebTargethas been populated for a normal Clientio.quarkus.gizmo.AssignableResultHandlehandleFormParams(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.gizmo.AssignableResultHandle formParams, boolean multipart) io.quarkus.gizmo.AssignableResultHandlehandleFormParamsForSubResource(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo rootMethod, org.jboss.jandex.MethodInfo subMethod, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.gizmo.AssignableResultHandle formParams, boolean multipart)
-
Method Details
-
forClass
void forClass(io.quarkus.gizmo.MethodCreator ctor, io.quarkus.gizmo.AssignableResultHandle globalTarget, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.IndexView index) Class-level alterations Used by MicroProfile Rest Client implementation (quarkus-rest-client-reactive) to supportProvider,@ClientHeadersFactory, etc Please note that this won't be invoked for sub-resources- Parameters:
ctor- jaxrs client constructorglobalTarget- WebTarget field of the jaxrs clientinterfaceClass- JAXRS-annotated interface for which the client is being generatedindex- jandex index
-
forWebTarget
void forWebTarget(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses) Called when aWebTargethas been populated for a normal Client -
forSubResourceWebTarget
void forSubResourceWebTarget(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo rootMethod, org.jboss.jandex.MethodInfo subMethod, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses) Called when aWebTargethas been populated for a sub Client -
handleFormParams
io.quarkus.gizmo.AssignableResultHandle handleFormParams(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.gizmo.AssignableResultHandle formParams, boolean multipart) -
handleFormParamsForSubResource
io.quarkus.gizmo.AssignableResultHandle handleFormParamsForSubResource(io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.IndexView index, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo rootMethod, org.jboss.jandex.MethodInfo subMethod, io.quarkus.gizmo.AssignableResultHandle webTarget, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.gizmo.AssignableResultHandle formParams, boolean multipart) -
forMethod
void forMethod(io.quarkus.gizmo.ClassCreator classCreator, io.quarkus.gizmo.MethodCreator constructor, io.quarkus.gizmo.MethodCreator clinit, io.quarkus.gizmo.MethodCreator methodCreator, org.jboss.jandex.ClassInfo interfaceClass, org.jboss.jandex.MethodInfo method, io.quarkus.gizmo.AssignableResultHandle invocationBuilder, org.jboss.jandex.IndexView index, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, int methodIndex, io.quarkus.gizmo.FieldDescriptor javaMethodField) Method-level alterations- Parameters:
classCreator- creator of the jaxrs stub classconstructor- constructor of the jaxrs stub classmethodCreator- the method that is being generated, e.g. a method corresponding to `@GET Response get()`interfaceClass- JAXRS-annotated interface for which the client is being generatedmethod- jandex method object corresponding to the methodinvocationBuilder- assignable reference for Invocation.Builderindex- jandex indexgeneratedClasses- build producer used to generate classes. Used e.g. to generate classes for header fillingmethodIndex- 0-based index of the method in the interface. Used to assure there is no clash in generating classesjavaMethodField- method reference in a static class field
-
forSubResourceMethod
void forSubResourceMethod(io.quarkus.gizmo.ClassCreator subClassCreator, io.quarkus.gizmo.MethodCreator subConstructor, io.quarkus.gizmo.MethodCreator subClinit, io.quarkus.gizmo.MethodCreator subMethodCreator, org.jboss.jandex.ClassInfo rootInterfaceClass, org.jboss.jandex.ClassInfo subInterfaceClass, org.jboss.jandex.MethodInfo subMethod, org.jboss.jandex.MethodInfo rootMethod, io.quarkus.gizmo.AssignableResultHandle invocationBuilder, org.jboss.jandex.IndexView index, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, int methodIndex, int subMethodIndex, io.quarkus.gizmo.FieldDescriptor javaMethodField) Method-level alterations for methods of sub-resources- Parameters:
subClassCreator- creator of the sub-resource stub classsubConstructor- constructor of the sub-resource stub classsubMethodCreator- the method that is being generatedrootInterfaceClass- root JAX-RS interface for which the client is being generatedsubInterfaceClass- sub-resource JAX-RS interface for which the client is being generatedsubMethod- jandex method object corresponding to the current sub-resource methodrootMethod- jandex method object corresponding to the current root resource methodinvocationBuilder- Invocation.Builder's assignable reference. Local for subMethodindex- jandex indexgeneratedClasses- build producer used to generate classesmethodIndex- 0-based index of method in the root interfacesubMethodIndex- index of the method in the sub-resource interfacejavaMethodField- method reference in a static class field
-