Package org.apache.groovy.contracts
Class ViolationTracker
- java.lang.Object
-
- org.apache.groovy.contracts.ViolationTracker
-
public class ViolationTracker extends Object
A violation tracker is used to keep a list of pre-, post-condition or class-invariant violations in chronological order. This is necessary to evaluate all parts of a pre- or postcondition, and still being able to rethrow assertion errors.
-
-
Field Summary
Fields Modifier and Type Field Description static ThreadLocal<ViolationTracker>INSTANCE
-
Constructor Summary
Constructors Constructor Description ViolationTracker()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voiddeinit()AssertionViolationfirst()booleanhasViolations()static voidinit()AssertionViolationlast()static voidrethrowFirst()static voidrethrowLast()voidtrack(AssertionViolation assertionViolation)static booleanviolationsOccurred()
-
-
-
Field Detail
-
INSTANCE
public static ThreadLocal<ViolationTracker> INSTANCE
-
-
Method Detail
-
init
public static void init()
-
deinit
public static void deinit()
-
violationsOccurred
public static boolean violationsOccurred()
-
rethrowFirst
public static void rethrowFirst()
-
rethrowLast
public static void rethrowLast()
-
track
public void track(AssertionViolation assertionViolation)
-
hasViolations
public boolean hasViolations()
-
first
public AssertionViolation first()
-
last
public AssertionViolation last()
-
-