Subject RE: [ib-support] Firebird and wildcard events
Author Dmitry Yemanov
Hi Martijn,

> If I recall correctly, there was a change in Firebird supporting wild-
> card events, is that right?

Partially. I'm the one who's responsible for this piece of code. The work is
95% done, but there is still a couple of pending issues to be solved, so the
code hasn't been commited to the CVS tree yet. I'm going to complete it for
v1.5.

> If so, how does one register for such events? Just like the old way
> and the engine will handle the actual posting?
>
> eg:
>
> register: uren.update.*
>
> post-event:
> uren.update.10
> uren.update.test
> uren.update.xx

Yes, the registration is fully compatible with the current design. The
engine compares the actually posted events with the registered masks and
delivers the actual events to all requesters.

> Will these events arrive at the registered event-listener?

Yes. Actually, in your event-listener you must call isc_event_counts() to
know which events have been posted from the server and how many times.
With wildcarded events isc_event_counts() will return the summarized
information:

uren.update.* = 7

and new API call (let's name it isc_event_details) will return something
like this:

uren.update.10 = 2
uren.update.test = 1
uren.update.xx = 4

Since I haven't implemented this API routine yet, you're welcome to discuss
it in the firebird-devel mailing list to find the most appropriate solution
together.

Please also note that this feature will be immediately available only with
API level programming. AFAIR, Jason has shown an interest in supporting this
in IBO, but I'm afraid IBX users will never be able to use such an
improvement until we decide to provide a patch for every IBX update released
by Jeff.

Cheers,
Dmitry