Class SnippetEvent
java.lang.Object
jdk.jshell.SnippetEvent
public class SnippetEvent extends Object
A description of a change to a Snippet. These are generated by direct changes to state with
JShell.eval(String)
or JShell.drop(Snippet)
, or indirectly by these same methods as dependencies change or Snippets are overwritten. For direct changes, the causeSnippet()
is null
. SnippetEvent
is immutable: an access to any of its methods will always return the same result. and thus is thread-safe.
- Since:
- 9
Method Summary
Modifier and Type | Method | Description |
---|---|---|
Snippet |
causeSnippet() |
Either the snippet whose change caused this update or null . |
JShellException |
exception() |
An instance of UnresolvedReferenceException , if an unresolved reference was encountered, or an instance of EvalException if an exception was thrown during execution, otherwise null . |
boolean |
isSignatureChange() |
Indicates whether the signature has changed. |
Snippet.Status |
previousStatus() |
The status before the transition. |
Snippet |
snippet() |
The Snippet which has changed |
Snippet.Status |
status() |
The after status. |
String |
toString() |
Return a string representation of the event |
String |
value() |
The result value of successful run. |
Method Details
snippet
public Snippet snippet()
The Snippet which has changed
- Returns:
- the return the Snippet whose
Status
has changed.
previousStatus
public Snippet.Status previousStatus()
The status before the transition. If this event describes a Snippet creation return
NONEXISTENT
.- Returns:
- the previousStatus
status
public Snippet.Status status()
The after status. Note: this may be the same as the previous status (not all changes cause a
Status
change.- Returns:
- the status
isSignatureChange
public boolean isSignatureChange()
Indicates whether the signature has changed. Coming in or out of definition is always a signature change. An overwritten Snippet
(status == OVERWRITTEN)
is always false
as responsibility for the definition has passed to the overwriting definition.- Returns:
-
true
if the signature changed; otherwisefalse
causeSnippet
public Snippet causeSnippet()
Either the snippet whose change caused this update or
null
. This returns null
if this change is the creation of a new Snippet via eval
or it is the explicit drop of a Snippet with drop
.- Returns:
- the Snippet which caused this change or
null
if directly caused by an API action.
exception
public JShellException exception()
An instance of
UnresolvedReferenceException
, if an unresolved reference was encountered, or an instance of EvalException
if an exception was thrown during execution, otherwise null
.- Returns:
- the exception or
null
.
value
public String value()
The result value of successful run. The value is null if not executed or an exception was thrown.
- Returns:
- the value or
null
.
toString
public String toString()
Return a string representation of the event
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.jshell/jdk/jshell/SnippetEvent.html