protected static ValueInjector createParameterExtractorForComplexType(Class<?> injectTargetClass, Type type, Annotation[] annotations)
{
QueryParam query;
HeaderParam header;
PathParam uriParam;
CookieParam cookie;
FormParam formParam;
if ((query = ClassUtils.findAnnotation(annotations, QueryParam.class)) != null)
{
return new GroupValueInjector(RestParameterType.query, type, query.value());
}
else if ((header = ClassUtils.findAnnotation(annotations, HeaderParam.class)) != null)
{
return new GroupValueInjector(RestParameterType.header, type, header.value());
}
else if ((formParam = ClassUtils.findAnnotation(annotations, FormParam.class)) != null)
{
return new GroupValueInjector(RestParameterType.form, type, formParam.value());
}
else if ((cookie = ClassUtils.findAnnotation(annotations, CookieParam.class)) != null)
{
return new GroupValueInjector(RestParameterType.cookie, type, cookie.value());
}
else if ((uriParam = ClassUtils.findAnnotation(annotations, PathParam.class)) != null)
{
return new GroupValueInjector(RestParameterType.path, type, uriParam.value());
}