Package org.bukkit.conversations
Class ConversationContext
java.lang.Object
org.bukkit.conversations.ConversationContext
A ConversationContext provides continuity between nodes in the prompt graph
by giving the developer access to the subject of the conversation and a
generic map for storing values that are shared between all
Prompt
invocations.-
Constructor Summary
ConstructorDescriptionConversationContext
(Plugin plugin, Conversable forWhom, Map<Object, Object> initialSessionData) -
Method Summary
Modifier and TypeMethodDescriptionGets the underlying sessionData map.Gets the subject of the conversation.Gets the plugin that owns this conversation.getSessionData
(Object key) Gets session data shared between allPrompt
invocations.void
setSessionData
(Object key, Object value) Sets session data shared between allPrompt
invocations.
-
Constructor Details
-
ConversationContext
public ConversationContext(@Nullable Plugin plugin, @NotNull Conversable forWhom, @NotNull Map<Object, Object> initialSessionData) - Parameters:
plugin
- The owning plugin.forWhom
- The subject of the conversation.initialSessionData
- Any initial values to put in the sessionData map.
-
-
Method Details
-
getPlugin
Gets the plugin that owns this conversation.- Returns:
- The owning plugin.
-
getForWhom
Gets the subject of the conversation.- Returns:
- The subject of the conversation.
-
getAllSessionData
Gets the underlying sessionData map. May be directly modified to manipulate session data.- Returns:
- The full sessionData map.
-
getSessionData
Gets session data shared between allPrompt
invocations. Use this as a way to pass data through each Prompt as the conversation develops.- Parameters:
key
- The session data key.- Returns:
- The requested session data.
-
setSessionData
Sets session data shared between allPrompt
invocations. Use this as a way to pass data through each prompt as the conversation develops.- Parameters:
key
- The session data key.value
- The session data value.
-