package com.github.scribejava.core.utils; /** * Utils for checking preconditions and invariants */ public abstract class Preconditions { private static final String DEFAULT_MESSAGE = "Received an invalid parameter"; /** * Checks that an object is not null. * * @param object any object * @param errorMsg error message * * @throws IllegalArgumentException if the object is null */ public static void checkNotNull(Object object, String errorMsg) { check(object != null, errorMsg); } /** * Checks that a string is not null or empty * * @param string any string * @param errorMsg error message * * @throws IllegalArgumentException if the string is null or empty */ public static void checkEmptyString(String string, String errorMsg) { check(hasText(string), errorMsg); } public static boolean hasText(String str) { if (str == null || str.isEmpty()) { return false; } final int strLen = str.length(); for (int i = 0; i < strLen; i++) { if (!Character.isWhitespace(str.charAt(i))) { return true; } } return false; } private static void check(boolean requirements, String error) { if (!requirements) { throw new IllegalArgumentException(hasText(error) ? error : DEFAULT_MESSAGE); } } }