docs: public static void invokeOptionalSetter(Object object, String name, String value) throws Exception
    {
      String setterName = Strings.getMethodAccessor("set", name);
      Class<?> clazz = object.getClass();
  
      Method method = null;
      try {
        method = findMethod(clazz, setterName);
      }
      catch(NoSuchMethodException e) {
        log.debug("Setter |%s| not found in class |%s| or its super hierarchy.", setterName, clazz);
        return;
      }
      Class<?>[] parameterTypes = method.getParameterTypes();
      if(parameterTypes.length != 1) {
        log.debug("Setter |%s#%s(%s)| with invalid parameters number.", method.getDeclaringClass(), method.getName(), Strings.join(parameterTypes, ','));
        return;
      }
  
      invoke(object, method, ConverterRegistry.getConverter().asObject((String)value, parameterTypes[0]));
    }