docs: public static void setFieldValueWithPath(Object object, String path, Object value) throws IllegalStateException {
  
          int lastDot = path.lastIndexOf('.');
  
          if (lastDot > -1) {
  
              String parentPath = path.substring(0, lastDot);
              String field = path.substring(lastDot + 1);
              Object parentObject = getFieldValueWithPath(object, parentPath);
  
              if (parentObject == null) {
                  throw new IllegalStateException(String.format("Null value for %s while accessing %s on object %s",
                          parentPath,
                          path,
                          object));
              }
  
              setFieldValue(parentObject, field, value);
  
          } else {
              setFieldValue(object, path, value);
          }
  
      }