HCM and other releases
Yesterday I unleashed HL7 Comm 1.0 into the wilds. I replaced version 0.8 as the main version as 1.0 had very little updated in the core code. Some of the threading code was reorganized in most of the integrate clients (i.e. the HL7 listeners and senders) and there were some feature enhancements as well.
I also checked out clean copies of all of the HL7 utility source trees and zipped them into a collection of pretty much everything you need to build them. Information about what’s included is here. Just a reminder that the code is all released under the GPL and the vast majority is copyrighted by me.
Lastly, I’m getting ready to release the first version of HCM, or HL7 Comm Multi, so I thought I would detail what’s involved there and you can choose if this is a better integration product for your needs compared to the regular HL7 Comm.
First of all, HCM uses the exact same integration code as HL7 Comm, and always will. The idea is that I want you to be able to prototype your interfaces in HL7 Comm and feel comfortable deploying them without modification (except maybe paths, etc. in the configuration files) in HCM. Right now HCM doesn’t have the ability to modify or add configurations directly, you would create the files you need in HL7 Comm and point your HCM install to those files using a configuration file specifically for HCM. HCM gives you the ability to run a number of HL7 Comm instances (called processor agents) in a single Java process and to monitor and manage those instances via a web browser. To perform this feat, HCM is deployed on top of an Apache Tomcat (or probably equivalent jsp/servlet container) that you configure. That process involves installing tomcat and editing two files, which is pretty trivial.
Of course, at the moment HCM is limited to exactly the same clients that HL7 Comm is. That will change as soon as I get more comfortable with letting configurations be performed within HCM. After that I’ll be adding queuing functionality and the ability to manage queues. That will make HCM an official, honest-to-goodness integration engine (though technically you can do essentially the same thing today using the appropriate file in and out listeners). After that I do want to add something like a general FTP client, because I feel driven in a Nietzschean way to implement those protocols that I fear the most.
So look forward to a HCM 0.1 release real soon. Don’t let the low version number scare you – this is the same reliable integration code that HL7 Comm uses, it’s just a new way of managing your interfaces. I’ll also be reorganizing the documentation here to cover installing and using both HL7 Comm and HCM, which will hopefully make more people feel comfortable implementing these as integration solutions. And don’t forget, I can probably provide commercial support for you if you wish to use any of the HL7 tools here in a production environment.
I’ll close with a screen capture of the HCM overview screen.