code: private <T> Parameter<T> onTypeCheck(Class<T> paramClass, Parameter<T> parameter)
      {
          if (parameter != null && parameter.getParameterType() != null
                  && parameter.getParameterType().equals(paramClass))
          {
              return parameter;
          }
          throw new IllegalArgumentException(
                  "The parameter of the specified name does not exist or is not assignable to the type");
      }
docs: Validated parameter's class with input paramClass. Returns back parameter
  if it matches, else throws an {@link IllegalArgumentException}.
  
  @param <T>
  type of class.
  @param paramClass
  expected class type.
  @param parameter
  parameter
  @return parameter if it matches, else throws an
  {@link IllegalArgumentException}.