49 lines
1.5 KiB
Java
49 lines
1.5 KiB
Java
package org.bukkit.conversations;
|
|
|
|
import java.util.EventObject;
|
|
|
|
/**
|
|
* ConversationAbandonedEvent contains information about an abandoned conversation.
|
|
*/
|
|
public class ConversationAbandonedEvent extends EventObject {
|
|
|
|
private ConversationContext context;
|
|
private ConversationCanceller canceller;
|
|
|
|
public ConversationAbandonedEvent(Conversation conversation) {
|
|
this(conversation, null);
|
|
}
|
|
|
|
public ConversationAbandonedEvent(Conversation conversation, ConversationCanceller canceller) {
|
|
super(conversation);
|
|
this.context = conversation.getContext();
|
|
this.canceller = canceller;
|
|
}
|
|
|
|
/**
|
|
* Gets the object that caused the conversation to be abandoned.
|
|
* @return The object that abandoned the conversation.
|
|
*/
|
|
public ConversationCanceller getCanceller() {
|
|
return canceller;
|
|
}
|
|
|
|
/**
|
|
* Gets the abandoned conversation's conversation context.
|
|
* @return The abandoned conversation's conversation context.
|
|
*/
|
|
public ConversationContext getContext() {
|
|
return context;
|
|
}
|
|
|
|
/**
|
|
* Indicates how the conversation was abandoned - naturally as part of the prompt chain or prematurely via a
|
|
* {@link ConversationCanceller}.
|
|
* @return True if the conversation is abandoned gracefully by a {@link Prompt} returning null
|
|
* or the next prompt. False of the conversations is abandoned prematurely by a ConversationCanceller.
|
|
*/
|
|
public boolean gracefulExit() {
|
|
return canceller == null;
|
|
}
|
|
}
|