package br.com.ilhasoft.support.validation.binding; import android.databinding.BindingAdapter; import android.widget.TextView; import br.com.ilhasoft.support.validation.R; import br.com.ilhasoft.support.validation.rule.RegexRule; import br.com.ilhasoft.support.validation.util.EditTextHandler; import br.com.ilhasoft.support.validation.util.ErrorMessageHelper; import br.com.ilhasoft.support.validation.util.ViewTagHelper; /** * Created by john-mac on 3/24/17. */ public class RegexBindings { @BindingAdapter(value = {"validateRegex", "validateRegexMessage", "validateRegexAutoDismiss"}, requireAll = false) public static void bindingRegex(TextView view, String pattern, String errorMessage, boolean autoDismiss) { if (autoDismiss) { EditTextHandler.disableErrorOnChanged(view); } String handledErrorMessage = ErrorMessageHelper.getStringOrDefault(view, errorMessage, R.string.error_message_regex_validation); ViewTagHelper.appendValue(R.id.validator_rule, view, new RegexRule(view, pattern, handledErrorMessage)); } }