package com.smartandroid.sa.verifi; import java.util.ArrayList; import java.util.Iterator; import android.widget.TextView; public class Verifi extends AbstractVerifi{ /** * Validator chain */ protected ArrayList<AbstractVerifior> _validators = new ArrayList<AbstractVerifior>(); /** * Validation failure messages */ protected String _message = new String(); /** * */ protected TextView _source; public Verifi(TextView source){ this._source = source; } /** * Adds a validator to the end of the chain * * @param validator */ public void addValidator(AbstractVerifior validator) { this._validators.add(validator); return; } public boolean isValid(String value){ boolean result = true; this._message = new String(); Iterator<AbstractVerifior> it = this._validators.iterator(); while(it.hasNext()){ AbstractVerifior validator = it.next(); try{ if(!validator.isValid(value)){ this._message = validator.getMessage(); result = false; break; } }catch(VerifiorException e){ System.err.println(e.getMessage()); System.err.println(e.getStackTrace()); this._message = e.getMessage(); result = false; break; } } return result; } public String getMessages(){ return this._message; } public TextView getSource(){ return this._source; } }