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));
}
}