[
https://issues.apache.org/jira/browse/WAVE-76?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ali Lown resolved WAVE-76.
--------------------------
Resolution: Invalid
Err? Neither of the suggested files seem to exist anymore.
Assuming this has already been done at some point...
> Rewrite of FedOne client events code
> ------------------------------------
>
> Key: WAVE-76
> URL: https://issues.apache.org/jira/browse/WAVE-76
> Project: Wave
> Issue Type: Bug
> Priority: Minor
>
> <b>What steps will reproduce the problem?</b>
> 1. Examine WaveletOperationListener.java to see the current definition of
> FedOne events.
> 2. Examine ClientBackend.java, lines 369-371 to see a TODO to move event
> dispatch out of the network thread:
> // TODO: take this out of the network thread
> for (Pair<String, WaveletOperation> authorAndOp : successfulOps) {
> notifyWaveletOperationListeners(authorAndOp.first, wavelet,
> authorAndOp. second);
> 3. Examine "Issue 29001: Block on submit respose for the client" at
> http://codereview.waveprotocol.org/29001/show to see a need for event
> handling synchronization.
> <b>What is the expected output? What do you see instead?</b>
> The current event dispatch code does not fit actual needs and real-world
> requirements such as thread-safety.
> <b>What version of the product are you using? On what operating system?</b>
> Latest code in trunk.
> <b>Please provide any additional information below.</b>
> I propose the following requirements for a rewrite of the events code:
> 1. Available events should not be limited to wavelet operations.
> 2. Listeners should be able to subscribe to a subset of available events.
> 3. Event handling must (usually) be done in a separate thread than they are
> pushed from (e.g. pushed from network thread, handled in a consumer thread).
> 4. Event handling must be synchronous (per event type). I.e. a handler
> won't be invoked while it's already running.
> 5. Must have the ability to block a thread until a certain event is pushed.
> ---
> Issue imported from http://code.google.com/p/wave-protocol/issues/detail?id=75
> Owner: [email protected]
> Label: Type-Defect
> Label: Priority-Medium
> Stars: 2
> State: open
> Status: Accepted
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)