Hessian: Objective C

From Resin 3.0

Revision as of 16:13, 8 March 2006 by Ferg (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


HessianObjC is a Mac OS X native framework that implements the Hessian binary web service protocol in Objective-C. The latest source is available at SourceForge.net using the following Subversion command : svn co https://svn.sourceforge.net/svnroot/hessianobjc/trunk hessianobjc. The home-page for the project is located at : http://www.bluebearstudio.com/hessianobjc/

This initial import includes:

   * Encoding/Decoding of Hessian Web Services binary format from/to NSData and support for NSCoding. This allows any object that supports NSCoding (keyed archiving) to be serialized and deserialized using the Hessian binary protocol.
   * Calling remote methods using Hessian codecs via HTTP layered on top of Apple’s URL Loading System (NSHTTPURLConnection etc.). This includes support for both synchronous and asynchronous calls.
   * Support for remote/local class mapping. This allows ObjC clients to send POO’s (hehe, Plain Old Objects) over the wire that can then be instiated in the remote server/clients runtime. More on this will be coming shortly to the documentation section near you.

Todo:

   * Testing. An important test would be to make sure the unit tests pass on an Intel Mac. I have attempted to address endian issues but cannot be sure without Intel hardware.
   * Refinement, more robust error handling / reporting.
   * Support for headers as specified in the Hessian protocol docs, currently headers in requests and responses are not supported, this is minor and should be available shortly.
   * Currently the code base has mainly been client focused. It would be helpful to have an ObjC http server that was able to respond to Hessian RPC calls. The focus should be on making the HTTP server embeddable in applications (no need to reinvent Apache, LightHTTPD etc). This is of low priority at the moment.
   * Documentation, this will be coming soon. For now you can look at the unit tests as an example of how to use the sync call. Example code will also be coming soon.
Personal tools