001 package org.bukkit.conversations;
002
003 import java.util.regex.Pattern;
004
005 /**
006 * RegexPrompt is the base class for any prompt that requires an input
007 * validated by a regular expression.
008 */
009 public abstract class RegexPrompt extends ValidatingPrompt {
010
011 private Pattern pattern;
012
013 public RegexPrompt(String regex) {
014 this(Pattern.compile(regex));
015 }
016
017 public RegexPrompt(Pattern pattern) {
018 super();
019 this.pattern = pattern;
020 }
021
022 private RegexPrompt() {}
023
024 @Override
025 protected boolean isInputValid(ConversationContext context, String input) {
026 return pattern.matcher(input).matches();
027 }
028 }