All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.dwivedi.androidformvalidation.validator.Field Maven / Gradle / Ivy

package com.dwivedi.androidformvalidation.validator;

import java.util.LinkedList;
import java.util.List;

import android.widget.EditText;

import com.dwivedi.androidformvalidation.validator.validations.Validation;

/**
 * 
 * @author Created by Ashish Dwivedi (see
 *         https://github.com/dwivedi/AndroidFormValidation-TheRightWay).
 *         Modified and incorporated to ioc-commons-android-impl by Jesús Lunar
 *         Pérez
 */
public class Field {

	private List mValidations = new LinkedList();
	private EditText mTextView;

	private Field(EditText textView) {
		this.mTextView = textView;
	}

	public static Field using(EditText textView) {
		return new Field(textView);
	}

	public Field validate(Validation what) {
		mValidations.add(what);
		return this;
	}

	public EditText getTextView() {
		return mTextView;
	}

	public boolean isValid() throws FieldValidationException {
		for (Validation validation : mValidations) {
			if (!validation.isValid(mTextView.getText().toString())) {
				String errorMessage = validation.getErrorMessage();
				throw new FieldValidationException(errorMessage, mTextView);
			}
		}
		return true;
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy