Subject Re: Vulcan services engine info. was (engine information (nr. of attachments, da
Author Roman Rokytskyy
--- In Firebird-Architect@yahoogroups.com, "Dimitry Sibiryakov"
<aafemt@...> wrote:
>
> On 8 May 2006 at 16:37, Arno Brinkman wrote:
>
> >good to me. The services module can call the in the Y-valve
> >(Dispatcher) to ask for engine information and the dispatcher will
> >walk through all known providers and his subsystems to ask for
> >information. This way the services module is able to handle return
> >the needed information.
>
> Not all known but all loaded. Let's start from example: dispatcher
> on client side has two connections to different servers in conection
> table. When asked for number of opened database it wakls through
> connections table and ask every provider to count opened db. Engine
> providers will return 1. Remote providers will send request to
> remote dispatcher. The procedure will be repeated there and total
> number of DB will be returned. At last, the dispatcher will return
> total number of opened databases though all levels of dispatchers.
> May work...

Yup. But I guess Jim will hang you before you commit this code to the
CVS. Provider should not call the dispatcher, but only the code below
himself.

So, unless you make dispatcher to be some kind of provider that can
handle some requests and delegate others, you can't solve this without
breaking the layering.

Roman