code: @Override
      public void writeValue(@NotNull Object entity, @Nullable Object value) {
          if (value == null) { // don't set null value todo check method arguments annotations for NotNull
              return;
          }
  
          Method writeMethod = getWriteMethod();
  
          try {
              writeMethod.invoke(entity, value);
          } catch (InvocationTargetException | IllegalAccessException | IllegalArgumentException e) {
              LOGGER.warn(String.format("Can't invoke write method [%s.%s]", writeMethod.getDeclaringClass(), writeMethod.getName()), e);
          }
      }
docs: {@inheritDoc}