-
- All Implemented Interfaces:
-
java.io.Serializable
public class JSApplicationCausedNativeException extends RuntimeException
A special RuntimeException that should be thrown by native code if it has reached an exceptional state due to a, or a sequence of, bad commands.
A good rule of thumb for whether a native Exception should extend this interface is 1) Can a developer make a change or correction in JS to keep this Exception from being thrown? 2) Is the app outside of this catalyst instance still in a good state to allow reloading and restarting this catalyst instance?
Examples where this class is appropriate to throw:
- JS tries to update a view with a tag that hasn't been created yet
- JS tries to show a static image that isn't in resources
- JS tries to use an unsupported view class
Examples where this class **isn't** appropriate to throw: - Failed to write to localStorage because disk is full - Assertions about internal state (e.g. that child.getParent().indexOf(child) != -1)
-
-
Constructor Summary
Constructors Constructor Description JSApplicationCausedNativeException(String detailMessage)
JSApplicationCausedNativeException(String detailMessage, Throwable throwable)
-
Method Summary
Modifier and Type Method Description -
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, setStackTrace, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-