diff options
Diffstat (limited to 'Spezifikation/PDFSignator Schnittstelle/src/at/asit/pdfover/pdfsignator/profileproperties/validators/RegExValidator.java')
-rw-r--r-- | Spezifikation/PDFSignator Schnittstelle/src/at/asit/pdfover/pdfsignator/profileproperties/validators/RegExValidator.java | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Spezifikation/PDFSignator Schnittstelle/src/at/asit/pdfover/pdfsignator/profileproperties/validators/RegExValidator.java b/Spezifikation/PDFSignator Schnittstelle/src/at/asit/pdfover/pdfsignator/profileproperties/validators/RegExValidator.java new file mode 100644 index 00000000..6337231c --- /dev/null +++ b/Spezifikation/PDFSignator Schnittstelle/src/at/asit/pdfover/pdfsignator/profileproperties/validators/RegExValidator.java @@ -0,0 +1,41 @@ +package at.asit.pdfover.pdfsignator.profileproperties.validators; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import at.asit.pdfover.pdfsignator.InvalidPropertyTypeException; +import at.asit.pdfover.pdfsignator.InvalidPropertyValueException; +import at.asit.pdfover.pdfsignator.profileproperties.FloatProfileProperty; +import at.asit.pdfover.pdfsignator.profileproperties.ProfileProperty; + +public class RegExValidator extends PropertyValidator { + + /** + * The regex value + */ + protected String regex; + + /** + * Constructor + * @param regex The regex to check + */ + public RegExValidator(String regex) { + this.regex = regex; + } + + @Override + public void validate(ProfileProperty property) + throws InvalidPropertyValueException, InvalidPropertyTypeException { + + if(!property.GetTextValue().matches(this.regex)) { + throw new InvalidPropertyValueException(property, String.format( + "Value is invalid!")); + } + } + + @Override + public void CheckPropertyType(ProfileProperty property) + throws InvalidPropertyTypeException { + // Is valid on all Property Types + } +} |