public static <T extends CharSequence> T notEmpty(final T chars, final String message, final Object... values) {
        if (chars == null) {
            throw new NullPointerException(String.format(message, values));
        }
        if (chars.length() == 0) {
            throw new IllegalArgumentException(String.format(message, values));
        }
        return chars;
    }
<p>Validate that the specified argument character sequence is
neither {@code null} nor a length of zero (no characters);
otherwise throwing an exception with the specified message.

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

@param <T> the character sequence type
@param chars  the character sequence 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 character sequence (never {@code null} method for chaining)
@throws NullPointerException if the character sequence is {@code null}
@throws IllegalArgumentException if the character sequence is empty
@see #notEmpty(CharSequence)
replugin-host-library/replugin-host-lib/src/main/java/com/qihoo360/replugin/utils/Validate.java