Components out of the shelf
JNestor is developed with frameworks and libraries out-of-the-shelf.
- JavaMail for reading and writing emails.
- Jsoup for processing the HTML content of the emails, if needed.
- Spring framework for the injection of objects. I do an intensive use of spring applicationContext.xml file, even for the configuration of the application. This leverages the hassle of creating config code into the application, which would be transversal to all the objects in the application, making the the objects of the application more dependents among them.
- commons logging of apache to isolate from a particular logging implementation.
- log4j for logging.
- Groovy for some of the processors: to have processors made in an scripting language eases the configuration of the application whitout the need of recompiling the binaries. For instance, I use it a lot to create custom filters of the incoming emails: emails with this or that should not be processed, for instance.