code: static boolean isBasicValueType(final Object obj) {
          return obj == null || obj instanceof String || obj instanceof Integer || obj instanceof Boolean
                  || obj instanceof Long || obj instanceof Float || obj instanceof Double || obj instanceof Short
                  || obj instanceof Byte || obj instanceof Character || obj.getClass().isEnum();
      }
docs: Return true for objects that can be converted directly to and from string representation.
  
  @param obj
  the object
  @return true, if the object is null or of basic value type