package de.unisiegen.gtitool.core.exceptions.alphabet; import java.util.ArrayList; import de.unisiegen.gtitool.core.entities.Alphabet; import de.unisiegen.gtitool.core.entities.DefaultRegexAlphabet; import de.unisiegen.gtitool.core.entities.Symbol; import de.unisiegen.gtitool.core.exceptions.CoreException; import de.unisiegen.gtitool.core.i18n.Messages; /** * The {@link AlphabetMoreThanOneSymbolException} is used if the * {@link Alphabet} is not correct. * * @author Christian Fehler * @version $Id: AlphabetMoreThanOneSymbolException.java 1372 2008-10-30 * 08:36:20Z fehler $ */ public final class AlphabetMoreThanOneSymbolException extends AlphabetException { /** * The serial version uid. */ private static final long serialVersionUID = 8267857615201989774L; /** * Allocates a new {@link AlphabetMoreThanOneSymbolException}. * * @param alphabet The {@link Alphabet}. * @param symbolList The {@link Symbol}s. */ public AlphabetMoreThanOneSymbolException ( Alphabet alphabet, ArrayList < Symbol > symbolList ) { super ( alphabet, symbolList ); // message setPrettyMessage ( Messages .getPrettyString ( "AlphabetException.MoreThanOneSymbolMessage" ) ); //$NON-NLS-1$ if ( alphabet instanceof DefaultRegexAlphabet ) { // description setPrettyDescription ( Messages.getPrettyString ( "AlphabetException.MoreThanOneSymbolDescription", symbolList.get ( 0 ) //$NON-NLS-1$ .toPrettyString (), ( ( DefaultRegexAlphabet ) alphabet ) .toClassPrettyString () ) ); } else { // description setPrettyDescription ( Messages.getPrettyString ( "AlphabetException.MoreThanOneSymbolDescription", symbolList.get ( 0 ) //$NON-NLS-1$ .toPrettyString (), alphabet.toPrettyString () ) ); } } /** * {@inheritDoc} * * @see CoreException#getType() */ @Override public final ErrorType getType () { return ErrorType.ERROR; } }