[jacorb-developer] How to implement client/receiver specific filters in JacORB push notifications

Phanindra Kasturi phanindra.kasturi at gmail.com
Sun Dec 22 13:56:38 CET 2013


Dear JacORB developers and admins,

I have a problem for which I have no idea how to solve.
Hence I request your assistance and thank you for your valuable  
suggestions.

Scenario:
Vendor 1 has an application with CORBA server/JacORB and supports push  
notifications/events
Vendor 2 registers with vendor 1 for notifications (real time or history)  
and receives the notifications
Now I have Vendor 3, also registers with vendor 1 s/w for notifications  
with some filters as arguments.
(Vendor 3 only wants a subset of events generated by vendor 1. But Vendor  
2 wants all)

Vendor 2 & 3 use the same operation/method name. (3gpp compliant event  
management interfaces)
Vendor 2 & 3 have  CORBA clients only  and not servers

Problem:
If Vendor 3 registers with vendor 1 application last then vendor 2 also  
getting filtered events.
If Vendor 2 registers with vendor 1 application last then vendor 3 getting  
all events.
I don't know whether this is a problem at all w.r.t. CORBA or have control  
on Vendor 1 implementation.

Requirement:
Don't send unnecessary events to Vendor 3 (multiple machines with static  
IP Addresses), whether they use filter or not.
Cannot ask Vendor 3 to filter the events at his side due to performance,  
security and SLA issues.
Vendor 3 needs are well defined and will not change.

Who am I:
Developer of Vendor 2 with little CORBA experience. Need to come up with a  
solution.

My Possibilities:
a) If I can come up with a solution that can be implemented on vendor 1  
application and possibly with design and give it to Vendor 1. There is a  
chance that I may get a patch.
For example:
   1) Context Sensitive filters or
   2)  Identify the receiver while iterating to push the notififcation and  
filter the data or
   3)  Can I have multiple naming/notification services on Vendor 1 Machine  
so that Vendor2 and Vendor 3 needs are separated

b) Write a proxy similar and ask Vendor 2 and Vendor 3 to connect to my  
proxy and filter it at the proxy level and the proxy will connect to  
Vendor 1 application on behalf of Vendor 2 or Vendor 3. Looks very  
complicated.

c) (Pursued and discarded due to problems in data and state management)  
Write a CORBA server on vendor 2 and ask vendor 3 to connect to Vendor 2.

Vendor 1 Application is pre-existing application. Vendor 2 and Vendor 3  
are new applications.
Vendor 1 and Vendor 3 are 3rd party solutions and Vendor 2 is the  
implementor.

Thanks and Regards,
Phanindra Kasturi


More information about the jacorb-developer mailing list