code: public <T> T[] notEmpty(final T[] array, final String message, final Object... values) {
          if (array == null) {
              failNull(String.format(message, values));
          }
          if (array.length == 0) {
              fail(String.format(message, values));
          }
          return array;
      }
docs: <p>Validate that the specified argument array is neither {@code null} nor a length of zero (no elements); otherwise throwing an exception with the specified message. </p>
  <pre>Validate.notEmpty(myArray, "The array must not be empty");</pre>
  
  @param <T>
  the array type
  @param array
  the array to check, validated not null by this method
  @param message
  the {@link String#format(String, Object...)} exception message if invalid, not null
  @param values
  the optional values for the formatted exception message, null array not recommended
  
  @return the validated array (never {@code null} method for chaining)
  
  @throws NullPointerValidationException
  if the array is {@code null}
  @throws IllegalArgumentValidationException
  if the array is empty
  @see #notEmpty(Object[])