Class AbstractDynamicData

  • All Implemented Interfaces:
    java.util.EventListener, javax.faces.component.NamingContainer, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.component.TransientStateHolder, javax.faces.component.UniqueIdVendor, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListenerHolder
    Direct Known Subclasses:
    DynaForm, FluidGrid, Keynote

    public abstract class AbstractDynamicData
    extends javax.faces.component.UIComponentBase
    implements javax.faces.component.NamingContainer, javax.faces.component.UniqueIdVendor
    Abstract base class for all components with dynamic behavior like UIData.
    Since:
    0.5
    Version:
    $Revision$
    Author:
    Oleg Varaksin / last modified by $Author$
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      protected static class  AbstractDynamicData.PropertyKeys
      Properties that are tracked by state saving.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected KeyData data  
      • Fields inherited from class javax.faces.component.UIComponent

        ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY
      • Fields inherited from interface javax.faces.component.NamingContainer

        SEPARATOR_CHAR
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void broadcast​(javax.faces.event.FacesEvent event)  
      java.lang.String createUniqueId​(javax.faces.context.FacesContext context, java.lang.String seed)  
      protected void exposeVar()  
      protected abstract KeyData findData​(java.lang.String key)
      Finds instance of KeyData by corresponding key.
      java.lang.String getClientId​(javax.faces.context.FacesContext context)  
      java.lang.String getContainerClientId​(javax.faces.context.FacesContext context)  
      KeyData getData()  
      java.lang.Object getValue()  
      java.lang.String getVar()  
      java.lang.String getVarContainerId()  
      protected abstract boolean invokeOnChildren​(javax.faces.context.FacesContext context, java.lang.String clientId, javax.faces.component.ContextCallback callback)
      Searches a child component with the given clientId during invokeOnComponent() and invokes the callback on it if found.
      boolean invokeOnComponent​(javax.faces.context.FacesContext context, java.lang.String clientId, javax.faces.component.ContextCallback callback)  
      protected java.lang.Boolean isNestedWithinIterator()  
      protected void preDecode​(javax.faces.context.FacesContext context)  
      protected abstract void processChildren​(javax.faces.context.FacesContext context, javax.faces.event.PhaseId phaseId)
      Processes children components during processDecodes(), processValidators(), processUpdates().
      void processDecodes​(javax.faces.context.FacesContext context)  
      protected void processFacets​(javax.faces.context.FacesContext context, javax.faces.event.PhaseId phaseId, javax.faces.component.UIComponent component)  
      void processUpdates​(javax.faces.context.FacesContext context)  
      void processValidators​(javax.faces.context.FacesContext context)  
      void queueEvent​(javax.faces.event.FacesEvent event)  
      void resetData()  
      protected void restoreDescendantState()  
      protected void restoreDescendantState​(javax.faces.context.FacesContext context, javax.faces.component.UIComponent component)  
      protected void saveDescendantState()  
      protected void saveDescendantState​(javax.faces.context.FacesContext context, javax.faces.component.UIComponent component)  
      java.lang.Object saveState​(javax.faces.context.FacesContext context)  
      void setData​(java.lang.String key)  
      void setData​(KeyData keyData)  
      void setId​(java.lang.String id)  
      void setValue​(java.lang.Object value)  
      void setVar​(java.lang.String var)  
      void setVarContainerId​(java.lang.String varContainerId)  
      protected abstract boolean visitChildren​(javax.faces.component.visit.VisitContext context, javax.faces.component.visit.VisitCallback callback)
      Visits children components during visitTree().
      boolean visitTree​(javax.faces.component.visit.VisitContext context, javax.faces.component.visit.VisitCallback callback)  
      • Methods inherited from class javax.faces.component.UIComponentBase

        addClientBehavior, addFacesListener, clearInitialState, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getListenersForEventClass, getParent, getPassThroughAttributes, getRenderer, getRendererType, getRendersChildren, getValueBinding, isRendered, isTransient, markInitialState, processRestoreState, processSaveState, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, setParent, setRendered, setRendererType, setTransient, setValueBinding, subscribeToEvent, unsubscribeFromEvent
      • Methods inherited from class javax.faces.component.UIComponent

        encodeAll, getClientId, getCompositeComponentParent, getCurrentComponent, getCurrentCompositeComponent, getFamily, getNamingContainer, getPassThroughAttributes, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, setValueExpression
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AbstractDynamicData

        public AbstractDynamicData()
    • Method Detail

      • getVar

        public java.lang.String getVar()
      • setVar

        public void setVar​(java.lang.String var)
      • getVarContainerId

        public java.lang.String getVarContainerId()
      • setVarContainerId

        public void setVarContainerId​(java.lang.String varContainerId)
      • getValue

        public java.lang.Object getValue()
      • setValue

        public void setValue​(java.lang.Object value)
      • findData

        protected abstract KeyData findData​(java.lang.String key)
        Finds instance of KeyData by corresponding key.
        Parameters:
        key - unique key
        Returns:
        KeyData found data
      • processChildren

        protected abstract void processChildren​(javax.faces.context.FacesContext context,
                                                javax.faces.event.PhaseId phaseId)
        Processes children components during processDecodes(), processValidators(), processUpdates().
        Parameters:
        context - faces context FacesContext
        phaseId - current JSF phase id
      • visitChildren

        protected abstract boolean visitChildren​(javax.faces.component.visit.VisitContext context,
                                                 javax.faces.component.visit.VisitCallback callback)
        Visits children components during visitTree().
        Parameters:
        context - visit context VisitContext
        callback - visit callback VisitCallback
        Returns:
        boolean true - indicates that the children's visit is complete (e.g. all components that need to be visited have been visited), false - otherwise.
      • invokeOnChildren

        protected abstract boolean invokeOnChildren​(javax.faces.context.FacesContext context,
                                                    java.lang.String clientId,
                                                    javax.faces.component.ContextCallback callback)
        Searches a child component with the given clientId during invokeOnComponent() and invokes the callback on it if found.
        Parameters:
        context - faces context FacesContext
        clientId - client Id
        callback - ContextCallback
        Returns:
        boolean true - child component was found, else - otherwise
      • setData

        public void setData​(java.lang.String key)
      • setData

        public void setData​(KeyData keyData)
      • resetData

        public void resetData()
      • getData

        public KeyData getData()
      • getClientId

        public java.lang.String getClientId​(javax.faces.context.FacesContext context)
        Overrides:
        getClientId in class javax.faces.component.UIComponentBase
      • setId

        public void setId​(java.lang.String id)
        Overrides:
        setId in class javax.faces.component.UIComponentBase
      • getContainerClientId

        public java.lang.String getContainerClientId​(javax.faces.context.FacesContext context)
        Overrides:
        getContainerClientId in class javax.faces.component.UIComponent
      • processDecodes

        public void processDecodes​(javax.faces.context.FacesContext context)
        Overrides:
        processDecodes in class javax.faces.component.UIComponentBase
      • processValidators

        public void processValidators​(javax.faces.context.FacesContext context)
        Overrides:
        processValidators in class javax.faces.component.UIComponentBase
      • processUpdates

        public void processUpdates​(javax.faces.context.FacesContext context)
        Overrides:
        processUpdates in class javax.faces.component.UIComponentBase
      • preDecode

        protected void preDecode​(javax.faces.context.FacesContext context)
      • isNestedWithinIterator

        protected java.lang.Boolean isNestedWithinIterator()
      • queueEvent

        public void queueEvent​(javax.faces.event.FacesEvent event)
        Overrides:
        queueEvent in class javax.faces.component.UIComponentBase
      • broadcast

        public void broadcast​(javax.faces.event.FacesEvent event)
        Overrides:
        broadcast in class javax.faces.component.UIComponentBase
      • visitTree

        public boolean visitTree​(javax.faces.component.visit.VisitContext context,
                                 javax.faces.component.visit.VisitCallback callback)
        Overrides:
        visitTree in class javax.faces.component.UIComponent
      • invokeOnComponent

        public boolean invokeOnComponent​(javax.faces.context.FacesContext context,
                                         java.lang.String clientId,
                                         javax.faces.component.ContextCallback callback)
        Overrides:
        invokeOnComponent in class javax.faces.component.UIComponentBase
      • processFacets

        protected void processFacets​(javax.faces.context.FacesContext context,
                                     javax.faces.event.PhaseId phaseId,
                                     javax.faces.component.UIComponent component)
      • createUniqueId

        public java.lang.String createUniqueId​(javax.faces.context.FacesContext context,
                                               java.lang.String seed)
        Specified by:
        createUniqueId in interface javax.faces.component.UniqueIdVendor
      • exposeVar

        protected void exposeVar()
      • saveDescendantState

        protected void saveDescendantState()
      • saveDescendantState

        protected void saveDescendantState​(javax.faces.context.FacesContext context,
                                           javax.faces.component.UIComponent component)
      • restoreDescendantState

        protected void restoreDescendantState()
      • restoreDescendantState

        protected void restoreDescendantState​(javax.faces.context.FacesContext context,
                                              javax.faces.component.UIComponent component)
      • saveState

        public java.lang.Object saveState​(javax.faces.context.FacesContext context)
        Specified by:
        saveState in interface javax.faces.component.StateHolder
        Overrides:
        saveState in class javax.faces.component.UIComponentBase