Class CxfClientProducer

java.lang.Object
io.quarkiverse.cxf.CxfClientProducer
Direct Known Subclasses:
CxfClientInfoProducer

public abstract class CxfClientProducer extends Object
Base producer class for setting up CXF client proxies and CXFClientInfos.

A class extending this class is generated for each Service Endpoint Interface (SEI) at build time. Those generated classes delegate the client creation to loadCxfClient(InjectionPoint, CXFClientData).

Notice the InjectionPoint parameter of loadCxfClient(InjectionPoint, CXFClientData). It is used to find the configuration for the specific client by key given in @CXFClient("myClient").

  • Field Details

    • RUNTIME_INITIALIZED_PROXY_MARKER_INTERFACE_PACKAGE

      public static final String RUNTIME_INITIALIZED_PROXY_MARKER_INTERFACE_PACKAGE
      See Also:
    • RUNTIME_INITIALIZED_PROXY_MARKER_INTERFACE_NAME

      public static final String RUNTIME_INITIALIZED_PROXY_MARKER_INTERFACE_NAME
      See Also:
  • Constructor Details

    • CxfClientProducer

      public CxfClientProducer()
  • Method Details

    • loadCxfClient

      public Object loadCxfClient(jakarta.enterprise.inject.spi.InjectionPoint ip, CXFClientData meta)
      Must be public, otherwise: java.lang.VerifyError: Bad access to protected data in invokevirtual
    • closeCxfClient

      public void closeCxfClient(Object client)
      Called from the {SEI}CxfClientProducer.closeClient(@Disposes @CXFClient {SEI} client) generated in io.quarkiverse.cxf.deployment.CxfClientProcessor.generateCxfClientProducer().
      Parameters:
      client - the CXF client to close
    • loadCxfClientInfo

      public CXFClientInfo loadCxfClientInfo(jakarta.enterprise.inject.spi.InjectionPoint ip, CXFClientData meta)
      Must be public, otherwise: java.lang.VerifyError: Bad access to protected data in invokevirtual
    • selectorCXFClientInfo

      protected static CXFClientInfo selectorCXFClientInfo(CxfConfig config, CxfFixedConfig fixedConfig, jakarta.enterprise.inject.spi.InjectionPoint ip, CXFClientData meta)
      Calculates the client info to use for producing a JAXWS client proxy.
      Parameters:
      cxfConfig - The current configuration
      ip - Meta information about where injection of client proxy takes place
      meta - The default to return
      Returns:
      not null
    • selectorCXFClientInfo

      public static CXFClientInfo selectorCXFClientInfo(CxfConfig config, CxfFixedConfig fixedConfig, CXFClientData meta, String configKey, Supplier<IllegalStateException> exceptionSupplier)