Pull out database validation into validator class

This commit is contained in:
Joseph Schorr 2017-01-30 16:24:58 -05:00
parent 484977f728
commit f933b3e295
5 changed files with 61 additions and 7 deletions

View file

@ -0,0 +1,20 @@
from abc import ABCMeta, abstractmethod, abstractproperty
from six import add_metaclass
class ConfigValidationException(Exception):
""" Exception raised when the configuration fails to validate for a known reason. """
pass
@add_metaclass(ABCMeta)
class BaseValidator(object):
@abstractproperty
def name(self):
""" The key for the validation API. """
pass
@classmethod
@abstractmethod
def validate(cls, config, user, user_password):
""" Raises Exception if failure to validate. """
pass