Class Contract

  extended by org.jdesktop.swingx.util.Contract

public class Contract
extends Object

Utility class for checking contracts.

Method Summary
<T> T
asNotNull(T input, String message)
          Tests the input parameter against null.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Detail


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
input - the argument to check against null.
message - the text of the exception if the argument is null
the input if not null
NullPointerException - if input is null