| First, install the version 1.6 kit. There is also an ECO kit available.
See note 2 for the kit name and location.
> So my question is : Why on OSF1, the class name is not verified if
> the event name is match ? (My colleague says that it does on OpenVMS)
Probabily because it would be too confusing. The code is the same on
VMS as it is on Unix, thus making the behavior the same.
> Is there a difference in the filter matching mechanism between OpenVMS
> and OSF ?
Again, no. It's the same code.
Dave
|
| I have not explained clearly the problem in my precedent note. That is :
On Digital UNIX OSF1, I run the Configuration Editor X-Window interface
with the command
console -e
Then I define the filter,
+------------+ +------------+
| Event... | | Systems... |
+------------+ +------------+
+-+ +-+ +---------------+ +----------------+
| |All events | |All system | Subsystem... | | Priorities... |
+-+ +-+ +---------------+ +----------------+
+-+ +-+
+------------+ +------------+ | | All subsystem | | All priorities
| Classes... | | Groups... | +-+ +-+
+------------+ +------------+
+-+ +-+
| |All Classes | |All Groups
+-+ +-+
All are blank, except in "Classes...", I select only "My_Class".
its event is "My_event".
So logically, my application must reveice only an event whose class is
"My_class".
But in reality, it receives also other classes, if the event name is
"My_event".
The scenario is :
On the first time, PCM dispathes the event ("My_Class", "My_event")
to my application. After processing, my applications sends an event
to PCM using API CMUserSendEvent ("Another_class", "My_event"),
note that only the class name is changed, event name and other fields
are not changed (for the reason of event maintenance).
PCM receives the event whose class is "Another_class", but PCM sends
it again to my application, even if the class is not "My_class".
So the event is exchanged infinitly between PCM and my application.
This is because PCM first verify the event name, in stead of class name,
if the event name is found, PCM verify other fields, not the class name.
May an event have two classes ?
Have I made a mistake while configuring the filter ?
(My colleague working for the same application on VMS, he says that
PCM/VMS tests the class "Another_class" and it doesn't send it again
to the application.)
Regards.
Cheu.
|
| >May an event have two classes ?
Yes.
Have I made a mistake while configuring the filter ?
It doesn't appear so. My guess is that there is a bug in the
CMUserSendEvent() call and that it is ignoring the class name.
ENS then gets the event and looks up what class the event is associated
with, sees that is is associated with your calss and then dispatches
it to your action routine.
As a work-around, you might have to check the class yourself and if
it's not in your defined class, then you can ignore it. The only
problem with this is that you will have to hard code the class names
that you are interested in. I will put this on the list for the
support team to have a look at.
Dave
|