[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| [udig-devel] Re: postRendering problem (bug??) | 
Ok.  I'll do the simplest thing now to get it going and concentrate on other 
aspects of the system until the new rendering pieces are in.
"Jesse Eichar" <jeichar@xxxxxxxxxxxxxxx> wrote in 
message news:AB2083A1-1C21-406B-BE96-6149317C9131@xxxxxxxxxxxxxxx...
> Don't get too attached to these classes.  They will change after  RC5. 
> Once RC5 is out I am going to do some Rendering house  cleaning.  A great 
> deal of simplification is going to take place.
>
> Jesse
>
>
> On 29-Oct-06, at 12:26 PM, Andy Czerwonka wrote:
>
>> I'm getting a message (it's intermittent) in the status bar saying:
>>
>> "Timed out while rendering this layer. Seems to have blocked, check  that 
>> the
>> server is up"
>>
>> I don't think it's a valid message, given my layer is rendering  just 
>> fine.
>> I'm calling refresh from another thread (it's doing it safely) and  the 
>> layer
>> is getting refreshed.  I tracked down the message, and it seems  that the
>> implementation of 
>> RenderExecutorComposite#CompositeRenderJob#postRendering()
>> is a little strange.  If the IRenderer is not in the DONE state,  then we 
>> get
>> the timeout message.  Moving up the stack, I can't see how the  IRenderer
>> lifecycle is appropriately managed.
>>
>> Given this code: (RenderJob#run(IProgressMonitor))
>>
>> getExecutor().getRenderer().setState(IRenderer.RENDERING);
>>
>> try {
>>
>> startRendering(bounds, monitor);
>>
>> } catch (Throwable renderError) {
>>
>>
>> handleException(renderError);
>>
>> getExecutor().getRenderer().setState(IRenderer.DONE);
>>
>> return Status.OK_STATUS;
>>
>> }
>>
>>
>> postRendering();
>>
>> return Status.OK_STATUS;
>>
>>
>> The IRenderer may not get set to IRenderer.DONE.
>>
>>
>>
>> _______________________________________________
>> User-friendly Desktop Internet GIS (uDig)
>> http://udig.refractions.net
>> http://lists.refractions.net/mailman/listinfo/udig-devel
>