Class ClientProxyImpl

java.lang.Object
org.apache.cxf.jaxrs.client.AbstractClient
org.apache.cxf.jaxrs.client.ClientProxyImpl
All Implemented Interfaces:
Closeable, AutoCloseable, InvocationHandler, Client, InvocationHandlerAware

public class ClientProxyImpl extends AbstractClient implements InvocationHandlerAware, InvocationHandler, Closeable
Proxy-based client implementation
  • Field Details

  • Constructor Details

    • ClientProxyImpl

      public ClientProxyImpl(URI baseURI, ClassLoader loader, org.apache.cxf.jaxrs.model.ClassResourceInfo cri, boolean isRoot, boolean inheritHeaders, Object... varValues)
    • ClientProxyImpl

      public ClientProxyImpl(URI baseURI, ClassLoader loader, org.apache.cxf.jaxrs.model.ClassResourceInfo cri, boolean isRoot, boolean inheritHeaders, Map<String,Object> properties, Object... varValues)
    • ClientProxyImpl

      public ClientProxyImpl(ClientState initialState, ClassLoader loader, org.apache.cxf.jaxrs.model.ClassResourceInfo cri, boolean isRoot, boolean inheritHeaders, Object... varValues)
  • Method Details

    • invoke

      public Object invoke(Object o, Method m, Object[] params) throws Throwable
      Updates the current state if Client method is invoked, otherwise does the remote invocation or returns a new proxy if subresource method is invoked. Can throw an expected exception if ResponseExceptionMapper is registered
      Specified by:
      invoke in interface InvocationHandler
      Throws:
      Throwable
    • addNonEmptyPath

      protected void addNonEmptyPath(jakarta.ws.rs.core.UriBuilder builder, String pathValue)
    • getParametersInfo

      protected jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> getParametersInfo(Method m, Object[] params, org.apache.cxf.jaxrs.model.OperationResourceInfo ori)
    • isIgnorableParameter

      protected boolean isIgnorableParameter(Method m, org.apache.cxf.jaxrs.model.Parameter p)
    • getBodyIndex

      protected static int getBodyIndex(jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, org.apache.cxf.jaxrs.model.OperationResourceInfo ori)
    • getBeanGetter

      protected static Optional<Method> getBeanGetter(Class<?> clazz, String property, Class<?>... parameterTypes)
    • checkResponse

      protected void checkResponse(Method m, jakarta.ws.rs.core.Response r, org.apache.cxf.message.Message inMessage) throws Throwable
      Throws:
      Throwable
    • findExceptionMapper

      protected static ResponseExceptionMapper<?> findExceptionMapper(org.apache.cxf.message.Message message, Class<?> exType)
    • setRequestHeaders

      protected jakarta.ws.rs.core.MultivaluedMap<String,String> setRequestHeaders(jakarta.ws.rs.core.MultivaluedMap<String,String> headers, org.apache.cxf.jaxrs.model.OperationResourceInfo ori, boolean formParams, Class<?> bodyClass, Class<?> responseClass)
    • getAccept

      protected List<jakarta.ws.rs.core.MediaType> getAccept(jakarta.ws.rs.core.MultivaluedMap<String,String> allHeaders)
    • getPathParamValues

      protected List<Object> getPathParamValues(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, List<org.apache.cxf.jaxrs.model.Parameter> beanParams, org.apache.cxf.jaxrs.model.OperationResourceInfo ori, int bodyIndex)
    • getParamAnnotations

      protected static Annotation[] getParamAnnotations(Method m, org.apache.cxf.jaxrs.model.Parameter p)
    • getParameters

      protected static List<org.apache.cxf.jaxrs.model.Parameter> getParameters(jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, org.apache.cxf.jaxrs.model.ParameterType key)
    • handleQueries

      protected void handleQueries(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, List<org.apache.cxf.jaxrs.model.Parameter> beanParams, jakarta.ws.rs.core.UriBuilder ub)
    • getValuesFromBeanParam

      protected Map<String,ClientProxyImpl.BeanPair> getValuesFromBeanParam(Object bean, Class<? extends Annotation> annClass)
    • getValuesFromBeanParam

      protected Map<String,ClientProxyImpl.BeanPair> getValuesFromBeanParam(Object bean, Class<? extends Annotation> annClass, Map<String,ClientProxyImpl.BeanPair> values)
    • getValuesFromBeanParamField

      protected boolean getValuesFromBeanParamField(Object bean, Field f, Class<? extends Annotation> annClass, Map<String,ClientProxyImpl.BeanPair> values)
    • handleMatrixes

      protected void handleMatrixes(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, List<org.apache.cxf.jaxrs.model.Parameter> beanParams, jakarta.ws.rs.core.UriBuilder ub)
    • handleForm

      protected jakarta.ws.rs.core.MultivaluedMap<String,String> handleForm(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, List<org.apache.cxf.jaxrs.model.Parameter> beanParams)
    • addFormValue

      protected void addFormValue(jakarta.ws.rs.core.MultivaluedMap<String,String> form, String name, Object pValue, Annotation[] anns)
    • handleMultipart

      protected List<org.apache.cxf.jaxrs.ext.multipart.Attachment> handleMultipart(jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map, org.apache.cxf.jaxrs.model.OperationResourceInfo ori, Object[] params)
    • handleHeaders

      protected void handleHeaders(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<String,String> headers, List<org.apache.cxf.jaxrs.model.Parameter> beanParams, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map)
    • getMultipart

      protected static org.apache.cxf.jaxrs.ext.multipart.Multipart getMultipart(org.apache.cxf.jaxrs.model.OperationResourceInfo ori, int index)
    • handleCookies

      protected void handleCookies(Method m, Object[] params, jakarta.ws.rs.core.MultivaluedMap<String,String> headers, List<org.apache.cxf.jaxrs.model.Parameter> beanParams, jakarta.ws.rs.core.MultivaluedMap<org.apache.cxf.jaxrs.model.ParameterType,org.apache.cxf.jaxrs.model.Parameter> map)
    • createMessage

      protected org.apache.cxf.message.Message createMessage(Object body, org.apache.cxf.jaxrs.model.OperationResourceInfo ori, jakarta.ws.rs.core.MultivaluedMap<String,String> headers, URI currentURI, org.apache.cxf.message.Exchange exchange, Map<String,Object> invocationContext, boolean isProxy)
    • doChainedInvocation

      protected Object doChainedInvocation(URI uri, jakarta.ws.rs.core.MultivaluedMap<String,String> headers, org.apache.cxf.jaxrs.model.OperationResourceInfo ori, Object[] methodParams, Object body, int bodyIndex, org.apache.cxf.message.Exchange exchange, Map<String,Object> invocationContext) throws Throwable
      Throws:
      Throwable
    • checkAsyncCallback

      protected jakarta.ws.rs.client.InvocationCallback<Object> checkAsyncCallback(org.apache.cxf.jaxrs.model.OperationResourceInfo ori, Map<String,Object> reqContext, org.apache.cxf.message.Message outMessage)
    • doCheckAsyncCallback

      protected jakarta.ws.rs.client.InvocationCallback<Object> doCheckAsyncCallback(org.apache.cxf.jaxrs.model.OperationResourceInfo ori, jakarta.ws.rs.client.InvocationCallback<Object> callback)
    • doInvokeAsync

      protected Object doInvokeAsync(org.apache.cxf.jaxrs.model.OperationResourceInfo ori, org.apache.cxf.message.Message outMessage, jakarta.ws.rs.client.InvocationCallback<Object> asyncCallback)
    • newJaxrsClientCallback

      protected JaxrsClientCallback<?> newJaxrsClientCallback(jakarta.ws.rs.client.InvocationCallback<Object> asyncCallback, org.apache.cxf.message.Message outMessage, Class<?> responseClass, Type outGenericType)
    • retryInvoke

      protected Object retryInvoke(URI newRequestURI, jakarta.ws.rs.core.MultivaluedMap<String,String> headers, Object body, org.apache.cxf.message.Exchange exchange, Map<String,Object> invContext) throws Throwable
      Specified by:
      retryInvoke in class AbstractClient
      Throws:
      Throwable
    • handleResponse

      protected Object handleResponse(org.apache.cxf.message.Message outMessage, Class<?> serviceCls) throws Throwable
      Throws:
      Throwable
    • getGenericReturnType

      protected Type getGenericReturnType(Class<?> serviceCls, Method method, Class<?> returnType)
    • getReturnType

      protected Class<?> getReturnType(Method method, org.apache.cxf.message.Message outMessage)
    • getInvocationHandler

      public Object getInvocationHandler()
      Specified by:
      getInvocationHandler in interface InvocationHandlerAware
    • reportInvalidResourceMethod

      protected static void reportInvalidResourceMethod(Method m, String name)
    • getMethodAnnotations

      protected static Annotation[] getMethodAnnotations(Method aMethod, int bodyIndex)