return new QueryParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case QUERY: return new QueryInjector(parameter.getType(), providerFactory); case HEADER_PARAM: return new HeaderParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case FORM_PARAM: return new FormParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case COOKIE_PARAM: return new CookieParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case PATH_PARAM: return new PathParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case FORM: return new ListFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), prefix, providerFactory); return new MapFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), Types.getArgumentType(pType, 1), prefix, providerFactory); return new PrefixedFormInjector(parameter.getType(), prefix, providerFactory); return new FormInjector(parameter.getType(), providerFactory); return new FormInjector(parameter.getType(), providerFactory); case MATRIX_PARAM: return new MatrixParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case CONTEXT: return new ContextParameterInjector(null, parameter.getType(), parameter.getGenericType(), parameter.getAnnotations(), providerFactory); case SUSPENDED: return new AsynchronousResponseInjector(); case MESSAGE_BODY:
@Override public ValueInjector createParameterExtractor(Parameter parameter, ResteasyProviderFactory providerFactory) { final ValueInjector injector = getValueInjector(parameter.getType(), parameter.getAnnotations(), providerFactory); if (injector != null) return injector; return super.createParameterExtractor(parameter, providerFactory); }
return new QueryParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case QUERY: return new QueryInjector(parameter.getType(), providerFactory); case HEADER_PARAM: return new HeaderParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case FORM_PARAM: return new FormParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case COOKIE_PARAM: return new CookieParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case PATH_PARAM: return new PathParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case FORM: return new ListFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), prefix, providerFactory); return new MapFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), Types.getArgumentType(pType, 1), prefix, providerFactory); return new PrefixedFormInjector(parameter.getType(), prefix, providerFactory); return new FormInjector(parameter.getType(), providerFactory); return new FormInjector(parameter.getType(), providerFactory); case MATRIX_PARAM: return new MatrixParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case SUSPEND: return new SuspendInjector(parameter.getSuspendTimeout(), parameter.getType()); case CONTEXT: return new ContextParameterInjector(null, parameter.getType(), providerFactory); case SUSPENDED:
return new QueryParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case QUERY: return new QueryInjector(parameter.getType(), providerFactory); case HEADER_PARAM: return new HeaderParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case FORM_PARAM: return new FormParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case COOKIE_PARAM: return new CookieParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.getAnnotations(), providerFactory); case PATH_PARAM: return new PathParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case FORM: return new ListFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), prefix, providerFactory); return new MapFormInjector(parameter.getType(), Types.getArgumentType(pType, 0), Types.getArgumentType(pType, 1), prefix, providerFactory); return new PrefixedFormInjector(parameter.getType(), prefix, providerFactory); return new FormInjector(parameter.getType(), providerFactory); return new FormInjector(parameter.getType(), providerFactory); case MATRIX_PARAM: return new MatrixParamInjector(parameter.getType(), parameter.getGenericType(), parameter.getAccessibleObject(), parameter.getParamName(), parameter.getDefaultValue(), parameter.isEncoded(), parameter.getAnnotations(), providerFactory); case CONTEXT: return new ContextParameterInjector(null, parameter.getType(), parameter.getGenericType(), parameter.getAnnotations(), providerFactory); case SUSPENDED: return new AsynchronousResponseInjector(); case MESSAGE_BODY: