Exception createException()

in src/main/java/feign/error/ExceptionGenerator.java [70:90]


  Exception createException(Response response) throws InvocationTargetException,
      NoSuchMethodException, InstantiationException, IllegalAccessException {

    Class<?>[] paramClasses = new Class[numOfParams];
    Object[] paramValues = new Object[numOfParams];
    if (bodyIndex >= 0) {
      paramClasses[bodyIndex] = Types.getRawType(bodyType);
      paramValues[bodyIndex] = resolveBody(response);
    }
    if (requestIndex >= 0) {
      paramClasses[requestIndex] = Request.class;
      paramValues[requestIndex] = response.request();
    }
    if (headerMapIndex >= 0) {
      paramValues[headerMapIndex] = response.headers();
      paramClasses[headerMapIndex] = Map.class;
    }
    return exceptionType.getConstructor(paramClasses)
        .newInstance(paramValues);

  }