jii
Version:
Jii - Full-Stack JavaScript Framework
33 lines (25 loc) • 788 B
JavaScript
/**
* @author <a href="http://www.affka.ru">Vladimir Kozhin</a>
* @license MIT
*/
;
const Jii = require('../BaseJii');
const ApplicationException = require('../exceptions/ApplicationException');
const Validator = require('./Validator');
class FilterValidator extends Validator {
preInit() {
this.skipOnEmpty = false;
this.filter = null;
super.preInit(...arguments);
}
init() {
super.init();
if (this.filter === null) {
throw new ApplicationException('The `filter` property must be set.');
}
}
validateAttribute(object, attribute) {
object.set(attribute, this.filter.call(object, object.get(attribute)));
}
}
module.exports = FilterValidator;