Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5501fcae authored by Benedict Wong's avatar Benedict Wong
Browse files

Add message template support for checkStringNotEmpty

This change adds the ability for the Preconditions#checkStringNotEmpty()
to take a message template instead of just an error message, allowing
for template reuse.

Test: FrameworksNetTests passing
Change-Id: I6df1c3bff77b227126c35f066ee9112e959d6b1c
parent d915fc70
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -101,6 +101,24 @@ public class Preconditions {
        return string;
    }

    /**
     * Ensures that an string reference passed as a parameter to the calling method is not empty.
     *
     * @param string an string reference
     * @param messageTemplate a printf-style message template to use if the check fails; will be
     *     converted to a string using {@link String#format(String, Object...)}
     * @param messageArgs arguments for {@code messageTemplate}
     * @return the string reference that was validated
     * @throws IllegalArgumentException if {@code string} is empty
     */
    public static @NonNull <T extends CharSequence> T checkStringNotEmpty(
            final T string, final String messageTemplate, final Object... messageArgs) {
        if (TextUtils.isEmpty(string)) {
            throw new IllegalArgumentException(String.format(messageTemplate, messageArgs));
        }
        return string;
    }

    /**
     * Ensures that an object reference passed as a parameter to the calling
     * method is not null.