Details
-
New Feature
-
Status: Closed
-
Major
-
Resolution: Later
-
None
-
None
-
None
Description
Enhance the PPR stuff in a way which allows to process form input asynchron in a queue for high-speed input handling.
Probably by adding a new attribute to the PPRPanelGroup called "queued=true|false". With "true" the form data should be collected and held in a queue on client side.
The client then checks that queue at given intervalls (queueCheckInterval=) if there is data in the queue and transmit that data to the server like a normal ppr request. Between each transmit a queueWaitInterval= should be waited.
A status component (queueShowStatus=true|false) should show the success of each transmit. A client side javascript should be used to extract the status text information from the form data (queueShowStatusInfoBuilder=javascript-method-name(formData))
The PprPanelGroup should also be enhanced to being able to point to the messages component (messages=component-id) the queueStatus information should then be able to visualize that text and show e.g. a red-cross if there were errors (=messages)
For this first version the status info can be a simple table created client-side using some css to allow to format it according to the application skin.
A simple table with two columns
status-info|return-visualization
status-info is the text returned by the queueShowStatusInfoBuilder javascript method and return-visualization might be an icon.
Only waiting requests and those with errors should be shown, correctly finished requests can be removed from the list.