Class Contract


  • public class Contract
    extends Object
    Utility class for checking contracts.
    Author:
    Jeanette Winzenburg
    • Method Detail

      • asNotNull

        public static <T> T asNotNull​(T input,
                                      String message)
        Tests the input parameter against null. If the input is an array, checks all of its elements as well. Returns the unchanged parameter if not null, throws a NullPointerException otherwise.

        PENDING: type of exception? there are raging debates, some favour an IllegalArgument?

        PENDING: the implementation uses a unchecked type cast to an array. can we do better, how?

        Type Parameters:
        T - the type of the input parameter
        Parameters:
        input - the argument to check against null.
        message - the text of the exception if the argument is null
        Returns:
        the input if not null
        Throws:
        NullPointerException - if input is null