diff --git a/src/main/java/org/orekit/rugged/errors/DumpManager.java b/src/main/java/org/orekit/rugged/errors/DumpManager.java index 23f4a4d71bd080819d21db4e5be65ff8b0fab826..8fd750102cc43ac2b9de220f95174a38e5f555bf 100644 --- a/src/main/java/org/orekit/rugged/errors/DumpManager.java +++ b/src/main/java/org/orekit/rugged/errors/DumpManager.java @@ -48,6 +48,9 @@ public class DumpManager { /** Dump file (default initial value is null, i.e. nothing is dumped). */ private static final ThreadLocal<Dump> DUMP = new ThreadLocal<Dump>(); + /** Boolean to check if the dump is suspended. */ + private static boolean isSuspended = false; + /** Private constructor for utility class. */ private DumpManager() { @@ -81,11 +84,23 @@ public class DumpManager { } } + /** Suspend the dump. + */ + public static void suspend() { + isSuspended = true; + } + + /** Resume the dump. + */ + public static void resume() { + isSuspended = false; + } + /** Check if dump is active for this thread. * @return true if dump is active for this thread */ public static boolean isActive() { - return DUMP.get() != null; + return DUMP.get() != null && !isSuspended; } /** Dump DEM cell data.