public class AddinPolicyUtils
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static void |
applicationExiting()
This method only works in debug mode!
|
static void |
checkCallStackForPolicyViolation(java.lang.String violationMethod,
java.lang.String method)
This method only works in debug mode!
Check if we are called with a particular method on the stack.
|
static void |
creatingAbstractButtonLeakPolicyCheck(javax.swing.AbstractButton abstractButton)
This method only works in debug mode!
Make certain we're avoiding a known memory leak cause.
|
static void |
creatingImageIconPolicyCheck()
This method only works in debug mode!
Check if creating an ImageIcon is ok.
|
static void |
creatingJMenuItemLeakPolicyCheck(javax.swing.JMenuItem menuItem,
int commandID)
This method only works in debug mode!
Make certain we're avoiding a known memory leak cause.
|
static void |
creatingLocalActionLeakPolicyCheck(javax.swing.Action action)
This method only works in debug mode!
Make certain we're avoiding a known memory leak cause.
|
static void |
creatingThreadPolicyCheck()
This method only works in debug mode!
Check if creating a Thread is ok.
|
static void |
ensureGarbageCollectable(java.lang.Object obj)
This method only works in debug mode!
Calls
ensureGarbageCollectable(Object,int) with seconds set to 10. |
static void |
ensureGarbageCollectable(java.lang.Object obj,
int seconds)
This method only works in debug mode!
Determines whether the given object is available for garbage collection
within the given time bounds.
|
static void |
initializingAddins(boolean initializing)
This method only works in debug mode!
Calls setWarnWhenCreatingImageIcons and setWarnWhenCreatingThreads
and optionally checks that nobody is misusing them
|
static void |
printWorkSpaceAccessDuringInitializationWarning()
This method only works in debug mode!
Print warning if Addin is accessing workspace during initialization.
|
static void |
runRunnable(java.lang.Runnable runnable)
This method only works in debug mode!
A utility method to run code that is to be used only if the AddinPolicyUtils is in "effect"
|
static boolean |
setWarnWhenCreatingImageIcons(boolean warn) |
static boolean |
setWarnWhenCreatingThreads(boolean warn) |
static boolean |
setWarnWhenLeakingJMenuItems(boolean warn) |
public static void initializingAddins(boolean initializing)
initializing
- If false, check for proper setting ot the flagsjava.lang.IllegalStateException
- if the flags were mishandledpublic static void creatingImageIconPolicyCheck()
public static void creatingThreadPolicyCheck()
public static void creatingAbstractButtonLeakPolicyCheck(javax.swing.AbstractButton abstractButton)
public static void creatingLocalActionLeakPolicyCheck(javax.swing.Action action)
public static void creatingJMenuItemLeakPolicyCheck(javax.swing.JMenuItem menuItem, int commandID)
public static boolean setWarnWhenCreatingThreads(boolean warn)
public static boolean setWarnWhenCreatingImageIcons(boolean warn)
public static boolean setWarnWhenLeakingJMenuItems(boolean warn)
public static void runRunnable(java.lang.Runnable runnable)
runnable
- The Runnable to runpublic static void applicationExiting()
public static void checkCallStackForPolicyViolation(java.lang.String violationMethod, java.lang.String method)
public static void ensureGarbageCollectable(java.lang.Object obj)
ensureGarbageCollectable(Object,int)
with seconds set to 10.obj
- Object to checkpublic static void ensureGarbageCollectable(java.lang.Object obj, int seconds)
System.gc()
.
If after seconds
seconds the reference is still not cleared,
an error message is printed to the console.obj
- The object to checkseconds
- The number of seconds to wait around hoping for the object
to be collected.public static void printWorkSpaceAccessDuringInitializationWarning()