nextapp.echoservlet
Class FCRenderer

java.lang.Object
  extended by nextapp.echoservlet.FCRenderer
All Implemented Interfaces:
java.io.Serializable

public class FCRenderer
extends java.lang.Object
implements java.io.Serializable

This class takes care of performing quick differential updates to components.

See Also:
Serialized Form

Constructor Summary
FCRenderer()
           
 
Method Summary
 boolean dequeueFastComponent(ComponentPeer peer)
           
 void enqueueFastComponent(ComponentPeer peer, Component cause)
           The componentPeer being passed in is one that has modifications to it, as such it needs to be re-rendered to the client browser.
 void enqueueFastComponentForClear(Component component)
           
static java.util.Set getAllClassesWithGetInitializeMethod()
           
static java.lang.reflect.Method getGetInitializeScriptMethod(java.lang.Class peerClass)
           
static java.util.List getPeersForComponents(InstancePeer instancePeer, java.util.List components)
           
static FCRenderer getRenderer()
           
 boolean handlesUpdates(InstancePeer instancePeer)
          Returns true if the FastComponentUpdateManager will handle the updates...
static Element renderFastComponentSpan(RenderingContext rc, Element parent, Id id, Component component, boolean forceGeneration)
           
 void renderUpdateScript(Connection conn, InstancePeer instancePeer)
           
 void reset()
           
static void sortComponentTree(InstancePeer instancePeer, Component component, java.util.Map typeToList)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FCRenderer

public FCRenderer()
Method Detail

enqueueFastComponent

public void enqueueFastComponent(ComponentPeer peer,
                                 Component cause)

The componentPeer being passed in is one that has modifications to it, as such it needs to be re-rendered to the client browser.

This method will decide whether or not the update to the component/componentPeer being passed in can be handled by the FastComponent inforstructure.

This method will return true if this infrastructure can handle the update, and as such the Service that normally needs to be updated is to ignore the component. Otherwise false is returned.

Parameters:
componentPeer -

dequeueFastComponent

public boolean dequeueFastComponent(ComponentPeer peer)

enqueueFastComponentForClear

public void enqueueFastComponentForClear(Component component)

handlesUpdates

public boolean handlesUpdates(InstancePeer instancePeer)
Returns true if the FastComponentUpdateManager will handle the updates...

Returns:

reset

public void reset()

renderUpdateScript

public void renderUpdateScript(Connection conn,
                               InstancePeer instancePeer)

getRenderer

public static FCRenderer getRenderer()

getGetInitializeScriptMethod

public static java.lang.reflect.Method getGetInitializeScriptMethod(java.lang.Class peerClass)

getAllClassesWithGetInitializeMethod

public static java.util.Set getAllClassesWithGetInitializeMethod()

sortComponentTree

public static void sortComponentTree(InstancePeer instancePeer,
                                     Component component,
                                     java.util.Map typeToList)

getPeersForComponents

public static java.util.List getPeersForComponents(InstancePeer instancePeer,
                                                   java.util.List components)

renderFastComponentSpan

public static Element renderFastComponentSpan(RenderingContext rc,
                                              Element parent,
                                              Id id,
                                              Component component,
                                              boolean forceGeneration)