code: public static Object createParameterObject(List<String> paramValues,
                                                 Class<?> paramType,
                                                 Type genericType,
                                                 Annotation[] paramAnns,
                                                 String defaultValue,
                                                 boolean decoded,
                                                 ParameterType pathParam,
                                                 Message message) {
          //CHECKSTYLE:ON
  
          if (paramValues == null) {
              if (defaultValue != null) {
                  paramValues = Collections.singletonList(defaultValue);
              } else {
                  if (paramType.isPrimitive()) {
                      paramValues = Collections.singletonList(
                                      boolean.class == paramType ? "false"
                                                      : char.class == paramType ? Character.toString('\u0000') : "0");
                  } else if (InjectionUtils.isSupportedCollectionOrArray(paramType)) {
                      paramValues = Collections.emptyList();
                  } else {
                      return null;
                  }
              }
          }
  
          Object value = null;
          if (InjectionUtils.isSupportedCollectionOrArray(paramType)) {
              MultivaluedMap<String, String> paramValuesMap = new MetadataMap<>();
              paramValuesMap.put("", paramValues);
              value = InjectionUtils.injectIntoCollectionOrArray(paramType, genericType, paramAnns,
                                                                 paramValuesMap, false, decoded, pathParam, message);
          } else {
              String result = null;
              if (!paramValues.isEmpty()) {
                  boolean isLast = pathParam == ParameterType.PATH ? true : false;
                  result = isLast ? paramValues.get(paramValues.size() - 1)
                                  : paramValues.get(0);
              }
              if (result != null) {
                  value = InjectionUtils.handleParameter(result, decoded, paramType, genericType,
                                                         paramAnns, pathParam, message);
              }
          }
          return value;
      }
docs: CHECKSTYLE:OFF