JSAMP

JSAMP is a Java toolkit for use with the Simple Applications Messaging Protocol. It provides the following components:

  • A SAMP hub implementation, suitable for standalone or embedded use
  • A set of classes which can be used to implement SAMP capabilities in client applications
  • A hub test and benchmarking suite, which can test correctness and performance of third-party hub implementations
  • Utilities which can be used by client and hub developers, or SAMP users, to analyse or debug SAMP sessions
  • Graphical components built on top of the basic functionality suitable for use with the above
  • A bridge component, which can allow clients on different hubs to talk to each other

For a given purpose, some or all of these components may be used at one time.

The toolkit's design aims are, in rough order of priority:

  • Correctness according to the SAMP standard
  • Robustness
  • Ease of use for client application authors
  • Ease of deployment within third-party applications (few dependencies)
  • Flexibility, including the possibility to use with non-Standard SAMP Profiles
  • Good documentation
  • Small size (this one's gone by the board a bit)

The current version targets the SAMP 1.2 Recommendation document (16 December 2010). It also provides support for the experimental Web Profile.

JSAMP is currently developed by Mark Taylor (m.b.taylor@bristol.ac.uk), working in the Astrophysics Group at Bristol University. It was originally developed within the UK's AstroGrid project, and has also been supported by STFC grant ST/H008470/1 and by Microsoft Research. All of this support is gratefully acknowledged. Many members of the SAMP community have provided valuable input and help with development; special mentions go to Thomas Boch, Laurent Bourgès, Jonathan Fay, John Taylor and Ivan Zolotukhin.

Queries, bug reports, suggestions etc may be mailed to the author, or raised on the apps-samp@ivoa.net mailing list.

JSAMP is open source software; it is available under (at least) the Academic Free Licence and the BSD Licence.