Atom Hopper: An ATOM Server Written in Java
Atom Hopper is a Java based ATOM publishing server based on Apache Abdera. You can read some of my previous articles here and the full source code can be found here as well as the up to date wiki. Today I’m going to discuss some of the new features that have been added and what is happening in general.
As of the date of this article we are actively testing the latest build of Atom Hopper which we are calling a release candidate at this point. As you can tell by the release notes we’ve been incrementally fixing bugs and adding features.
- We moved the configuration files application-context.xml (used for the Hibernate settings) and the atom-server.cfg.xml (used mostly for namespaces and feeds) to a common folder: /etc/atomhopper
- Bugs involving HTTP/HTTPS configuration, servlet URL pattern and feed names were fixed
- We completed some initial benchmarks that can be seen here
- There are instructions now on how to configure Atom Hopper to use multiple database servers per feed. In fact, if you know a little about Hibernate configuration then you can see that using the default data adapter with Atom Hopper gives you a lot of flexibility.
- There has been a lot of work to get the documentation fully updated and migrated over from a private wiki where a lot of information originally existed
- A lot of work has gone into the RPM build system in order to allow for easier deployments of Atom Hopper. These settings are in the POM and you can branch the source code and modify the settings to suit your environment
When you’re setting up Atom Hopper make sure those files exist in the /etc/atomhopper folder and that the user running Atom Hopper (most likely the Tomcat user) has access to that folder
What does the future hold?
There are several things on the list for Atom Hopper, I won’t discuss everything as we have a full year planned out in upcoming work but I will touch on a couple things.
We are looking at integrating a NoSQL backend, possibly MongoDB or Cassandra. Atom Hopper ships with a default data adapter that uses Hibernate and has been tested with MySQL, PostgreSQL, and H2. The default data adapter can easily be swapped out for another one that supports a different datastore.
A second feature we are working on is getting the log file to go to a standard location which will be: /var/log/atomhopper This will keep the Atom Hopper log messages from going into places like Apache Tomcat’s catalina.out file.
The Atom Hopper 1.0 release will be coming up shortly. Right now we have Atom Hopper undergoing final QA and we are working to address any remaining issues.