After reading this post today and seeing some of the responses from the Eclipse community it would be interesting to hear from IBM customers and partners on whether or not they use or even know what EventAdmin is! I have written about EventAdmin many times and have even contributed a project to OpenNTF for a composite application bridge but in general I don’t see the technology widely adopted or understood even. I created this poll, it is stated a little different that the blog post to get more specific responses.
I have written about inter component communication often on this blog – as the Property Broker is the key message queue for composite applications. One article I wrote about; where you can use an EventAdmin bridge to get OSGI services communicating with regular visual components. I then wrote about getting Lotus Script to speak to Java using an EventAdmin abstraction but I never really discussed how it could be done. You will most likely have to use an LSX but how do you get the stuff over to Java? You could figure out the inter-process communication (IPC) stuff and role your own. Or, you could use the Eclipse Communication Framework (ECF) and connect the processes through a pipe. This article shows how something like this could be pieced together. The only issue would be you would have to figure out the protocol of ECF which is well documented and open source. This diagram shows how the pieces fit together:
As many are aware, EventAdmin is a publish/subscribe event system that ships with Lotus Notes and is the primary communication mechanism used between OSGI plug-ins. What is really missing in the Notes client is a pub/sub model to communicate between Lotus Script and the Eclipse Java world. While you can certainly role your own through some creative coding the real answer would be to have the entire Notes core side (written in C) publish its various events to the Java side through the use of EventAdmin -this would allow any plug-in developer to plug in to the many events that happen in Notes (replication, new mail, document saved, etc). Today you can do some interesting things with composite applications, the containers, and the property broker but that stuff only works in the context of a composite. If you just want a view in the side shelf and have it be able to drive or communicate with other views in the perspective you will have to do something different – this is exactly where I think a LotusScript class for EventAdmin would be great. You could register for any various topic or role your own topics on both sides of the Java/Notes Core fence. This kind of thing can easily be done today using basic plug-in code with an LSX library installed. I have heard of this requirement a lot in the labs and in the forums so I figured I would get some broader feedback on this through my blog – all 10 readers!
If you find this an interesting topics go ahead and email me or respond to this post so I can forward it on.
You can also check out the OpenNTF project I posted a while back that is an EventAdmin to PropertyBroker bridge for composites. So if this was in fact enabled you could have property broker actions be called when something like new mail arrives…
For all of you die hard Eclipse fans out there, I have published the EventAdmin to Property Broker bridge to the OpenNTF. It’s now open source so have at it! You may recall I posted two presentations and a short article on the bridge back in February on this blog.