public static <T extends Collection<?>> T notEmpty(T collection, String message, Object... values) {
        if (collection == null) {
            throw new NullPointerException(String.format(message, values));
        }
        if (collection.isEmpty()) {
            throw new IllegalArgumentException(String.format(message, values));
        }
        return collection;
    }
<p>Validate that the specified argument collection is neither {@code null}
nor a size of zero (no elements); otherwise throwing an exception
with the specified message.

<pre>Validate.notEmpty(myCollection, "The collection must not be empty");</pre>

@param <T> the collection type
@param collection  the collection 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 collection (never {@code null} method for chaining)
@throws NullPointerException if the collection is {@code null}
@throws IllegalArgumentException if the collection is empty
@see #notEmpty(Object[])
android/android_framework/base/src/main/java/lang3/Validate.java