Building HotSheet couldn't be much easier. Just download the source tree and
install Ant (a link to the software is provided below). Then go to the directory
you loaded the HotSheet source code into and type ant. That will cause
Ant to build the default target and put the results into the build directory. All
the JAR files (what you would actually distribute) will be put into the build/lib
directory.
I normally deploy HotSheet using Java Web Start from my website. The JNLP file used to do that deployment is in the misc folder and you'll need to edit it if you want to do deployment the same way. All the information you may need with regard to Java Web Start or signing your application for release using Java Web Start is available in the links section at the bottom of this readme.
There is already a target in the Ant build file to sign the JAR file for distribution via Java Web Start but you'll have to use your own keystore and sign the jar yourself if you want to do that. Remember that all the other JAR files that make up your application must also be signed using the same key in order for Java Web Start to approve running the application on the clients machine so you'll need to sign all the JAR files in the lib directory once as well.
If you just want to run HotSheet from the command line you can use the following command to do so:
ant HotSheet
At present the development documentation is sparse. I hope to improve
that in the future. In the meantime you can execute the command ant javadoc
and the API documentation will be created.
If you have followed the instructions to build HotSheet given above you can run the demonstration programs HelloRSS, HTMLBox and the newest demonstration ListenersTest. This new example demonstrates the basics of using the ItemStore and ChannelStore objects as well as the newly added events and listeners code:
To run a particular application just use the command ant <program
name>. For example, ant HelloRSS or
ant ListenersTest.
The full sourcecode to these example programs is provided in the src/com/johnmunsch/demo directory. Just read the comments in each one and it should get you started pretty easily.
|---Project Root
|---build.xml - ant configuration file
|---build - generated files (this directory is created during the build)
| |---classes - destination for compiled java code
| |---lib - the JAR files that make up the compiled program
|---docs - non javadoc generated documentation (specs, etc.)
|---lib - third party libraries
|---misc - files needed for building or distributing the program
|---src - project source code (see code organization for details)
|---ReadMe.html - this file
There's not a lot to the code organization of HotSheet. The RSS code library is contained entirely in the src/com/johnmunsch/rss directory. This is the only code you need if you are developing another program to use the RSS library.
The HotSheet code is contained in src/com/johnmunsch/hotsheet and it relies on the RSS library code as well as the code under edu/stanford/ejalbert which is used as backup browser launching code when HotSheet is run from the command line (i.e. the JNLP code from Java Web Start that is normally used to launch the browser is unavailable).
Lastly there is the code in src/com/johnmunsch/demo which is demonstration code that shows how to program using the RSS library.
HotSheet doesn't handle international character sets yet. For example, these channels can be retrieved successfully (and their links work) but they do not display correctly in HotSheet:
Thanks to James Carlyle on the syndication mailing list for the links.
The following are links to resources that may be helpful (or necessary) to do development using the HotSheet code.