org.omnifaces.component.validator
Class ValidateOneOrNone

java.lang.Object
  extended by javax.faces.component.UIComponent
      extended by javax.faces.component.UIComponentBase
          extended by org.omnifaces.component.validator.ValidatorFamily
              extended by org.omnifaces.component.validator.ValidateMultipleFields
                  extended by org.omnifaces.component.validator.ValidateOneOrNone
All Implemented Interfaces:
java.util.EventListener, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListenerHolder

public class ValidateOneOrNone
extends ValidateMultipleFields

ValidateOneOrNone validates if ONLY ONE of the given UIInput components has been filled out or that NONE of the given UIInput components have been filled out. The default message is

{0}: Please fill out only one or none of those fields

For general usage instructions, refer ValidateMultipleFields documentation.

Since:
1.2
Author:
Bauke Scholtz

Field Summary
static java.lang.String COMPONENT_TYPE
          The standard component type.
 
Fields inherited from class org.omnifaces.component.validator.ValidatorFamily
COMPONENT_FAMILY
 
Fields inherited from class javax.faces.component.UIComponent
BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, VIEW_LOCATION_KEY
 
Constructor Summary
ValidateOneOrNone()
          The default constructor sets the default message.
 
Method Summary
protected  boolean validateValues(javax.faces.context.FacesContext context, java.util.List<javax.faces.component.UIInput> inputs, java.util.List<java.lang.Object> values)
          Validate if only one or none is filled out.
 
Methods inherited from class org.omnifaces.component.validator.ValidateMultipleFields
collectComponents, collectValues, getComponents, getMessage, getShowMessageFor, isDisabled, isValidationFailed, setComponents, setDisabled, setMessage, setShowMessageFor, showMessage, validateComponents, validateHierarchy
 
Methods inherited from class org.omnifaces.component.validator.ValidatorFamily
encodeChildren, getFamily, getRendersChildren, processDecodes, processUpdates, processValidators
 
Methods inherited from class javax.faces.component.UIComponentBase
addClientBehavior, addFacesListener, broadcast, clearInitialState, decode, encodeBegin, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getValueBinding, invokeOnComponent, isRendered, isTransient, markInitialState, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, saveState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
 
Methods inherited from class javax.faces.component.UIComponent
encodeAll, getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getListenersForEventClass, getNamingContainer, getResourceBundleMap, getStateHelper, getStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, setInView, setValueExpression, subscribeToEvent, unsubscribeFromEvent, visitTree
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMPONENT_TYPE

public static final java.lang.String COMPONENT_TYPE
The standard component type.

See Also:
Constant Field Values
Constructor Detail

ValidateOneOrNone

public ValidateOneOrNone()
The default constructor sets the default message.

Method Detail

validateValues

protected boolean validateValues(javax.faces.context.FacesContext context,
                                 java.util.List<javax.faces.component.UIInput> inputs,
                                 java.util.List<java.lang.Object> values)
Validate if only one or none is filled out.

Specified by:
validateValues in class ValidateMultipleFields
Parameters:
context - The faces context to work with.
inputs - The input components whose values are to be validated.
values - The values of the input components to be validated.
Returns:
true if validation is successful, otherwise false (and thus show the message).