package org.jboss.seam.ui.component.html;
import javax.el.ELException;
import javax.el.ValueExpression;
import javax.faces.FacesException;
import javax.faces.context.FacesContext;
import org.jboss.seam.ui.component.UIEqualityValidator;
public class HtmlEqualityValidator extends UIEqualityValidator{
final static public String COMPONENT_FAMILY = "org.jboss.seam.ui.EqualityValidator";
final static public String COMPONENT_TYPE = "org.jboss.seam.ui.EqualityValidator";
/*
* Id of component to validate against
*/
private String _for = null;
/*
* Error message to show
*/
private String _message = null;
/*
* Message id to use on failure
*/
private String _messageId = null;
/*
* Operation to use.
*/
private String _operator = null;
/*
* True if a value is required for the filed to validate (default:true)
*/
private boolean _required = true;
private boolean _requiredSet = false;
public HtmlEqualityValidator(){
setRendererType("org.jboss.seam.ui.EqualityValidatorRenderer");
}
public String getFor(){
if (this._for != null) {
return this._for;
}
ValueExpression ve = getValueExpression("for");
if (ve != null) {
String value = null;
try {
value = (String) ve.getValue(getFacesContext().getELContext());
} catch (ELException e) {
throw new FacesException(e);
}
return value;
}
return null;
}
public void setFor(String _for){
this._for = _for;
}
public String getMessage(){
if (this._message != null) {
return this._message;
}
ValueExpression ve = getValueExpression("message");
if (ve != null) {
String value = null;
try {
value = (String) ve.getValue(getFacesContext().getELContext());
} catch (ELException e) {
throw new FacesException(e);
}
return value;
}
return null;
}
public void setMessage(String _message){
this._message = _message;
}
public String getMessageId(){
if (this._messageId != null) {
return this._messageId;
}
ValueExpression ve = getValueExpression("messageId");
if (ve != null) {
String value = null;
try {
value = (String) ve.getValue(getFacesContext().getELContext());
} catch (ELException e) {
throw new FacesException(e);
}
return value;
}
return null;
}
public void setMessageId(String _messageId){
this._messageId = _messageId;
}
public String getOperator(){
if (this._operator != null) {
return this._operator;
}
ValueExpression ve = getValueExpression("operator");
if (ve != null) {
String value = null;
try {
value = (String) ve.getValue(getFacesContext().getELContext());
} catch (ELException e) {
throw new FacesException(e);
}
return value;
}
return null;
}
public void setOperator(String _operator){
this._operator = _operator;
}
public boolean isRequired(){
if (this._requiredSet) {
return (this._required);
}
ValueExpression ve = getValueExpression("required");
if (ve != null) {
Boolean value = null;
try {
value = (Boolean) ve.getValue(getFacesContext().getELContext());
} catch (ELException e) {
throw new FacesException(e);
}
if (null == value) {
return (this._required);
}
return value;
} else {
return (this._required);
}
}
public void setRequired(boolean _required){
this._required = _required;
this._requiredSet = true;
}
public String getFamily(){
return COMPONENT_FAMILY;
}
@Override
public Object saveState(FacesContext context){
Object [] state = new Object[7];
state[0] = super.saveState(context);
state[1] = _for;
state[2] = _message;
state[3] = _messageId;
state[4] = _operator;
state[5] = Boolean.valueOf(_required);
state[6] = Boolean.valueOf(_requiredSet);
return state;
}
@Override
public void restoreState(FacesContext context, Object state){
Object[] states = (Object[]) state;
super.restoreState(context, states[0]);
_for = (String)states[1];;
_message = (String)states[2];;
_messageId = (String)states[3];;
_operator = (String)states[4];;
_required = ((Boolean)states[5]).booleanValue();
_requiredSet = ((Boolean)states[6]).booleanValue();
}
}