protected void validateRequiredFields()

in vandelay-serialization-core/src/main/java/com/spotify/api/vandelay/serialization/VandelaySerializerBase.java [46:59]


  protected void validateRequiredFields(final T value) {
    final Class<?> clazz = value.getClass();
    try {
      List<Field> fields = getAllFields(clazz);
      for (final var field : fields) {
        field.setAccessible(true);
        if (field.isAnnotationPresent(RequiredField.class) && Objects.isNull(field.get(value))) {
          throw new VandelaySerializationException("Field " + field.getName() + " cannot be null.");
        }
      }
    } catch (final IllegalAccessException ex) {
      throw new VandelaySerializationException(ex.getMessage());
    }
  }